内蔵ターミナル

内蔵ターミナルはFIRERPAでよく使われる機能の一つで、内蔵ターミナルに接続してリアルタイムでコマンドを実行できます。内蔵ターミナルとは、リモートデスクトップ、SSH、または内蔵ADB接続を介してアクセスするターミナルを指します。いくつかのコマンドやよく使われるPythonモジュールが組み込まれており、直接コマンドを実行したり、Pythonコードを実行したり、さらにはターミナル内で直接自動制御を完了することも可能です。互換性の考慮から、内蔵ADB経由で接続されたターミナルでは、一部のコマンドプロンプトなどの機能は利用できません。

それでは、リモートデスクトップを開くか、SSHまたは内蔵ADBターミナルに接続してください。Linuxターミナルが表示されるはずです。cdコマンドを実行するとホームディレクトリに移動できます。ここはあなたのワークスペースであり、ファイルを保存することができます。ターミナルはコマンド補完をサポートしていますが、引数補完はサポートしていません。また、コマンドの一部を入力した後、上下矢印キーで履歴コマンドを自動補完することもできます。

よく使われるエイリアス

エイリアスはコマンドに似ており、これらのエイリアスを使用することで、よく使われるコマンドを素早く実行できます。内蔵ターミナルでは以下のコマンドエイリアスが使用でき、その機能は次のとおりです。

短縮形コマンド
lls
llls -l
lals -la
pypython
..親ディレクトリに移動
...親ディレクトリの親ディレクトリに移動
t/data/local/tmpに移動
p前のディレクトリに移動

よく使われるコマンド

実用的なコマンドとは、FIRERPAに内蔵されている一般的なLinuxコマンドや業界でよく使われるコマンドを指します。サポートされているコマンドは以下の通りです。もちろん、以下に記載されているコマンド以外にも、ほとんどの一般的なLinuxコマンドがサポートされていますが、このリストでは省略します。

コマンド説明
pythonPython
stracesyscallトレース
ltracelibcallトレース
curlcURL
fsmonファイルアクセス監視
stunnelトラフィック暗号化
redirポートフォワーディング
scapyトラフィック分析
iperf3ネットワーク性能テスト
nanoファイルエディタ
viファイルエディタ
ncduディスクファイル使用量の検索
socatネットワークツール
sqlite3SQLiteデータベースの読み取り。wxsqlite、sqlcipher、sqlcryptoをサポート
tcpdumpトラフィック分析
busyboxコマンドセット
MemDumperMemDumper
fridafrida-tools
frida-psfrida-tools
frida-tracefrida-tools
frida-ls-devicesfrida-tools
frida-discoverfrida-tools
frida-killfrida-tools
frida-apkfrida-tools
frida-createfrida-tools
frida-joinfrida-tools

Pythonライブラリ

上記の一般的なLinuxコマンドに加えて、内蔵Pythonはいくつかの一般的なサードパーティライブラリもサポートしています。リストに含まれていないライブラリでも、環境に存在すればインポートして使用することが可能です。

ライブラリ名説明
Crypto暗号化/復号
OpenSSL暗号化/復号
PIL画像処理
bcrypt暗号化/復号
brotli解凍/圧縮
cachetools呼び出しキャッシュ
capstone逆アセンブルエンジン
cffiFFI
cryptography暗号化/復号
cv2画像処理
fridafrida
geventgevent
protobufprotobuf
grpcgrpc
jinja2jinja
keystoneアセンブルエンジン
lamda自身
pyelftoolsELF解析
lxmlXML解析
msgpackシリアライズ
numpy科学計算
peeweeORM
pyaxmlparserAPK解析
pyinotifyファイル監視
redisredis
requestsrequests
scapyトラフィック分析
tornadoWebフレームワーク
ujsonJSON解析
unicornCPUシミュレーションエンジン
websocketwebsocket
zstdzstd

注意点として、内蔵ターミナル環境内でPIPやAPTを使用して追加のライブラリをインストールすることはできません。他のライブラリやプログラムをインストールする必要がある場合は、「仮想Debian環境」の関連セクションを参照し、仮想環境を使用してください。