Shikata Ga Nai

Private? There is no such things.

SQL injectionの基本的な診断手順をなるべく詳細にかいてみた①

Hello there, ('ω')ノ

 

まずは、PortSwiggerにアクセスして。

Refine your searchの機能のみ、動作確認することに。

 

f:id:ThisIsOne:20211003165713p:plain

 

まずは、エンドポイントとパラメータを整理して。

 /filter

 category

 

おきまりのペイロードを挿入するとサーバが処理できなかったレスポンスが。

他のペイロードも挿入してどのように画面に反映されるかを確認して。

 GET /filter?category='

f:id:ThisIsOne:20211003165810p:plain

 

ペイロードリストから次につながるペイロードを探して試すことに。

経験を積みながら独自のペイロードリストはつくっておいたほうがお勧めで。

 admin' or 1=1 --

 

f:id:ThisIsOne:20211003171257p:plain

 

下記のようにペイロードを挿入して。

はじめのことによく間違ったのが、スペースを+等で結合するのを忘れてたりと。

結果を見るとすべてが表示されたので脆弱性ありと判断して。

 GET /filter?category='+or+1=1+--

 

f:id:ThisIsOne:20211003171520p:plain

 

別途、アクティブスキャンを使用するには。

該当するリクエストを選択して。

 

f:id:ThisIsOne:20211003173642p:plain


結果は、下記のとおりでTentative(暫定)とのことで確認が必要で。

 

f:id:ThisIsOne:20211003170838p:plain

 

どのようなリクエストとレスポンスかをすべて確認して。

 

f:id:ThisIsOne:20211003165527p:plain

 

f:id:ThisIsOne:20211003170931p:plain

 

f:id:ThisIsOne:20211003170957p:plain

 

f:id:ThisIsOne:20211003171018p:plain

 

しかしながら、これだけだと脆弱性とは判断できないので。

はじめに記述したように手動で確認する作業が必要で。

それにしても、スキャンレベルが低いように思うので何か設定がおかしいのだろうか。

 

Best regards, (^^ゞ