sqlmap tamperモジュール


ご存知のように、sqlmapにはwafの台本を持っていて、テスト員にテストしやすいです。でも、実際に使っているのはそんなに多くないです。それに、あまり知らないです。だから、一つのシナリオを整理してきました。現在は58のシナリオを持っています。
space 2 mssql blank.py:スペースを他のスペース記号にランダムに置換します。ルールがあります。デフォルトは%01-0 fです。
select id from users-->select%02id%0efrom%09users
between.pyはNOT BETWEEN 0 ANDで置換します。
and a > b -- --> and a NOT BETWEEN 0 AND b--
スペスpassword.pyはT-SQLログの自動糊処理のペイロードからsp_を追加します。password
and 1=1--  --> and 1=1-- sp_password
charencode.pyはpayloadの全部の文字に対してurl符号化を行います。符号化された文字は処理しません。ここでは、urlでwafを符号化したことがありますが、私たちはpayloadを二回も全符号化します。このように一回だけ復号するwafにはちょっと殺傷力があります。
and 1=1-- --> %61%6e%64%20%31%3d%31%2d%2d
ランダムサイズ
select --> sELecT
percentage.py各文字の前に%を追加します。
select id -->%s%e%l%e%c%t %i%d
charunicodeencode.py文字列のunicodeコード
SELECT FIELD%20FROM TABLE --> %u0053%u0045%u004C%u0045%u0043%u0054%u0020%u0046%u0049%u0045%u004C%u0044%u0020%u0046%u0052%u004F%u004D%u0020%u0054%u0041%u0042%u004C%u0045
space 2 comment.pyスペースを/*/に置換します。
and 1=1 --> and/**/1=1
equaltolike.py将=likeに置き換えます。
and 1=1 -->and 1 LIKE 1
approphemask.pyは引用符をutf-8符号に変えて、単引用符をフィルタするために使用します。
AND '1'='1 --> AND %EF%BC%871%EF%BC%87=%EF%BC%871
私は怠け始めました。コードの例は複雑ですか?もう例を挙げません。
base 64 encode.py payloadでbase 64符号化します。
multilespaces.pyキーワードの周りにスペースをいくつか追加します。これはあまり大きくないです。見てください。
space 2 plus.pyスペースを+号に置き換えます。sql文の中の文は+号で接続できます。スペースはこれに置き換えられます。
nonrecursivereplacement.pyこれもあまり使われていません。主にダブルで検索キーワードを書いています。今はとても役に立ちません。
space 2 randommbank.py置換スペースは有効文字%09%0 C%0 D%0 Aです。
unionalltounion.pyはunion all selectをall抜きにして、あまり使わない感じがします。
securephere.pyに特定の文字列を追加します。
and 1=1 --> and 1=1 and "xuanying"="xuanying"
space 2 dash.pyはスペースを使っています。代わりに、ランダム文字列の最後に改行記号を追加します。
equaltolike.py greatest代替'号
and 2>1 -->and greatest(2,1+1)=2
ifnull 2 ifisnull.py ifnull(a,b)をIF(ISNULL(a),b,a)に置き換えます。
IFNULL(1, 2) --> IF(ISNULL(1),2,1)
modsecurityversioned.py周知のインライン注釈モジュールです。
space 2 mysql blank.pyを他の記号に置き換えます。
modsecurityzroversioned.pyはインラインコメントですが、インラインコメントのランダム文字は0000になります。
space 2 mysqldast.pyスペースを–かかとの改行に置き換えます。
bluecoat.pyは、payloadのランダムスペースに空白記号を使用し、LIKEで=号を置換します。
versionedkeywods.pyは、payloadのクエリ文をインラインでコメントします。
1 UNION ALL SELECT NULL, NULL, CONCAT(CHAR(5,2) --> 1/*!UNION*//*!ALL*//*!SELECT*//*!NULL*/,/*!NULL*/, CONCAT(CHAR(5,2)
halfversioned morekeywords.pyは各キーワードの前にmysqlバージョンのコメントを追加します。
UNION --> /*!0UNION/
space 2 morehash.pyスペースを嗳に置換し、ランダムな文字列の後に改行を加えます。
appostropphenullencode.py不正な二重バイトunicode文字置換単引用符
appenull byte.py payloadが終わったらnullコードを入れて、nullはデフォルトが0だったことを覚えています。だから最後に加えた基本は%00です。
chardoublencode.pyの前に述べた二回のurl符号化は、部分の復号の一回のwafを無視することができます。
unmagicquot.pyは、複数のバイトを組み合わせた%bf%27と、単一の引用符を置換し、最後にコメント記号を追加します。
randdomcomments.pyは/*/注釈を使って鍵関数を分割します。
疲れました。しばらくここに来てください。残りは今度にしましょう。早くないと養生します。