CyberChaos(さいばかおす)

プログラミング言語、トランスパイラ、RPA、ChatGPT、データマイニング、リバースエンジニアリングのための忘備録

ヤバいよjadx。Androidアプリのソースコード丸見えwww

2023-11-05 13:06:20 | リバースエンジニアリング

↑のサイトに書かれている通りにやってみたら、ウチの会社の施工管理アプリのソースコードが丸見えになってしまったwww

ヤバいヤバいwwwマジでヤバいwww

しかし、それにしても、こんな高機能なアプリを作らせておいて、ソースコードの難読化すらやっていないとはwww

Androidタブレットにインストールして使っているのだが、かなりリソースを喰っているようで、頻繁にフリーズしやがる。

何言語で作ってるのか、さぞかし遅い言語で作ったんだろうな。どうせJavascriptあたりだろ?
・・・と思ったら、何と!Kotlinだったwww

JavaもKotlinもガベージコレクションを利用してメモリの管理ができるはずなのに、何でこんなにリソースを喰っているのだろうか?

C++で作り直しやがれ!と言いたい。
今、働いている現場の担当の職長もイライラしながら使っている。

この職長の不倫相手の女に俺がニックネームをKotlinとつけてやったことがある。皮肉にもこの糞アプリの言語がKotlinとはなwww

Androidアプリの開発言語の大半はJavaで一部Kotlinらしい。専門書や技術書を漁ってみたが、碌でも無い糞本だらけで話にならない。
こんな糞本をいくら読んだところで実務レベルに達しないし、基礎レベルを脱することすら不可能だ。

ほとんどのIT系企業はただの丸投げピンハネ屋だから、ウチの会社の施工管理アプリすら作れない。

リソース不足になることに対しては目を瞑るが、それにしてもかなり高機能だ。
俺が凄いと思った所は・・・
PDF化された図面を読み込んで施工箇所のハッチングを認識してボタンを付け、ボタンを押すと施工ナンバーと施工寸法等の設計値データテーブルを生成して表示し、施工完了時の実際の施工寸法を下の段に入力させる所だ。
さらに凄いのが、施工スパンを変えるために複数の施工箇所を一つに纏めてニコイチみたいにしたり、一度に施工できないから分割したりできるところだ。

※残念ながら、バレたらタイーフォもんだからソースコードは晒せない。
晒すとしたら外国のアプリなら問題ないだろう。日本の著作権法とか特許とかの効力の及ぶ範囲にはならないはず。

GooglePlayアプリストアからこれと覚しきアプリをバンバンインストールしていき、apkファイルを抜いてバンバン逆コンパイルして技術を盗んでいこうかな?www

Androidアプリ逆コンパイル・改竄対策について

2023-10-24 00:35:16 | リバースエンジニアリング

Androidアプリの逆コンパイル対策は、Androidアプリ開発業者・販売業者にとって死活問題だ。

逆コンパイルされてソースコードが顕になると、機能制限された体験版がフル機能版として使えるように改竄されたり、サブスクリプション版が永続版に改竄されたりしてしまう。

AndroidのAPKを逆コンパイルする

2023-10-24 00:02:18 | リバースエンジニアリング

AndroidのAPKを逆コンパイルする - Qiita

AndroidのAPKを逆コンパイルする - Qiita

2年ほど前に知ってて当たり前のように教えていただきました。最近、再び逆コンパイル(デコンパイル)する機会がございましたので、Qiita記事としてメモを投稿しておこうと思...

Qiita

AndroidのAPKを逆コンパイルしたいとふと思った。

そこでググったら出てきたのがこの記事。
JAVAで作ったAPKのサンプルファイルを逆コンパイルした実演記事である。

実際、スマホにインストールした任意のアプリのAPKファイルを逆コンパイルするのは、この記事のようにすんなりいかないはずだ。


Revit_2022_Ship_20210224_RTC_Win_64bit_di_ML_setup_webinstall.exeをホニャララ

