目次
1-2-1. バックアップ(.swp/.bak/.beifen/~/phps など)
1-2-3. 圧縮パッケージ(zip/tar.gz/rar/7zなど)
1-2-4. パス(.git/.svn/.hg/.DS_Store/WEBINF/web.xml/cvs/Bazaar/bzr)
1. ソースコードが流出
1-1. ページのソースコードが流出
ディレクトリ トラバーサル。Crtl+F を使用して機密キーワード フラグを検索します。
1-2. 機密ファイルの漏洩
1-2-1. バックアップ(.swp/.bak/.beifen/~/phps など)
スキャンして、index.php の形式のエントリ ページを見つけるときに、そのバックアップ ファイル (/.index.php.swp、/.index.php.bak、/index.php~、/index など) にアクセスしてみることができます。 .phps など)、ソース コードを表示し、機密キーワード フラグを取得します。
注1: バックアップファイル
デフォルトでは、Vim がプログラミングに使用され、ファイルを変更すると、システムは ~ という名前のバックアップ ファイルを自動的に生成します。
注2:異常終了
vim エディターを使用してindex.php ファイルを作成すると、.index.php.swp ファイルが作成され、正常に終了した場合は削除され、異常終了した場合はファイルが保存されます。異常終了したindex.phpを復元することができます。同時に、複数の予期しない終了によって古い .swp ファイルは上書きされませんが、.swo ファイルなどの新しいファイルが生成されます。Index.php を例にとると、初めて生成されるキャッシュ ファイルの名前は .index.php.swp、2 回目の予期しない終了後のファイル名は .index.php.swo、3 回目に生成されるキャッシュ ファイルの名前は .index.php.swo です。 .index.php.swnです。注: インデックスの前に「.」があります。
注 3: phps ファイルは PHP のソース コード ファイルであり、通常、ユーザー (訪問者) が Web ブラウザを通じて PHP コードのコンテンツを直接表示できるようにするために使用されます。
1-2-2. データベース(mdb)
初期の asp+access アーキテクチャのデータベース ファイルは db.mdb でした。URL パスを直接確認して /db/db.mdb を追加してファイルをダウンロードし、メモ帳で開いてフラグを検索できます。
1-2-3. 圧縮パッケージ(zip/tar.gz/rar/7zなど)
dirsearch を使用して Web サイト上の www.zip をスキャンしてダウンロードすると、圧縮パッケージの中に flag.txt が存在しますが、実際のコンテンツは存在しないことがわかります。このとき、URL にファイル名を入力してアクセスしてみてください。 。
1-2-4. パス(.git/.svn/.hg/.DS_Store/WEBINF/web.x)ml/cvs/バザール/bzr)
まず dirsearch を使用して URL ディレクトリをブラストし、脆弱性の特性を観察します。
例1: dirsearch -u http:/ip:port/.xx/
次に、脆弱性の状況に基づいて適切な対応ツールを選択します。
例2:python3 GitHack.py http:/ip:port/.xx/
例3: perl rip-xxx.pl -v -u http:/ip:port/.xx/
例4: python3 ds_store_exp.py http://ip:port/.DS_Store
注 1: git リークの脆弱性
git リークの脆弱性_TItaniumx のブログ-CSDN blog_.git ファイルのリークの脆弱性
git はバージョン管理ツールとして各コミットの変更を記録するため、問題が git 漏洩した場合、変更中にフラグ ファイルが削除または上書きされる可能性があります。現時点では、git の「git restart」コマンドを使用して以前のバージョンに復元できます。または、より簡単な方法を使用します。「git log --stat」コマンドを使用して、各送信でどのファイルが変更されたかを確認し、「git diff HEAD commit-id」を使用して、現在のバージョンと変更を比較します。見たいです。
コミットするたびに、git はそれらを自動的にタイムラインにまとめます。このタイムラインはブランチです。Git では複数のブランチを使用できるため、ユーザーはメインの開発ラインに影響を与えないように、メインの開発ラインから作業を分離できます。新しいブランチがない場合、タイムラインは 1 つだけ、つまりブランチが 1 つだけ存在し、git のデフォルトは master ブランチです。したがって、探しているフラグや機密ファイルが現在のブランチに隠されていない可能性があります。この場合、「git log」コマンドを使用しても現在のブランチの変更のみを見つけることができるため、ブランチを切り替える必要があります。必要なファイル。
.git のみにアクセスすると 403 が返されますが、このとき .git/config にアクセスしてみて、ファイルの内容が返された場合は git リークがあることを意味し、逆に通常は存在しません。SVN リークでは、通常、ソース コードはエントリ内でクロールされますが、エントリが空である場合もあります。このとき、wc.db ファイルが存在するかどうかに注意し、チェックサムを通じて元のフォルダ内のソース コードを取得できます。その中で。
注 2: .svn リークの脆弱性
.svn をダウンロードした後、ディレクトリを直接参照できますが、フラグ ファイルがサーバー上で削除された場合は、履歴でそれを見つけることができます。パスは http://ip:port/.hg/store/data/flag__61.txt.i です。下線が 2 つあることに注意してください。
注 3: CTF における一般的な Web ソースコード漏洩の概要
CTF でよくある Web ソース コードの漏洩の概要 - 青春を大切に - Blog Park
CTF_meteox のブログでの情報漏洩 - CSDN blog_ctf 情報漏洩
CTF情報収集/漏洩_Skn1feのブログ-CSDNブログ_情報漏洩ctf
注 4: 共通の Git コマンド (1)
git スタックから最新の stash の内容を取得し、ワークスペースの内容を復元します。取得後、スタック内の対応するスタッシュは削除されます。stash は複数回発生する可能性があるため、git はスタック管理を使用し、git stash list を使用してすべての stash を表示できます。
例2:git stash list
git スタック内のすべてのワークスペース コンテンツのバックアップを表示します。たとえば、git stash apply stash@{1} を使用すると、対応する stash 0 を最新バージョンとして削除せずに、バージョン番号 stash@{1} のバックアップを取り出すことができます。
例 3:ソース コードを表示するという一般的な悪用方法に加えて、漏洩した git には他の有用な情報も含まれている可能性があります。たとえば、.git/config フォルダーには、このユーザーの他のリポジトリへのアクセスを許可する access_token 情報が含まれている可能性があります。
2.robots.txtが流出
クロールすべきでないページをクローラーに指示します。質問の過程では、robots.txtの漏洩に注意するほか、configなどの変な名前のファイルにも注意し、「もっと見る」をクリックしてソースコードを表示したり、フラグを検索したりする必要がある。
3.404ページが流出
Apache のバージョンまたはサーバーのバージョンが漏洩します。
4. プロトコルヘッダーの漏洩
プロトコル ヘッダー (応答/要求) の漏洩については、Burpsuite を使用してパケットをキャプチャし、要求と応答を表示できます。
5. その他注意事項
netdiscover -r 192.168.253.1/24 を使用して範囲 IP を検出します
nmap -sV ip を使用してオープン サービス情報をマイニングする
nikto -host ip を使用して射撃場情報を検出する
dirb http://ip:port/ を使用して隠しページを検出する
注 1:情報漏洩によって効果的な収集が得られない場合は、コード監査を実施して、SQL インジェクション、ファイル アップロードの脆弱性、ファイル インクルードの脆弱性など、他の種類の Web 攻撃手法が存在するかどうかを確認します。
注 2: X-Forwarded-For は HTTP 拡張ヘッダーであり、主に Web サーバーが訪問ユーザーの実際の IP アドレスを取得できるようにしますが、この IP は実際のものではない可能性があります。http リクエストで、ローカル ユーザーがアクセスする必要がある場合、または Cookie の内容を変更する必要がある場合は、ブラウザを欺くために X-Forwarded-For:127.0.0.1 を使用する必要があります。
注3:適切な練習プラットフォーム (CTFHub)
CTFHub—Web—情報漏洩 (√)
後で研究するいくつかの射撃場の貫通が添付されています。
CTF-SMB情報漏洩【シンプルでわかりやすい】_不明なホワイトハットブログ-CSDNブログ_ctfクエリアカウント名
コース紹介_CTFキャプチャーザフラッグトレーニングビデオコース(root権限取得の感動を一度体験)_CTFビデオ-51CTOスクール