
無効なDNSレコードを持つサブドメインを検出し乗っ取るのに役立つツール
このツールで可能なこと:
サブドメインが乗っ取られる可能性があるかどうかを確認します。以下のような場合があります:
フラグ -takeover を指定することで、実際にそれらのサブドメインを乗っ取ることができます。現在、乗っ取りはGithub PagesとHeroku Appsでのみサポートされており、デフォルトでは乗っ取り機能はオフになっています。
providers-data.csv ファイルを介して、独自のCMSプロバイダーを指定し、それらを確認できます。そのファイルには、CMS名、そのCNAME値、検索したい文字列、HTTPのみで動作するかどうかを記述します。いくつかの例をご覧ください。
言うまでもありませんが、このツールは非常に慎重に使用してください。作者は一切の結果について責任を負いません。
デフォルトでは、このツールはサブドメインの乗っ取りを許可しません。これを行う場合は、-takeover フラグを指定してください。
GOがインストールされている必要があります。GOをインストールしたら、go get github.com/anshumanbh/tko-subs と入力してツールをダウンロードします。
ツールがダウンロードされたら、tko-subs -h と入力します。
次に必要な情報は次のとおりです:
注意 - これらの値が必要なのは、サブドメインを乗っ取りたい場合のみです。デフォルトでは必要ありません。
ビルドに必要なGoパッケージ。
go get github.com/bgentry/heroku-go
go get github.com/gocarina/gocsv
go get github.com/google/go-github/github
go get github.com/olekukonko/tablewriter
go get golang.org/x/net/publicsuffix
go get golang.org/x/oauth2
go get github.com/miekg/dns
すべてインストールしたら、ディレクトリに cd して次のように入力します:
tko-subs -domains=domains.txt -data=providers-data.csv -output=output.csv
乗っ取りも行う場合のコマンドは次のとおりです:
tko-subs -domains=domains.txt -data=providers-data.csv -output=output.csv -takeover -githubtoken=<github-token> -herokuusername=<heroku-username> -herokuapikey=<heroku-api-key> -herokuappname=<heroku-app-name>
単一のドメインのみを確認したい場合は、次のように入力します:
tko-subs -domain <domain-name>
複数のドメインを確認したい場合は、次のように入力します:
tko-subs -domain <domain-name-1>,<domain-name-2>
デフォルトでは:
domains フラグは domains.txt に設定されていますdata フラグは providers-data.csv に設定されていますoutput フラグは output.csv に設定されていますtakeover フラグは設定されていないため、デフォルトでは乗っ取りは行われませんdomain フラグは設定されていないため、常に domains.txt ファイルに記載されているすべてのドメインを確認します。domain フラグが指定された場合、そのドメインのみが確認され、domains.txt ファイルは存在していても無視されますthreads フラグは 5 に設定されていますしたがって、単に tko-subs を実行すると、上記のデフォルト値で実行されます。
name,cname,string,http
Domain,CNAME,Provider,IsVulnerable,IsTakenOver,Response
デッドDNSレコードが見つかった場合、Provider は空のままです。
誤動作しているネームサーバーが見つかった場合、Provider と CNAME は空のままです。
これは、subdomains.txt ファイル内のすべてのドメインに対して(GoRoutinesを使用して並行して)反復処理を行い:
takeover フラグが指定されているかどうかに応じて、その脆弱なサブドメインの乗っ取りを試みます。gh-pages を作成するCNAME と index.html をそのリポジトリの gh-pages ブランチにアップロードする。ここで、CNAME には乗っ取る必要があるドメインが含まれます。index.html には、ドメインが乗っ取られた後に表示されるテキスト This domain is temporarily suspended が含まれます。5/27
11/6
9/22
6/25