Jump to content

0x01はじめに

目標は大学です。穴の掘削プロセス中に、SQL注射に遭遇し、拡張されたハザードをさらに利用しようとしました。脆弱性は、修理のためのプラットフォームに報告されています。

0x02 SQL噴射けがの失敗

IDに2つの単一の引用符を追加し、エラーを報告します。検出後、数値注射であり、スペースがろ過されたことがわかりました。ここでは、1049983-20220119230754221-1947063106.png 1049983-20220119230754869-1298361745.pngの代わりに/** /を使用できます

そこで、私は直接sqlmapに行きました

python sqlmap.py -u url - バッチ - tamper=space2comment.py -dbs

1049983-20220119230755494-268741254.png

それがDBAの許可であることがわかった:

python sqlmap.py -u url - バッチ - tamper=space2comment.py-is -dba

1049983-20220119230756168-93360783.png

私はウェブパスを見つけるために多くの方法を試しました

最後に、オペレーティングシステムがFreeBSDであることに気付きました

私は誤ってこの1049983-20220119230756543-1187286406.pngを見ました

char(47)は「/」であり、私はすぐにディレクトリを横断し、この1049983-20220119230757049-1315630357.pngを通るパスを見つけることを考えました

ルートディレクトリからレイヤーごとにレイヤーを通過することにより、最終的にWebサイトルートディレクトリ:1049983-20220119230757584-367784242.pngを見つけます

シェルの書き込みは失敗し、単一の引用を避けるために16進数に変換します

ただし、この注入はサーバー上の機密ファイル(非WEBディレクトリを含む)を読み取ることができます。これは非常に有害です

0x03他のポイントから引き続き試してください

SQLインジェクションでコードを読んで、コードレベルのフィルタリングがないことを発見しました。 exploit()関数は文字列を配列に分割し、スペースで分離します。アレイの最初の1つを取り、スペースを変装してフィルターし、1049983-20220119230758182-963206539.pngを注入するためにスペースをインラインコメントに置き換えます

リークされたデータベースアカウントとパスワードによると、ポート3306に接続する試みは失敗し、ローカルIPがバインドされると推定されています。

ディレクトリを通過し続け、MySQL 1049983-20220119230758617-1821294693.pngのログインインターフェイスを発見し続けます

ログインした後、空白のインターフェイスがあります。ログインロジックを処理するコードを読むと、ログインが成功し、セッションを直接設定しますが、ジャンプしないことがわかります。ログインした後、ホームページに直接アクセスできます。

secure_file_privを確認して、それがnull値であり、制限1049983-20220119230759161-800865420.pngがないことを発見しました

ログを使用してWebShellに書き込み、ログパス1049983-20220119230759627-831672158.png 1049983-20220119230759987-857371733.pngを設定する許可がないことを確認してください

Webサイトバックエンド1049983-20220119230800441-1719840707.pngを見つけました

データベースにあるアカウントとパスワードのハッシュ値

オンラインWebサイトの復号化ハッシュは、単純なテキストの価値があります

ログインに失敗し、ソースコード1049983-20220119230800995-642366195.png 1049983-20220119230801481-2146979083.pngをお読みください

塩が追加されていることがわかったので、塩を追加して復号化して正しいパスワードを取得しました

ログインに正常にログインした後、新しいスタッフデータ管理アドオン1049983-20220119230801913-361154312.pngに写真をアップロードする場所を見つけました

ただし、Image Files 1049983-20220119230802435-1701708571.pngのみをアップロードできます

アップロードが成功した後、SQLでシェルの書き込みの失敗がディレクトリの権限によるものであるかどうかを突然考えました。ウェブサイトは、アップロードされたディレクトリを除く他のディレクトリを書くことができないことを制限しましたか?

そこで、私はシェル1049983-20220119230802982-2133055457.pngに書き込もうとしました

成功は確かにディレクトリの書き込み許可問題1049983-20220119230803466-2086656888.pngです

私はアリの剣を接続できないことを発見し、WAFがトラフィックを傍受したと推定されました。アリの剣の交通暗号化を見ました。 Ant Swordには、Ant Sword Trafficの重要な機能があります。つまり、ユーザーエージェントはAntsword/バージョンです。さらに、エンコーダーを使用する場合は、デコード機能を送信する必要があるため、デコード機能も機能であり、カスタムエンコーダーとデコーダーが必要です。

2つのファイルAntsword-Master/modules/request.jsおよびAntsword-master/modules/update.jsのユーザーエージェントを変更した後、正常に接続されました。 WAFは、UA 1049983-20220119230803898-1313505746.pngの明らかな特徴のみを傍受しました

リバウンドシェルが失敗し、NCはTCP/UDPプロトコルに基づいているため、リバウンドコマンドが存在せず、アウトバウンドIPが禁止され、アウトバウンドポートが禁止されています。

SHが存在することを確認:1049983-20220119230804239-313147220.png

アウトバウンドポートは、外部ネットワークにアクセスすることです。ネットワーク接続を照会すると、ポート54454が終了できることがわかります。1049983-20220119230804626-26010200.png

したがって、ポート54454を聴いた後、シェルは1049983-20220119230804985-937189033.pngに成功しました

電力のエスカレーションは失敗しました。サーバーカーネルバージョンが高すぎるため、カーネルの脆弱性を使用して権利を増やすことは不可能です。タスク、環境変数、および権利を増やすためにSUIDを計画しようとすると、それを使用する場所がないことがわかります。 Sudoは権利を増やすために、およびサードパーティのサービスでは、プラグインディレクトリは、複数のファイルの許可も正常に構成されており、他の機密情報が漏れていないことがわかります。

0x04要約

1。ターゲットシステムに単一の引用符を追加してエラーを報告しますが、フィルタースペースをバイパスする代わりに/**/使用できます。Spy2comment.pyスクリプトを使用してSqlmap.py -u http://ip/newform.php? sqlmap.py -u 3http://ip/newform.php?id=123 - バッチ - tamper=space2comment.py-is -dba //それがDBAであるかどうかを確認してください。システムにはDBAアクセス許可があります。 3。NAMPスキャンを通じて、ターゲットシステムはFreedBになります(Sunosも可能です)。 load_file()関数を等型化し、ディレクトリ3を直接通過できます3。ターゲットシステムディレクトリhttp://ip/newform.php?id=123/**/union/**/select/**/1、load_file( '/')、3,4,5,6,7,83を読み取ります。 Webサイトルートディレクトリ3http://IP/newform.php?id=123/**/**/select/**/1、load_file( '/home/db/www/')、3,4,5,6,7,84をお読みください。 WebShellに書き込み失敗し、データベース構成ファイルを読み取ろうとしました。 Webサイトのデータベースのユーザー名とパスワードが表示されます。ウェブサイトのユーザー名とパスワードが表示されます。ウェブサイトのユーザー名とパスワードが表示されます。ユーザー名とパスワードは、PMBPデータベース管理者ページにログインするために使用されます。ただし、空白スペースをバックグラウンド管理ページに表示して、データベース管理ページに直接アクセスすることはできません。 6。SQLステートメントクエリの許可、空の表示、および「Secure_file_priv'7のような表示変数」の制限なし。ただし、MySQLのログを介してシェルに書き込むことは失敗しており、記述されたディレクトリアクセス許可に制限がある可能性があります。 8。ディレクトリスキャンを通じて、ディレクトリシステムのバックグラウンド管理を見つけます。ここでの背景のユーザー名とパスワードは、SQLMapを介して直接読み取ることができ、ユーザー名とパスワードのハッシュを持つことができ、パスワードはMD5を介して正常に復号化されます。システムに正常にログインすることはできず、パスワードが正しくない場合があります。 9。Load_File()関数を介してバックグラウンド管理ページを読み、パスワードが塩漬けであることを確認します。ここに塩を追加し、それを復号化して正しいパスワードを取得し、ターゲットの背景10に正常にログインします。 11。パラメーターは、MySQLを介して画像の絶対パスアドレスに1つの文にアリの剣を書きます。 12は正常に記述できます。文はアングリの剣を通して書くことができますが、接続は成功しておらず、WAFによって傍受される可能性があります。ここでは、Angri Swordのユーザーエージェントを変更し、エンコーダBAA64のエンコードを使用してWAF傍受をバイパスしてリンクに成功させる必要があります。

Antsword-Master/modules/request.jsおよびAntsword-Master/modules/update.jsの2つのファイルのユーザーエージェントを変更した後、それは成功し、bas6413をエンコードするコードを使用してNCを介してリバウンドしました。リバウンドが失敗したことがわかった。ターゲットシステムがアウトバウンドIPを禁止し、TCPプロトコルアウトバウンドポートを禁止したことがわかっており、アウトバウンドポートが外部ネットワークにアクセスしていることがわかりました。ネットワーク接続を照会すると、ポート54454がアウトバウンドになる可能性があることがわかりました。 NC -LVVP 544454オリジナルリンク:https://xz.aliyun.com/t/10527

0 Comments

Recommended Comments

There are no comments to display.

Guest
Add a comment...