2023-03-26 19:49:37 | リバースエンジニアリング

                             //
                             // Headers 
                             // ram:00400000-ram:004003ff
                             //
             assume DF = 0x0  (Default)
                             IMAGE_DOS_HEADER_00400000                       XREF[6]:     0040011c(*), 
                                                                                          FUN_00401885:0040195d(*), 
                                                                                          FUN_00403f05:00403f1d(*), 
                                                                                          FUN_00403f05:00403f32(*), 
                                                                                          FUN_00403f67:00403f7f(*), 
                                                                                          FUN_00403f67:00403f94(*)  
        00400000 4d 5a 90        IMAGE_DO
                 00 03 00 
                 00 00 04 
           00400000 4d 5a           char[2]   "MZ"                    e_magic                           XREF[6]:     0040011c(*), 
                                                                                                                     FUN_00401885:0040195d(*), 
                                                                                                                     FUN_00403f05:00403f1d(*), 
                                                                                                                     FUN_00403f05:00403f32(*), 
                                                                                                                     FUN_00403f67:00403f7f(*), 
                                                                                                                     FUN_00403f67:00403f94(*)  
              00400000 [0]            'M', 'Z'
           00400002 90 00           dw        90h                     e_cblp        Bytes of last page
           00400004 03 00           dw        3h                      e_cp          Pages in file
           00400006 00 00           dw        0h                      e_crlc        Relocations
           00400008 04 00           dw        4h                      e_cparhdr     Size of header in 
           0040000a 00 00           dw        0h                      e_minalloc    Minimum extra para
           0040000c ff ff           dw        FFFFh                   e_maxalloc    Maximum extra para
           0040000e 00 00           dw        0h                      e_ss          Initial (relative)
           00400010 b8 00           dw        B8h                     e_sp          Initial SP value
           00400012 00 00           dw        0h                      e_csum        Checksum
           00400014 00 00           dw        0h                      e_ip          Initial IP value
           00400016 00 00           dw        0h                      e_cs          Initial (relative)
           00400018 40 00           dw        40h                     e_lfarlc      File address of re
           0040001a 00 00           dw        0h                      e_ovno        Overlay number
           0040001c 00 00 00 00 00  dw[4]                             e_res[4]      Reserved words
                    00 00 00
           00400024 00 00           dw        0h                      e_oemid       OEM identifier (fo
           00400026 00 00           dw        0h                      e_oeminfo     OEM information; e
           00400028 00 00 00 00 00  dw[10]                            e_res2[10]    Reserved words
                    00 00 00 00 00 
                    00 00 00 00 00
           0040003c e8 00 00 00     ddw       E8h                     e_lfanew      File address of ne
           00400040 0e 1f ba 0e 00  db[64]                            e_program     Actual DOS program
                    b4 09 cd 21 b8 
                    01 4c cd 21 54


「GhidraでEXEファイルをデコンパイルする方法」でググってみたらwww

2023-03-26 07:25:16 | リバースエンジニアリング

Ghidraの使い方 | リバースエンジニアリングツールGhidraを使ってみた - BioErrorLog Tech Blog

Ghidraの使い方 | リバースエンジニアリングツールGhidraを使ってみた - BioErrorLog Tech Blog

Ghidraの環境構築/インストールから、Ghidraの使い方とリバースエンジニアリングの実践までの記録を残します。 はじめに 作業環境 Ghidraの使い方 環境構築 Ghidraをインス...

BioErrorLog Tech Blog


他にはこんなサイトもある。

このサイトでは、俺が長年思っていた疑問に対する答えを出している。

A.ログイン画面
B.パスワード判定
C.パスワードNG
D.パスワードOK

頭の悪いクラッカーはブルートフォースアタックで強行突破を試みようとするから、ABCのループを繰り返して通報されてしまうか、膨大な時間を浪費する徒労に終わってしまう。

あっけなくソフトがクラックされたり、ホームページが改竄されたりしているのを目の当たりにすると、Bをすっ飛ばしてAからいきなりDに行く方法があるのではないか?
と考えていた。

実はその方法がいくつか存在し、その内の一つが
に書かれていた。
まさしくA→DのようにBをすっ飛ばして直でDに行ける方法だ。
つまりログイン画面でパスワードを入力することなく、いきなりDに行けてしまう方法だ。

GhidraでPythonファイルをデコンパイルしてみた。

2023-03-25 21:37:29 | リバースエンジニアリング

こちらがクラックしようとしている所www

拡大写真

ソースコード

import numpy as np
import matplotlib.pyplot as plt

if __name__ == '__main__':
# 正弦波のデータ作成
f = 100
rate = 44100
T = np.arange(0, 0.01, 1 / rate)
s = []
for t in T:
v = np.sin(2 * np.pi * f * t)
s.append(v)

plt.plot(T, s)
plt.xlabel('Time')
plt.ylabel('Gain')
plt.show()

# フーリエ変換
fft_data = np.abs(np.fft.rfft(s))
freqList = np.fft.rfftfreq(len(s), 1.0 / rate) # 横軸
plt.loglog(freqList, 10 * np.log(fft_data))
plt.xlabel('Frequency')
plt.ylabel('Power')
plt.show()

# 逆フーリエ変換
r = np.fft.irfft(fft_data, len(T))
plt.plot(T, r)
plt.xlabel('Time')
plt.ylabel('Gain')
plt.show()

背景が水色で赤色の文字のところがキャプチャー画像に見えていて該当するところ。

拡張子がpyの生のPythonファイルはIDLEとかスパイダーとかなくてもソースコードが余裕でバレバレになることが分かった。

まだGhidraの使い方は全然分からなくて、適当にやってみただけだが、マジで恐ろしい代物だ。

もっと勉強して使いこなせるようになりたいものだ。


radare2の使い方 radare2で逆コンパイル&リバースエンジニアリング

2023-02-20 18:23:50 | リバースエンジニアリング

radare2の使い方 | リバースエンジニアリング入門#5 - BioErrorLog Tech Blog

radare2の使い方 | リバースエンジニアリング入門#5 - BioErrorLog Tech Blog

radare2のインストール方法から簡単な使い方までを記録しました。 直感では使いにくい面も感じましたが、使い慣れれば強力な武器となってくれるでしょう。 はじめに 作業環...

BioErrorLog Tech Blog

逆コンパイル&リバースエンジニアリングツールとしてGhidraを以前紹介したが、Ghidraについてのyoutube動画を検索していた際にコメント欄にradare2という逆コンパイル&リバースエンジニアリングツールの紹介があったから、ググってみたらradare2の使い方が出て来た。

面白そうだ。

こんなことばかりしてたらこの子に叱られそうだwww


いやあ~しかし、この子かわいくなって乙牌もデカくなったなあ。

マスタリングGhidra ―基礎から学ぶリバースエンジニアリング完全マニュアル

2023-02-18 18:19:00 | リバースエンジニアリング
マスタリングGhidra ―基礎から学ぶリバースエンジニアリング完全マニュアル https://amzn.asia/d/ec2dLEX
Title: O'Reilly Japan - マスタリングGhidra

Title: O'Reilly Japan - マスタリングGhidra

Found on Google from oreilly.co.jp

なぜ日本のIT業界は遅れていてダメダメなのか?
それはこういう情報は頑なに秘匿しておきたいからである。
日本のIT技術を貶めたい在★日勢力の仕業である。
日本にはこの手のアングラ本はほとんど出版されていないが、海外ではバンバン出版されていてダダ漏れ状態らしい。
特に中国あたりは無法地帯か?www
そりゃあコイツらには勝てんわけだわな。

リバースエンジニアリングツールGhidra実践ガイド ~セキュリティコンテスト入門からマルウェア解析まで

2023-02-18 18:17:09 | リバースエンジニアリング
リバースエンジニアリングツールGhidra実践ガイド ~セキュリティコンテスト入門からマルウェア解析まで~ (Compass Booksシリーズ) https://amzn.asia/d/28FucY7
Title: Amazon.co.jp: リバースエンジニアリングツールGhidra実践ガイド (Compass Booksシリーズ) eBook : 中島 将太,  小竹 泰一, 原 弘明, 川畑 公平: 本

Title: Amazon.co.jp: リバースエンジニアリングツールGhidra実践ガイド (Compass Booksシリーズ) eBook : 中島 将太, 小竹 泰一, 原 弘明, 川畑 公平: 本

Found on Google from amazon.co.jp



【インストーラーを逆コンパイルする】でググってみた

2023-02-18 12:53:02 | リバースエンジニアリング

「インストーラーを逆コンパイルする」
でググってみたらいろいろ出て来たwww

何を逆コンパイルするのか?
何のファイルを逆コンパイルするのか?
で検索結果は違ってくると思われる。

全ての種類のファイルを逆コンパイルするというのは無理かもしれないが、exeファイルを逆コンパイルする、で検索するといろいろ出て来る。

じゃあdllファイルとかその他のソフト・アプリを構成している種類のファイルを逆コンパイルするのはどうか?
逆コンパイルしてみたらどうなるのか?

最強のリバースエンジニアリングツールGhidra

2023-02-18 08:15:50 | リバースエンジニアリング

『逆アセンブラ(リバースエンジニアリングで使用)の最強ツールGhidra』

『逆アセンブラ(リバースエンジニアリングで使用)の最強ツールGhidra』

以前は、組込みシステムを行っていた時もあり(開発はUnixマシンでした)、言語はアセンブラ、C両方使っていました。ターゲットにICEを繋げてデバックをする際に…

Linux与太郎のよもやま話

ウィルスやマルウェアの解析に使えば?ということ。

Ghidraの本を2冊ほど紹介しておく。

マスタリングGhidra ―基礎から学ぶリバースエンジニアリング完全マニュアル https://amzn.asia/d/ec2dLEX

リバースエンジニアリングツールGhidra実践ガイド ~セキュリティコンテスト入門からマルウェア解析まで~ (Compass Booksシリーズ) https://amzn.asia/d/28FucY7