この記事では、WebセキュリティとCTFで発生した3種類の情報漏えいについて説明し、Pythonスクリプトを使用してクローンを作成する際に注意すべき点と、readme.mdには表示されないが可能性があるいくつかの高度な操作について説明します。
1. SVNソースコードが漏洩
開発者がバージョン管理にSVNを使用すると、サイトは自動的にデプロイされます。構成が不適切な場合、.svnフォルダーはオンライン環境に直接デプロイされます。これにより、SVNリークの脆弱性が発生しました。
バージョン管理ツール:dvcs-ripper
https://github.com/kost/dvcs-rippeLinuxr
Linuxで実行中の.pl
ファイルはオンラインでダウンロードする必要があることに注意してくださいperl
apt-get install perl
作業ディレクトリに切り替えます。perlxxx.plを実行できます
-
最初にターゲットURLをスキャンし、.svnがリークされていることを確認してから、dvcs-ripperツールのrip-svn.plスクリプトを使用してクローンを作成します。
例:
index.htmlとsvnディレクトリがクローンされます -
svn / pristine /
.svnフォルダー
pristineに保存されている元のファイルには、バックアップファイルが含まれている場合があります。
ps:通常、次を使用します:grepを使用して、バックアップファイルで必要なものを見つけます。
cat wc.db | grep flag
ただし、バイナリファイルを端末に出力できない場合があります。
現時点では;
cat wc.db | grep -a flag
できる
svnソースコードが一時的に実行できるほど多くの操作があります。
2. Gitソースコードが漏洩した
インデックス
Gitダウンロードアドレス、一部のアドレスには単一のダウンロード機能があり、後者の2つの状況には適用されません。これを使用してください
https://github.com/BugScanTeam/GitHack
コマンドを実行するだけ
https://github.com/BugScanTeam/GitHack
ログ
- 同じことが最初に見つかったスキャンです。
- GitHackツールを使用して、ターゲットのソースコードをローカルにクローンします。
Gitソースコードのリークは現在のgitバージョンに関連しているだけでなく、履歴を確認する必要があります
- 履歴を表示
git log
- バージョンを切り替える
git reset
- 2つの提出物を比較する
git diff
以前のバージョン情報はgitログに表示されます。ソースリークフォルダーに切り替えるように注意してください〜/ / dist / xxx。
各バージョンには対応するIDマークがあり、git diff +id号
バージョンの違いを表示するために使用します
隠しておく
プロジェクトがdevブランチで開発されている場合、緊急に修正する必要のあるプロジェクトのバグがありますが、開発中のコンテンツは半分しか完成しておらず、まだ送信したくありません。現時点では、git stashコマンドを使用して、変更されたコンテンツをスタック領域に保存できます。 、その後、修正プログラムブランチにスムーズに切り替えてバグを修正します。修復が完了したら、もう一度devブランチに切り替えて、保存したコンテンツをスタックから復元します。
簡単に言うと、stashはgitの作業ステータスをgitスタックに保存し、必要に応じて復元するために使用されます。
git stash
备份当前工作区的内容,保存到git 栈中,从最近的一次commit中读取相关内容
git stash pop
从git栈中获取到最近一次stash进去的内容,恢复工作区的内容。。获取之后,会删除栈中对应的stash。
由于可能会stash多次,git使用栈管理,我们可以使用git stash list查看所有的stash
git stash clear
清空git栈
3.ウェブサイト情報バックアップファイル
この種のエラーが発生したWebサイトはもともと役に立たないため、この種の表示はめったになく、表示する価値は大きくありません。
- ウェブサイトのソースコード
- ベイクファイル
- vimキャッシュ
- .DS_Store
開発者がオンライン環境でソースコードをバックアップし、バックアップファイルをWebディレクトリに配置すると、Webサイトのソースがリークします。
少し整理した
/robots.txt /index.php~ /index.php.bak /www.zip /wwwroot.zip
/htdocs.zip /.rar /.zip /.7z /.tar.gz /.bak /.swp /.txt
ベイクファイル
開発者がオンライン環境でソースコードをバックアップし、バックアップファイルをWebディレクトリに配置すると、Webサイトのソースがリークします。
http://url/index.php.bak等
vimキャッシュ(.swpバックアップファイル)
当开发人员在线上环境中使用 vim 编辑器,在使用过程中会留下 vim 编辑器缓存,当vim异常退出时,缓存会一直留在服务器上,引起网站源码泄露。
URL:xxx / index.php.swpを試して.swpファイルのコードをダウンロードし、
vimで開きます。コマンドを開きます:vim -r index.php.swp。
開いた後、ソースコードが見つかり、コードが監査されます。
.DS_Store
.DS_Storeは、Mac OS保存フォルダのカスタム属性を持つ隠しファイルです。.DS_Storeを使用して、このディレクトリ内のすべてのファイルのリストを確認できます。
Python-dsstoreツール(https://github.com/gehaxelt/Python-dsstore)を使用して、.DS_Storeファイルの分析を完了します。
wget http://xxx.com/.DS_Store -qO samples/.DS_Store.ctfxxx
正常な場合、ファイルはサンプルフォルダーに保存され、ls-alによって表示されています。
python main.py samples/.DS_Store.ctfxxx
ps:元の.DS_Store.ctfはすでにファイルにあるため、別の名前を付けます
終わり
Webサイトに表示される情報漏えいの可能性はますます低くなっています。これは、開発者のセキュリティ意識と開発仕様の改善に大きく関係していますが、セキュリティ担当者として、その出現に注意を払う必要があります。また、スタックなど、より多くの隠されたリーク情報の潜在的な脆弱性を見つけることも必要です。