# 内蔵ターミナル

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

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

## よく使われるエイリアス

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

| 短縮形 | コマンド |
|---|---|
| l | ls |
| ll | ls -l |
| la | ls -la |
| py | python |
| .. | 親ディレクトリに移動 |
| ... | 親ディレクトリの親ディレクトリに移動 |
| t | /data/local/tmpに移動 |
| p | 前のディレクトリに移動 |

## よく使われるコマンド

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

| コマンド | 説明 |
|---|---|
| python | Python |
| strace | syscallトレース |
| ltrace | libcallトレース |
| curl | cURL |
| fsmon | ファイルアクセス監視 |
| stunnel | トラフィック暗号化 |
| redir | ポートフォワーディング |
| scapy | トラフィック分析 |
| iperf3 | ネットワーク性能テスト |
| nano | ファイルエディタ |
| vi | ファイルエディタ |
| ncdu | ディスクファイル使用量の検索 |
| socat | ネットワークツール |
| sqlite3 | SQLiteデータベースの読み取り。wxsqlite、sqlcipher、sqlcryptoをサポート |
| tcpdump | トラフィック分析 |
| busybox | コマンドセット |
| MemDumper | MemDumper |
| frida | frida-tools |
| frida-ps | frida-tools |
| frida-trace | frida-tools |
| frida-ls-devices | frida-tools |
| frida-discover | frida-tools |
| frida-kill | frida-tools |
| frida-apk | frida-tools |
| frida-create | frida-tools |
| frida-join | frida-tools |


## Pythonライブラリ

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

| ライブラリ名 | 説明 |
|---|---|
| Crypto | 暗号化/復号 |
| OpenSSL | 暗号化/復号 |
| PIL | 画像処理 |
| bcrypt | 暗号化/復号 |
| brotli | 解凍/圧縮 |
| cachetools | 呼び出しキャッシュ |
| capstone | 逆アセンブルエンジン |
| cffi | FFI |
| cryptography | 暗号化/復号 |
| cv2 | 画像処理 |
| frida | frida |
| gevent | gevent |
| protobuf | protobuf |
| grpc | grpc |
| jinja2 | jinja |
| keystone | アセンブルエンジン |
| lamda | 自身 |
| pyelftools | ELF解析 |
| lxml | XML解析 |
| msgpack | シリアライズ |
| numpy | 科学計算 |
| peewee | ORM |
| pyaxmlparser | APK解析 |
| pyinotify | ファイル監視 |
| redis | redis |
| requests | requests |
| scapy | トラフィック分析 |
| tornado | Webフレームワーク |
| ujson | JSON解析 |
| unicorn | CPUシミュレーションエンジン |
| websocket | websocket |
| zstd | zstd |

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