[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
21/03/2008 21:41:31 (+0700) | #1 | 120436 |
hangsachtay
Member
|
0 |
|
|
Joined: 02/01/2007 19:43:51
Messages: 69
Offline
|
|
Mình xin giới thiệu một phương pháp chống SQL Injection đơn giản nhưng cũng khá hiệu quả
Phương thức hoạt động của nó là kiểm tra các câu truy vấn đầu vào và so sánh với các từ khóa ( là những dạng truy vấn mà Hacker sư dụng để kiểm tra xem website có bị dính SQL Injection hay không ) có trong danh sách, nếu câu truy vấn có nhưng từ trùng với các từ khóa trong danh sách nó sẽ đưa ra cảnh báo và block lại nhưng câu truy vấn đó. Các bạn có thể thêm vào danh sách nhưng từ khóa ( câu truy vấn ) được coi là có hại để tăng cường bảo mật cho website của mình.
Tạo một file có tên "AntiSQLInjection.php" với nội dung như sau:
Code:
<?php
$cautruyvan = $_SERVER['QUERY_STRING'];
$tukhoa = array('chr(', 'chr=', 'chr%20', '%20chr', 'wget%20', '%20wget', 'wget(',
'cmd=', '%20cmd', 'cmd%20', 'rush=', '%20rush', 'rush%20',
'union%20', '%20union', 'union(', 'union=', 'echr(', '%20echr', 'echr%20', 'echr=',
'esystem(', 'esystem%20', 'cp%20', '%20cp', 'cp(', 'mdir%20', '%20mdir', 'mdir(',
'mcd%20', 'mrd%20', 'rm%20', '%20mcd', '%20mrd', '%20rm',
'mcd(', 'mrd(', 'rm(', 'mcd=', 'mrd=', 'mv%20', 'rmdir%20', 'mv(', 'rmdir(',
'chmod(', 'chmod%20', '%20chmod', 'chmod(', 'chmod=', 'chown%20', 'chgrp%20', 'chown(', 'chgrp(',
'locate%20', 'grep%20', 'locate(', 'grep(', 'diff%20', 'kill%20', 'kill(', 'killall',
'passwd%20', '%20passwd', 'passwd(', 'telnet%20', 'vi(', 'vi%20',
'insert%20into', 'select%20', 'nigga(', '%20nigga', 'nigga%20', 'fopen', 'fwrite', '%20like', 'like%20',
'$_request', '$_get', '$request', '$get', '.system', 'HTTP_PHP', '&aim', '%20getenv', 'getenv%20',
'new_password', '&icq','/etc/password','/etc/shadow', '/etc/groups', '/etc/gshadow',
'HTTP_USER_AGENT', 'HTTP_HOST', '/bin/ps', 'wget%20', 'uname\x20-a', '/usr/bin/id',
'/bin/echo', '/bin/kill', '/bin/', '/chgrp', '/chown', '/usr/bin', 'g\+\+', 'bin/python',
'bin/tclsh', 'bin/nasm', 'perl%20', 'traceroute%20', 'ping%20', '.pl', '/usr/X11R6/bin/xterm', 'lsof%20',
'/bin/mail', '.conf', 'motd%20', 'HTTP/1.', '.inc.php', 'config.php', 'cgi-', '.eml',
'file\://', 'window.open', '<SCRIPT>', 'javascript\://','img src', 'img%20src','.jsp','ftp.exe',
'xp_enumdsn', 'xp_availablemedia', 'xp_filelist', 'xp_cmdshell', 'nc.exe', '.htpasswd',
'servlet', '/etc/passwd', 'wwwacl', '~root', '~ftp', '.js', '.jsp', 'admin_', '.history',
'bash_history', '.bash_history', '~nobody', 'server-info', 'server-status', 'reboot%20', 'halt%20',
'powerdown%20', '/home/ftp', '/home/www', 'secure_site, ok', 'chunked', 'org.apache', '/servlet/con',
'<script', '/robot.txt' ,'/perl' ,'mod_gzip_status', 'db_mysql.inc', '.inc', 'select%20from',
'select from', 'drop%20', '.system', 'getenv', 'http_', '_php', 'php_', 'phpinfo()', '<?php', '?>', 'sql=');
$kiemtra = str_replace($tukhoa, '*', $cautruyvan);
if ($cautruyvan != $kiemtra)
{
$cremotead = $_SERVER['REMOTE_ADDR'];
$cuseragent = $_SERVER['HTTP_USER_AGENT'];
die( "Phat hien co su tan cong! <br /><br /><b>Viec tan cong nay da bi ngan chan va se duoc ghi nhan lai:</b><br />$cremotead - $cuseragent" );
}
?>
Thêm đoạn code sau vào file mà bạn muốn bảo vệ:
Code:
<?php
include "AntiSQLInjection.php";
?>
Có gì còn chưa hay xin các bạn bổ xung. |
|
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 00:00:54 (+0700) | #2 | 120457 |
|
xnohat
Moderator
|
Joined: 30/01/2005 13:59:19
Messages: 1210
Location: /dev/null
Offline
|
|
Hề hề Query Strings được truyền tới server đôi khi cần các từ trên thì sao bạn vd:username của tui tui đặt là UNION TEAM hay admin_chinh admin_phu thì bạn lock hết sao ? nhất là khi query string chứa một bài post cho một bài viết trên forum chẳng hạn thì đôi khi đầy các từ trên ( HVA thì khỏi nói, liên tục hén )
Cho xin ý kiến nhe bạn.
Thân, |
|
iJust clear, "What I need to do and how to do it"/i
br
brBox tán gẫu dời về: http://www.facebook.com/hvaonline |
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 02:18:21 (+0700) | #3 | 120476 |
hangsachtay
Member
|
0 |
|
|
Joined: 02/01/2007 19:43:51
Messages: 69
Offline
|
|
xnohat wrote:
Hề hề Query Strings được truyền tới server đôi khi cần các từ trên thì sao bạn vd:username của tui tui đặt là UNION TEAM hay admin_chinh admin_phu thì bạn lock hết sao ? nhất là khi query string chứa một bài post cho một bài viết trên forum chẳng hạn thì đôi khi đầy các từ trên ( HVA thì khỏi nói, liên tục hén )
Cho xin ý kiến nhe bạn.
Thân,
Đó và việc bảo mật của webmaster, các webmaster thường không có user đăng ký các tên nhạy cảm như vậy.
Bạn hãy thử dùng công cụ search trên HVA để tìm từ khóa "UNION" xem có được phép không ?
Để có được sự bảo mật đôi khi người ta sẽ gặp phải những hạn chế đi kèm, không có một công cụ bảo mật nào được gọi là hoàn hảo cả, cái gì cũng có 2 mặt của nó bạn à
Cảm ơn bạn vì những ý kiến đóng góp ! |
|
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 02:59:21 (+0700) | #4 | 120493 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
@hàng sách tay+ xnohat: Bộ SQL injection chỉ xảy ra trên $_GET thôi hay sao mà thấy các bạn chỉ validate trên $_SERVER['QUERY_STRING'] |
|
Cánh chym không mỏi
lol |
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 03:52:58 (+0700) | #5 | 120500 |
hangsachtay
Member
|
0 |
|
|
Joined: 02/01/2007 19:43:51
Messages: 69
Offline
|
|
gamma95 wrote:
@hàng sách tay+ xnohat: Bộ SQL injection chỉ xảy ra trên $_GET thôi hay sao mà thấy các bạn chỉ validate trên $_SERVER['QUERY_STRING']
Hình như bạn chưa đọc kỹ, tôi có nêu rõ phương thức của nó là kiểm tra dữ liệu đầu vào, đây là chỉ một trong những cách để phòng chống SQL injection đơn giản thôi chứ không phải toàn diện.
Cảm ơn ý kiến đóng góp của bạn. |
|
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 04:03:18 (+0700) | #6 | 120502 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
@ hàng sách tay: Đồng chí mới là chưa đọc kỹ, kiểm tra dữ liệu đầu vào mà chỉ kiểm tra trên GET là thua rồi .. |
|
Cánh chym không mỏi
lol |
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 04:06:31 (+0700) | #7 | 120503 |
hangsachtay
Member
|
0 |
|
|
Joined: 02/01/2007 19:43:51
Messages: 69
Offline
|
|
gamma95 wrote:
@ hàng sách tay: Đồng chí mới là chưa đọc kỹ, kiểm tra dữ liệu đầu vào mà chỉ kiểm tra trên GET là thua rồi ..
Bạn có cao kiến nào thì xin chỉ giáo thêm !!!
Thanks |
|
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 04:28:24 (+0700) | #8 | 120505 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
chả có cao kiến gì, chỉ thấy nó sơ sài nên góp ý ! |
|
Cánh chym không mỏi
lol |
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 05:30:02 (+0700) | #9 | 120517 |
subnetwork
Member
|
0 |
|
|
Joined: 05/09/2004 06:08:09
Messages: 1666
Offline
|
|
Ở đây bro dùng $_SERVER nghe giang hồ đồn đại, nó được thiết lập dành cho các máy chủ web bao gồm các biến như DOCUMENT_ROOT, SERVER_NAME, SERVER_PORT,...Cái này có liên hệ mật thiết với php.ini cho nên nếu muốn xem thông tin chi tiết thì thãy phpinfo() lên là nhìn thấy nó ngay hoặc nếu có tài khoản root trên con server đó thì điều chỉnh trong php.ini cho nó lẹ . |
|
Quản lý máy chủ, cài đặt, tư vấn, thiết kế, bảo mật hệ thống máy chủ dùng *nix
http://chamsocmaychu.com |
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 05:38:01 (+0700) | #10 | 120519 |
|
ThíchHắcKinh
Member
|
0 |
|
|
Joined: 05/11/2007 21:56:23
Messages: 85
Location: Thiếu Lâm Tự
Offline
|
|
gamma95 wrote:
chả có cao kiến gì, chỉ thấy nó sơ sài nên góp ý !
Thế nào mới gọi là cao kiến vậy chị Gammar95 |
|
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 06:17:12 (+0700) | #11 | 120528 |
|
canh_nguyen
Elite Member
|
0 |
|
|
Joined: 23/08/2004 18:55:09
Messages: 775
Location: Broken dream
Offline
|
|
hangsachtay wrote:
Hình như bạn chưa đọc kỹ, tôi có nêu rõ phương thức của nó là kiểm tra dữ liệu đầu vào, đây là chỉ một trong những cách để phòng chống SQL injection đơn giản thôi chứ không phải toàn diện.
Cảm ơn ý kiến đóng góp của bạn.
Ở đây mới chỉ kiểm tra được dữ liệu bằng $_SERVER['QUERY_STRING'] tức là chỉ kiểm tra được dữ liệu truyền trên url . Vậy trường hợp dữ liệu được đưa vào là POST thì cái trên vô hiệu . Ý bác gamma là vậy phải không? |
|
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 10:10:34 (+0700) | #12 | 120544 |
|
xnohat
Moderator
|
Joined: 30/01/2005 13:59:19
Messages: 1210
Location: /dev/null
Offline
|
|
gamma95 wrote:
@hàng sách tay+ xnohat: Bộ SQL injection chỉ xảy ra trên $_GET thôi hay sao mà thấy các bạn chỉ validate trên $_SERVER['QUERY_STRING']
Thì cậu ấy mới bắt đầu trên cái Query Strings thì chúng ta cứ bàn trên cái đó đã vì mới đó ta đã thấy cái sơ sót của phương pháp này, nó quả thật là "hiệu quả đơn giản". |
|
iJust clear, "What I need to do and how to do it"/i
br
brBox tán gẫu dời về: http://www.facebook.com/hvaonline |
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 12:25:42 (+0700) | #13 | 120565 |
|
ThíchHắcKinh
Member
|
0 |
|
|
Joined: 05/11/2007 21:56:23
Messages: 85
Location: Thiếu Lâm Tự
Offline
|
|
Các bác cứ làm khó người ta hoài... Get hay Pót gì không cần biết .. miễn là khi truy vấn vào database thì nó sẽ có câu truy vấn ... và câu truy vấn này qua cái bộ lọc ở trên.. Lọc ngay các "từ khóa" có tính chất nhạy cảm ..Thế thôi .. Quá đơn giản và hiệu quả ..Vậy mà các bác cứ đè nhau ra mà cãi |
|
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
22/03/2008 13:20:17 (+0700) | #14 | 120579 |
ngonchan
Elite Member
|
0 |
|
|
Joined: 23/02/2004 12:03:51
Messages: 136
Offline
|
|
ThíchHắcKinh wrote:
Các bác cứ làm khó người ta hoài... Get hay Pót gì không cần biết .. miễn là khi truy vấn vào database thì nó sẽ có câu truy vấn ... và câu truy vấn này qua cái bộ lọc ở trên.. Lọc ngay các "từ khóa" có tính chất nhạy cảm ..Thế thôi .. Quá đơn giản và hiệu quả ..Vậy mà các bác cứ đè nhau ra mà cãi
không phải là cãi, mà nói để góp ý mà phát triển mừ. g95 nói vậy không lẽ chủ topic không rút ra được cái gì hay sao nà? |
|
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
09/05/2009 23:28:46 (+0700) | #15 | 180069 |
|
nguago
Member
|
0 |
|
|
Joined: 19/08/2006 12:04:16
Messages: 43
Location: 127.0.0.1
Offline
|
|
Xin hỏi nếu hacker nhập chữ hoa thì sao ? Làm sao để cấm cả chữ hoa mà ko phải nhập cả chữ hoa vào danh sách?
E thấy cái code này khá hữu hiệu, e cứ đưa cái profix của các trường trong data vào danh sách cấm là yên tâm |
|
HVA No 1 !
http://let.vn |
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
10/05/2009 07:54:11 (+0700) | #16 | 180105 |
|
gamma95
Researcher
|
Joined: 20/05/2003 07:15:41
Messages: 1377
Location: aaa">
Offline
|
|
Mấy giờ rồi còn SQL injection ??? |
|
Cánh chym không mỏi
lol |
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
10/05/2009 09:47:40 (+0700) | #17 | 180115 |
nhoccon.dakmil
Member
|
0 |
|
|
Joined: 24/07/2008 11:32:25
Messages: 2
Offline
|
|
Cái này đúng là không toàn diện vì bypass dc hết mà |
|
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
01/07/2009 09:33:51 (+0700) | #18 | 185093 |
summerlant
Member
|
0 |
|
|
Joined: 06/11/2004 21:26:36
Messages: 9
Offline
|
|
nhoccon.dakmil wrote:
Cái này đúng là không toàn diện vì bypass dc hết mà
Bạn có thể vui lòng nói rõ hơn về cách bypass cái bộ lọc này được không?
Cảm ơn trước! |
|
|
|
|
[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
01/07/2009 10:17:44 (+0700) | #19 | 185097 |
thanhsara
Member
|
0 |
|
|
Joined: 10/04/2007 23:14:38
Messages: 5
Offline
|
|
cái này là chỉ dùng đơn giản thôi, pro nào có cao kiến hơn thì tiếp tục nhé |
|
|
|
|
[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
01/07/2009 13:20:27 (+0700) | #20 | 185105 |
|
phanthecong
Member
|
0 |
|
|
Joined: 19/11/2008 20:02:46
Messages: 12
Location: Đồng Nai
Offline
|
|
làm chi mà nhiều thế! chỉ cần kiểm tra biến text hay interger, long, datetime là ok
dài dòng |
|
|
|
|
[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
04/07/2009 19:26:52 (+0700) | #21 | 185354 |
olalavui
Member
|
0 |
|
|
Joined: 03/07/2009 23:08:29
Messages: 4
Offline
|
|
Để test trước đã.
Thank anh đã chia sẻ |
|
|
|
|
[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
15/07/2009 04:21:49 (+0700) | #22 | 186285 |
|
xichjum
Member
|
0 |
|
|
Joined: 14/07/2009 11:02:58
Messages: 9
Offline
|
|
mình sợ file đó chi đánh lừa được thôi nhà ảo thuật vẫn là hacker mà! |
|
|
|
|
[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
17/07/2009 08:25:29 (+0700) | #23 | 186549 |
lyhuuloi
Elite Member
|
0 |
|
|
Joined: 04/04/2003 11:29:17
Messages: 90
Location: TP HCM
Offline
|
|
Hề hề Query Strings được truyền tới server đôi khi cần các từ trên thì sao bạn smilie vd:username của tui tui đặt là UNION TEAM hay admin_chinh admin_phu thì bạn lock hết sao ? nhất là khi query string chứa một bài post cho một bài viết trên forum chẳng hạn thì đôi khi đầy các từ trên ( HVA thì khỏi nói, liên tục hén smilie )
Cho xin ý kiến nhe bạn.
Thân,
Mình đọc từ trên xuống dưới thì rõ ràng thấy nhận định của xnohat là hợp lý, vì nếu chặn tất tần tật một cách vô thức như vậy thì cái này thì không phải là cách tối ưu trong hầu hết trường hợp.
Đó và việc bảo mật của webmaster, các webmaster thường không có user đăng ký các tên nhạy cảm như vậy.
Bạn hãy thử dùng công cụ search trên HVA để tìm từ khóa "UNION" xem có được phép không ?
Để có được sự bảo mật đôi khi người ta sẽ gặp phải những hạn chế đi kèm, không có một công cụ bảo mật nào được gọi là hoàn hảo cả, cái gì cũng có 2 mặt của nó bạn à
Cảm ơn bạn vì những ý kiến đóng góp !
Đó là chính sách bảo mật ở một số website, như HVA thường xuyên gánh chịu lượng request thì đó là một yêu cầu tối thiểu để chặn việc phá hoại Nói như bạn có nghĩa là mình không thể dùng Tool của bạn để áp dụng cho một website nói về Hacking à ? Vì khi làm một website nói về Hacking thì mình lại phải gõ đi gõ lại khá nhiều từ mà bạn đã chặn đấy kaka
Về cơ bản, trong PHP, khi dùng $_REQUEST là nó-đã-bao-gồm-$_GET-và-$_POST, do đó nếu hangxachtay chặn từ $_REQUEST là khá ổn về mặt xử lý dữ liệu đầu vào, chứ dùng mỗi $_GET thì không ăn thua, nếu không muốn nói là quá AMATEUR !
|
|
http://lyhuuloi.com |
|
|
|
[Question] Re: Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
24/07/2009 21:25:40 (+0700) | #24 | 187409 |
|
talama3000
Member
|
0 |
|
|
Joined: 07/05/2008 23:31:08
Messages: 29
Offline
|
|
gamma95 wrote:
Mấy giờ rồi còn SQL injection ???
thế mấy giờ mới hết sql hả anh ?
nó không bao giờ là hết giờ cả rất nhiều site nổi tiếng vẫn bị dính sql đó ?
|
|
Blog == http://talama.vn |
|
|
|
[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
07/01/2011 15:55:52 (+0700) | #25 | 228945 |
luandoson
Member
|
0 |
|
|
Joined: 30/06/2009 12:05:12
Messages: 3
Offline
|
|
Tiện đây cho mình hỏi , như các bạn đã đề cập tới $_SERVER['QUERY_STRING'] quản lý biến GET vậy hàm nào sẽ quản lý biến POST trên server?. |
|
Tự tin mà sống |
|
|
|
[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
06/05/2012 07:26:19 (+0700) | #26 | 262539 |
|
chiro8x
Member
|
0 |
|
|
Joined: 26/09/2010 00:38:37
Messages: 661
Location: /home/chiro8x
Offline
|
|
Cái giả pháp bạn đưa ra đơn giản thì thấy rồi, nhưng hiệu quả thì không. Có 3 đường có thể tiến hành SQL injection như sau (theo ngu ý của tớ, còn mấy héch cơ biết thêm tớ cũng chịu).
GET
POST
COOKIE
Với GET method bạn có thể xử lí theo cái ở trên vì nó được truyền giá trị vào $_SERVER['QUERY_STRING'];. Cách làm này của bạn sẽ chặn các truy vấn chứa từ bạn không mong muốn, và những truy vấn hợp lệ nếu chứa từ không mong muốn.
Với POST method bạn không làm gì ngoài việc đứng nhìn, và cho dù người dùng có POST nội dung.
Code:
union select 1 from information_schema.tables--
Với việc người dùng sử dụng chỉnh sửa COOKIE để tiến hành SQL injection.
Với phương án bạn đưa ra không hiệu quả và khả thi như mong đợi.
thichhachkinh wrote:
Các bác cứ làm khó người ta hoài... Get hay Pót gì không cần biết .. miễn là khi truy vấn vào database thì nó sẽ có câu truy vấn ... và câu truy vấn này qua cái bộ lọc ở trên.. Lọc ngay các "từ khóa" có tính chất nhạy cảm ..Thế thôi .. Quá đơn giản và hiệu quả ..Vậy mà các bác cứ đè nhau ra mà cãi
Đọc cái source PHP còn không hiểu mô tê gì thế mà gió lữa vẫn ầm ầm thế này.
nguago wrote:
Xin hỏi nếu hacker nhập chữ hoa thì sao ? Làm sao để cấm cả chữ hoa mà ko phải nhập cả chữ hoa vào danh sách?
E thấy cái code này khá hữu hiệu, e cứ đưa cái profix của các trường trong data vào danh sách cấm là yên tâm
SQL sử dụng chử hoa bao giờ, Trung Cheng chiếm được Washington rồi à.
gamma95 wrote:
Mấy giờ rồi còn SQL injection ???
Bồ giỏi thì giải thích cho người không biết hiểu, chứ nói trống không thế tạo cơ hội cho mấy bạn trẻ trâu cãi chày cãi cối thôi.
P/S: em không có ý đào mộ đâu, hôm nay viết lại cái framework vào đọc lại mấy bài liên quan thấy bức xúc. |
|
while(1){} |
|
|
|
[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
06/05/2012 09:18:05 (+0700) | #27 | 262542 |
acenux
Member
|
0 |
|
|
Joined: 26/02/2012 19:52:32
Messages: 12
Offline
|
|
chiro8x wrote:
nguago wrote:
Xin hỏi nếu hacker nhập chữ hoa thì sao ? Làm sao để cấm cả chữ hoa mà ko phải nhập cả chữ hoa vào danh sách?
E thấy cái code này khá hữu hiệu, e cứ đưa cái profix của các trường trong data vào danh sách cấm là yên tâm
SQL sử dụng chử hoa bao giờ, Trung Cheng chiếm được Washington rồi à.
Ý của nguago là chữ in hoa chứ không phải chữ Hoa (Trung Quốc). Với cách phòng chống của chủ topic thì chỉ với chữ viết thường còn in hoa thì phải bổ sung thêm, ngoài ra nếu attacker dùng vừa hoa vừa thường nữa thì càng rắc rối hơn , vd : /**/uniOn/**/sELeCt
Bài viết cũng đã khà cũ rồi, hiện tại thì cách phòng chống SQL Injection khi dùng PHP và MySQL còn có mysql_real_escape_string, addslashes để lọc câu truy vấn. |
|
|
|
|
[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
06/05/2012 09:24:49 (+0700) | #28 | 262545 |
|
chiro8x
Member
|
0 |
|
|
Joined: 26/09/2010 00:38:37
Messages: 661
Location: /home/chiro8x
Offline
|
|
strtolower(); để làm gì ? chẳng biết rối hơn chổ nào nữa. |
|
while(1){} |
|
[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
06/05/2012 09:51:55 (+0700) | #29 | 262550 |
acenux
Member
|
0 |
|
|
Joined: 26/02/2012 19:52:32
Messages: 12
Offline
|
|
Uhm, đúng là quên mất vụ strtolower(), vậy giờ hoa thường đều lọc được rồi |
|
|
[Question] Phòng chống SQL Injection bằng PHP, hiệu quả đơn giản |
07/05/2012 13:52:48 (+0700) | #30 | 262647 |
|
WinDak
Researcher
|
Joined: 27/01/2002 11:15:00
Messages: 223
Offline
|
|
Nhìn vào "blacklist" này dễ thấy ngay 1 cách bypass để chèn các truy vấn sql. Xin hỏi anh em nào nhìn thấy không ? |
|
-- w~ -- |
|
Users currently in here |
1 Anonymous
|
|
Powered by JForum - Extended by HVAOnline
hvaonline.net | hvaforum.net | hvazone.net | hvanews.net | vnhacker.org
1999 - 2013 ©
v2012|0504|218|
|
|