Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
TInjA — TInjAは、Webページのテンプレートインジェクション脆弱性をテストするためのCLIツールであり、8つの異なるプログラミング言語向けの、最も関連性の高い44のテンプレートエンジンをサポートしています。 | Kitploit
ツール/GitHubGitHub/hackmanit/tinja
脆弱性スキャナー動的コード分析 (DAST)ウェブアプリケーション悪用ウェブセキュリティファジングペネトレーションテスト
GitHubhackmanit/tinja

TInjA

TInjAは、Webページのテンプレートインジェクション脆弱性をテストするためのCLIツールであり、8つの異なるプログラミング言語向けの、最も関連性の高い44のテンプレートエンジンをサポートしています。

リポジトリを見る
42338114ヶ月前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

Release Go Report Card GitHub go.mod Go version License

TInjA – テンプレートインジェクションアナライザー

TInjA は、Web ページのテンプレートインジェクション脆弱性をテストするための CLI ツールです。

8 つの異なるプログラミング言語に対応する、最も関連性の高い 44 のテンプレートエンジン(2023 年 9 月時点)をサポートしています。

TInjA は Hackmanit と Maximilian Hildebrand によって開発されました。

  • 機能
  • サポートされているテンプレートエンジン
  • インストール
    • オプション1: プリビルドバイナリ
    • オプション2: Go を使用してインストール
  • 使用法
    • ヘッダー、Cookie、POST ボディの指定
    • SSTI に加えて CSTI のスキャン
    • JSONL レポートの生成
  • プロキシの使用
  • レート制限の設定
  • トラブルシューティング
  • TODO
  • 背景情報
  • ライセンス
  • 機能

    • テンプレートインジェクションの可能性の自動検出と、使用中のテンプレートエンジンの特定。
      • 最も関連性の高い 44 のテンプレートエンジンをサポート(サポートされているテンプレートエンジンを参照)。
      • SSTI と CSTI の両方の脆弱性を検出します。
        • SSTI = サーバーサイドテンプレートインジェクション
        • CSTI = クライアントサイドテンプレートインジェクション
    • ポリグロットの使用による効率的なスキャン:
      • テンプレートインジェクションの可能性が検出され、テンプレートエンジンが特定されるまで、平均して 5 つのポリグロットのみが Web ページに送信されます。
    • クロールされた URL を JSONL 形式で TInjA に渡します。
    • 生の HTTP リクエストを TInjA に渡します。
    • カスタムヘッダー、Cookie、POST パラメータ、クエリパラメータを設定します。
    • プロキシ(例:Burp Suite)経由でトラフィックをルーティングします。
    • レート制限を設定します。

    サポートされているテンプレートエンジン

    .NET

    • DotLiquid
    • Fluid
    • Razor Engine
    • Scriban

    Elixir

    • EEx

    Go

    • html/template
    • text/template

    Java

    • Freemarker
    • Groovy
    • Thymeleaf
    • Velocity

    JavaScript

    • Angular.js
    • Dot
    • EJS
    • Eta
    • Handlebars
    • Hogan.js
    • Mustache
    • Nunjucks
    • Pug
    • Twig.js
    • Underscore
    • Velocity.js
    • Vue.js

    PHP

    • Blade
    • Latte
    • Mustache.php
    • Smarty
    • Twig

    Python

    • Chameleon
    • Cheetah3
    • Django
    • Jinja2
    • Mako
    • Pystache
    • SimpleTemplate Engine
    • Tornado

    Ruby

    • ERB
    • Erubi
    • Erubis
    • Haml
    • Liquid
    • Mustache
    • Slim

    インストール

    オプション1: プリビルドバイナリ

    TInjA のプリビルドバイナリはリリースページで提供されています。

    オプション2: Go を使用してインストール

    必要条件: go1.21 以上

    root@kitploit:~
    go install -v github.com/Hackmanit/TInjA@latest
    

    使用法

    • 単一 URL のスキャン: tinja url -u "http://example.com/"
    • 複数 URL のスキャン: tinja url -u "http://example.com/" -u "http://example.com/path2"
    • ファイルで提供された URL のスキャン: tinja url -u "file:/path/to/file"
    • 生の HTTP リクエストを含むファイルを渡して単一 URL をスキャン: tinja raw -R "/path/to/file"
    • JSONL ファイルで追加情報が提供された URL のスキャン: tinja jsonl -j "/path/to/file"
      • JSONL ファイルの各行には、単一の JSON オブジェクトが含まれている必要があります。JSON オブジェクト全体が 1 行にある必要があります。各オブジェクトは次の構造を持つ必要があります (追加の改行とインデントは表示目的のみです):
    root@kitploit:~
    {
    "request":{
        "method":"POST",
        "endpoint":"http://example.com/path",
        "body":"name=Kirlia",
        "headers":{
            "Content-Type":"application/x-www-form-urlencoded"
        }
    }
    

    ヘッダー、Cookie、POST ボディの指定

    • --header/-H はリクエストに追加するヘッダーを指定します。
      • 例: tinja url -u "http://example.com/" -H "Authentication: Bearer ey..."
    • --cookie/-c はリクエストに追加する Cookie を指定します。
      • 例: tinja url -u "http://example.com/" -c "PHPSESSID=ABC123..."
    • --data/-d はリクエストに追加する POST ボディを指定します。
      • 例: tinja url -u "http://example.com/" -d "username=Kirlia&password=notguessable"

    SSTI に加えて CSTI のスキャン

    • --csti は CSTI のスキャンを有効にします。
      • 例: tinja url -u "http://example.com/" --csti

    デフォルトでは、TInjA は SSTI のみをスキャンします。CSTI のスキャンにはヘッドレスブラウザが使用され、RAM と CPU の使用量が増加する可能性があります。

    JSONL レポートの生成

    • --reportpath は JSONL 形式のレポートの生成を有効にします。レポートはスキャンされた URL ごとに更新され、指定されたパスに保存されます。
      • 例: tinja url -u "http://example.com/" --reportpath "/home/user/Documents"

    プロキシの使用

    • --proxyurl はスキャンに使用するプロキシの URL とポートを指定します。
      • 例: tinja url -u "http://example.com/" --proxyurl "http://127.0.0.1:8080"
    • --proxycertpath はプロキシの CA 証明書を PEM 形式で指定します(HTTPS URL のスキャン時に必要)。
      • 例: tinja url -u "http://example.com/" --proxyurl "http://127.0.0.1:8080" --proxycertpath "/home/user/Documents/cacert.pem"

    プロキシを使用して HTTPS URL をスキャンするには、プロキシの CA 証明書が PEM 形式で必要です。Burp Suite の CA 証明書は、例えば DER 形式で提供されます。変換するには、次のコマンドを使用できます:

    openssl x509 -inform DER -outform PEM -text -in cacert.der -out cacert.pem

    レート制限の設定

    • --ratelimit/-r は 1 秒あたりの最大リクエスト数を指定します。デフォルトでは制限はありません。
      • 例: tinja url -u "http://example.com/" --ratelimit 10

    トラブルシューティング

    • [ERR] Couldn't connect to URL: remote error: tls: user canceled
      • プロキシを使用して HTTPS 経由で接続する場合、プロキシの CA 証明書 (.pem) を --proxycertpath で指定する必要があります(プロキシの使用を参照)。
    • [ERR] Error reading response from target server via proxy: malformed HTTP response "HTTP/1.1"
      • Burp Suite の設定 (Network > HTTP) で、「サーバーがサポートしている場合に HTTP/2 をデフォルトにする」を無効にします。

    TODO

    • TINJA マーカー:ポリグロットを配置する場所をマークします。
    • マルチパートボディと JSON のサポート。
    • オプション:ブラインド SSTI ペイロード(例:sleep ペイロード)。
    • CSTI または SSTI が検出されたかどうかのフィードバック。
    • テンプレートエンジンのエラーメッセージについてヘッドレスブラウザのコンソールを確認(https://github.com/go-rod/rod/issues/330 を参照)。
    • 入力が反映されない場合のエラー検出の改善。

    背景情報

    テンプレートインジェクションと TInjA – テンプレートインジェクションアナライザー に関する詳細情報を提供するブログ記事はこちらにあります:

    テンプレートインジェクション脆弱性 – 理解、検出、特定

    TInjA は Maximilian Hildebrand の修士論文の一部として開発されました。 修士論文の結果は、以下で公開されています:

    • テンプレートインジェクションテーブル
    • テンプレートインジェクションプレイグラウンド
    • TInjA – テンプレートインジェクションアナライザー
    • 修士論文 (PDF)

    ライセンス

    TInjA – テンプレートインジェクションアナライザーは、Hackmanit と Maximilian Hildebrand によって、彼の修士論文の一部として開発されました。TInjA – テンプレートインジェクションアナライザーは Apache License, Version 2.0 の下でライセンスされています。

    ツールをダウンロード