แอบเข้าไปดูคอมคนอื่นด้วย CyberGate [Eng TUT]

Setting Up No-IP

1. Go to http://www.No-ip.com

2. Create an account, confirm your account through your email, then log in. Click Add Host.

3.
 Now name your host whatever you want. For example I will name my host gtech.servegame.com. Just follow these settings and press Create Host.


[Image: 39511235.jpg]

4. Now go here - https://www.no-ip.com/downloads.php and download No-IP's Dynamic DNS Update Client if you haven't already.

5. Once downloaded, install it. Then open it up and put in your account email and password.

6. Click Select Hosts - Click the box to check mark your host - Then press Save.

It should look something like this:

[Image: 86411160.jpg]

7. Click the X in the top right corner to minimize No-IP to your taskbar.

You are now finished setting up No-IP!

2. Setting Up CyberGate

1. Download CyberGate and open it. You can download CyberGate from their official website here -http://www.multiupload.com/3TLCUV4FZD

2. Now click Control Center - Start and do the following:

[Image: 32695328.jpg]

You are now done with setting up CyberGate!

3. Building Your CyberGate Server


1. Click Control Center - Builder - Create Server. Make a user named Hacker and press Ok.

[Image: 79780787.jpg]

2. Mark the user "Hacker" And press Forward.

3. Press 127.0.0.1 | Port 999 and press Delete:

[Image: 61496758.jpg]

4. After that, Click Add.

5. A Box should pop up saying: 127.0.0.1:81. Remove everything and change it with the No-ip address host you added. So let's say you used example.servegame.com. Change 127.0.0.1:81 to example.servegame.com:82. So it should look like this:

[Image: 41406747.jpg]

6. Now Change the
Identification: remote
Password: cybergate

To This:
Identification: Cyber
Password: 123456

7. Go to the next tab "Installation" and use the exact same settings as i do:

[Image: 55462047.jpg]

8. Now Skip the Message, Keylogger, and Anti Debug tabs, since these are already set up right for us.

9. In the Create Server tab use the exact same settings checked as I do.

Except Google Chrome Passwords is optional. It steals Google Chrome Passwords. If you would like to have it checked like I do, go tohttp://000webhost.com and create a free account. Verify your email then wait around 2 minutes for your status to change to Active. Then click go to CPanel. Scroll down and click File Manager. Then go in public html. Click upload and upload sqlite3.dll (it is located in the same folder cybergate is located on your computer). Then once you check Google Chrome Passwords on Cybergate it will ask for a link, put in http://username.comeze.com/sqlite3.dll

[Image: 15091112.jpg]

10. Press Create Server and save the settings.

You are now done creating you server!

4. Forwarding Your Ports, If You Have Not Done So

Your now going to have to forward port 82 on your router if you have not done so, this is how:

1. Click Start on your computer and click Run. If you have Vista and I think Windows 7, you need to search Run in the search bar in the start menu, then click Run.

2. Type cmd and hit enter.

3. type ipconfig and press enter.

4. You should see something like this, write down or remember these last digits that I selected in the picture below:

[Image: newa.jpg]

5. Now go to http://www.portforward.com

6. Scroll down and select your router.

7. Scroll down and you should see a bunch of programs, click "1st SMTP Server"

8. You should see at the top telling you to enter your static IP

[Image: newzi.jpg]

9. Type in the digits I had you remember in step 4. My digits were 114 so I entered that.

10. Now just follow the tutorial, but when it says forward port 25, forward port 82 instead.

11. Once you are done, go to http://www.canyouseeme.org

12. Type in 82 in the box next to "What Port?" and click check.

13. If you got "Error: I could not see your service on IP ADDRESS HERE on port (82) Reason: Connection refused" Make sure your firewall is off and try again.

14. You should get "Success: I can see your service on ADDRESS HERE on port (82) Your ISP is not blocking port 82"

Port 82 should now be open!

You are now done with everything, have fun using CyberGate!

Credits go to "Gtech" at HackForums.Net
Read more

Port และ Service การทำงาน

Port และ Service การทำงาน

0/tcp Reserved 
0/udp Reserved 
1/tcp TCP Port Service Multiplexer 
2/tcp Management Utility 
3/tcp Compression Process 
5/tcp Remote Job Entry 
7/tcp Echo 
7/udp Echo 
9/tcp Discard 
9/udp Discard 
11/tcp Active Users 
11/udp Active Users 
13/tcp Daytime 
13/udp Daytime 
17/tcp Quote of the Day 
17/udp Quote of the Day 
18/tcp RWP rwrite 
18/udp RWP rwrite 
18/tcp Message Send Protocol 
18/udp Message Send Protocol 
19/tcp Character Generator 
19/udp Character Generator 
20/tcp File Transfer [Default Data] 
21/tcp File Transfer [Control] 
23/tcp Telnet 
24/tcp any private mail system 
24/udp any private mail system 
25/tcp Simple Mail Transfer 
27/tcp NSW User System FE 
27/udp NSW User System FE 
29/tcp MSG ICP 
29/udp MSG ICP 
31/tcp MSG Authentication 
31/udp MSG Authentication 
33/tcp Display Support Protocol 
33/udp Display Support Protocol 
35/tcp any private printer server 
35/udp any private printer server 
37/tcp Time 
37/udp Time 
38/tcp Route Access Protocol 
38/udp Route Access Protocol 
39/udp Resource Location Protocol 
41/tcp Graphics 
41/udp Graphics 
42/udp Host Name Server 
43/tcp Who Is 
44/tcp MPM FLAGS Protocol 
45/tcp Message Processing Module [recv] 
46/tcp MPM [default send] 
47/tcp NI FTP 
47/udp NI FTP 
48/tcp Digital Audit Daemon 
48/udp Digital Audit Daemon 
49/tcp Login Host Protocol 
50/tcp Remote Mail Checking Protocol 
50/udp Remote Mail Checking Protocol 
51/udp IMP Logical Address Maintenance 
52/tcp XNS Time Protocol 
52/udp XNS Time Protocol 
53/tcp Domain Name Server 
53/udp Domain Name Server 
54/tcp XNS Clearinghouse 
54/udp XNS Clearinghouse 
55/tcp ISI Graphics Language 
55/udp ISI Graphics Language 
56/tcp XNS Authentication 
56/udp XNS Authentication 
57/tcp any private terminal access 
57/udp any private terminal access 
58/tcp XNS Mail 
58/udp XNS Mail 
59/tcp any private file service 
59/udp any private file service 
60/tcp Unassigned 
60/udp Unassigned 
61/tcp NI MAIL 
61/udp NI MAIL 
62/tcp ACA Services 
64/tcp Communications Integrator (CI) 
65/tcp TACACS-Database Service 
66/tcp Oracle SQL*NET 
67/udp Bootstrap Protocol Server 
68/udp Bootstrap Protocol Client 
69/udp Trivial File Transfer 
70/tcp Gopher 
71/tcp Remote Job Service 
71/udp Remote Job Service 
72/tcp Remote Job Service 
72/udp Remote Job Service 
73/tcp Remote Job Service 
73/udp Remote Job Service 
74/tcp Remote Job Service 
74/udp Remote Job Service 
75/tcp any private dial out service 
75/udp any private dial out service 
76/tcp Distributed External Object Store 
76/udp Distributed External Object Store 
77/tcp any private RJE service 
77/udp any private RJE service 
78/tcp vettcp 
78/udp vettcp 
79/tcp Finger 
80/tcp World Wide Web HTTP 
80/tcp World Wide Web HTTP 
81/tcp HOSTS2 Name Server 
81/udp HOSTS2 Name Server 
82/tcp XFER Utility 
82/udp XFER Utility 
83/tcp MIT ML Device 
83/udp MIT ML Device 
84/tcp Common Trace Facility 
84/udp Common Trace Facility 
85/tcp MIT ML Device 
85/udp MIT ML Device 
86/tcp Micro Focus Cobol 
87/tcp any private terminal link 
87/udp any private terminal link 
88/tcp Kerberos 
89/tcp SU/MIT Telnet Gateway 
90/tcp DNSIX Securit Attribute Token Map 
91/tcp MIT Dover Spooler 
92/tcp Network Printing Protocol 
92/udp Network Printing Protocol 
93/tcp Device Control Protocol 
93/udp Device Control Protocol 
94/tcp Tivoli Object Dispatcher 
94/udp Tivoli Object Dispatcher 
95/tcp SUPDUP 
95/udp SUPDUP 
96/tcp DIXIE Protocol Specification 
97/tcp Swift Remote Virtural File Protocol 
97/udp Swift Remote Virtural File Protocol 
98/tcp TAC News 
98/udp TAC News 
99/tcp Metagram Relay 
99/udp Metagram Relay 
100/tcp [unauthorized use] 
101/tcp NIC Host Name Server 
101/udp NIC Host Name Server 
102/tcp ISO-TSAP Class 0 
102/udp ISO-TSAP Class 0 
103/tcp Genesis Point-to-Point Trans Net 
103/udp Genesis Point-to-Point Trans Net 
104/tcp ACR-NEMA Digital Imag. & Comm. 300 
105/tcp Mailbox Name Nameserver 
105/udp Mailbox Name Nameserver 
106/tcp 3COM-TSMUX 
106/udp 3COM-TSMUX 
106/tcp Password Server 
107/tcp Remote Telnet Service 
108/tcp SNA Gateway Access Server 
109/tcp Post Office Protocol - Version 2 
110/tcp Post Office Protocol - Version 3 
111/tcp SUN Remote Procedure Call 
111/udp SUN Remote Procedure Call 
112/tcp McIDAS Data Transmission Protocol 
113/tcp Authentication Service 
114/tcp Audio News Multicast 
114/udp Audio News Multicast 
115/tcp Simple File Transfer Protocol 
115/udp Simple File Transfer Protocol 
116/tcp ANSA REX Notify 
116/udp ANSA REX Notify 
117/tcp UUCP Path Service 
118/tcp SQL Services 
118/udp SQL Services 
119/tcp Network News Transfer Protocol 
120/tcp CFDPTKT 
120/udp CFDPTKT 
121/tcp Encore Expedited Remote Pro.Call 
121/udp Encore Expedited Remote Pro.Call 
122/tcp SMAKYNET 
122/udp SMAKYNET 
123/tcp Network Time Protocol 
123/udp Network Time Protocol 
124/tcp ANSA REX Trader 
124/udp ANSA REX Trader 
125/tcp Locus PC-Interface Net Map Ser 
126/tcp Unisys Unitary Login 
126/udp Unisys Unitary Login 
127/tcp Locus PC-Interface Conn Server 
128/tcp GSS X License Verification 
128/udp GSS X License Verification 
129/tcp Password Generator Protocol 
129/udp Password Generator Protocol 
130/tcp cisco FNATIVE 
130/udp cisco FNATIVE 
131/tcp cisco TNATIVE 
131/udp cisco TNATIVE 
cisco-sys 132/tcp cisco SYSMAINT 
cisco-sys 132/udp cisco SYSMAINT 
133/tcp Statistics Service 
133/udp Statistics Service 

เครดิต http://smf.ruk-com.in.th
Read more

แฮกพาสเวิร์ด msn,facebook,hotmail คอมแฟนด้วย Javascript

แฮกรหัสผ่าน,password ที่เป็นดอกจัน


วันนี้จะมาสอนเกี่ยวกับการแฮกรหัสผ่านที่ถูกจดจำ เซฟไว้ในเครื่อง
รหัสผ่านเหล่านี้ มีความอันตรายอย่างไร ถ้าถูกเซฟและบันทึกไว้ในเครื่อง

ก่อนอื่นรหัสผ่านที่ถูกจดจำ บันทึกไว้คืออะไร หลายคนคงเคยเจอ popup เด้่งขึ้นมาดังรูปด้านล่าง


ตรงรูปกุญแจด้านซ้่ายถ้าเรากดจำ รหัสผ่านและ Email จะถูกบันทึกไว้ในเครื่องแล้วหละครับ
ทีนี้ถ้าคนอื่นเข้ามาเปิดหน้าเว็บที่มีการจำรหัสผ่านไว้ในคอมเครื่องนั้นแล้ว
ก็จะเจอกับรหัสผ่าน ที่เป็น ดอกจัน เราจะมาดูกันครับว่าสามารถเรียกดูรหัสผ่านเหล่านี้ได้ยังไง

ของผมใช้ google chrome นะครับคลิกขวาที่ฟอร์ม ดังรูปแล้วกดตรวจสอบองค์ประกอบ


สังเกตุในช่อง name="pass"
นี่คือชื่อของฟอร์มพาสเวิร์ดที่มีรหัสในรูปแบบดอกจัน ที่เราจะมาเรียกดูกัน

ให้เรานำ Javascript ด้านล่างไปใส่บน url ครับ
javascript:alert(document.getElementById("pass").value);

ก็จะเด้ง popup แสดงพาสเวิร์ดที่เป็นดอกจันทร์ออกมาทันใด
ขอจบ บทความไว้เท่านี้นะครับ

บทความโดน Ak  www.basic-hack.blogspot.com 
คัดลอกบทความกรุณาให้เครดิตครับ
Read more

เรียนรู้วิธีการเจาะระบบ Web Application Hacking ทั้ง10 วิธี ของแฮกเกอร์

วันนี้ คงไม่มีบริษัทใดที่ไม่มี Website เป็นของตัวเอง บางบริษัทอาจจะเช่า Web Hosting อยู่ หรือ บางบริษัทอาจมี Web Site เป็นของตนเองอยู่ในระบบเครือข่ายของบริษัท โดยมีการต่อเชื่อมเครือข่ายของบริษัทด้วย Frame Relay, ADSL หรือ Leased Line เข้ากับระบบเครือข่ายของ ISP ซึ่งส่วนใหญ่ก็จะมีการจัดซื้อ Firewall มาใช้ป้องกันระบบเครือข่ายภายในของบริษัท กับ ระบบอินเทอร์เน็ตจาก ISP และ มีการเปิดให้คนภายนอกสามารถเข้ามาเยี่ยมชม Web Site ได้ โดยเปิด Port TCP 80 (http) และ Port TCP 443 (https) ในกรณีที่ใช้โปรโตคอล SSL ในการเข้ารหัสข้อมูลเพื่อเพิ่มความปลอดภัยมากยิ่งขึ้น

ปัญหาก็คือ ในเมื่อทุกบริษัทต้องเปิดทางให้มีการเข้าชม Web Site ทั้งแบบ Plain text traffic (Port 80) และแบบ Encrypted text traffic (port 443) ทำให้แฮกเกอร์สามารถจู่โจม Web Site ของเราโดยไม่ต้องเจาะผ่าน Firewall เนื่องจากเป็น Port ที่ Firewall มีความจำเป็นต้องเปิดใช้อยู่แล้ว

ในโลกของ E-Commerce มีอัตราการใช้งาน Web Server ที่เพิ่มขึ้นทุกวัน (ดูข้อมูลจากwww.netcraft.com) และ จากข้อมูลของ UNCTAD (http://www.unctad.org link) พบว่า Web Server ทั่วโลก มีทั้งแบบที่เข้ารหัสด้วย SSL แล้ว และ แบบไม่เข้ารหัสด้วย SSL ก็ยังคงมีใช้กันอยู่

ใน เมื่อแฮกเกอร์มองเห็นช่องที่เรามีความจำเป็นต้องเปิดใช้งานผ่านทาง Web Server และ Web Application แฮกเกอร์ในปัจจุบันจึงใช้วิธีที่เรียกว่า ?Web Application Hacking? ในการเจาะเข้าสู่ระบบขององค์กรต่างๆ ทั่วโลก ขณะนี้มีการจู่โจมระบบโดยกลุ่มแฮกเกอร์ที่ต้องการทำสถิติ ในการเจาะ Web Site ดูรายละเอียดได้ที่ http://www.zone-h.org link ดังนั้น ผู้ที่มี Web Site อยู่ และ โดยเฉพาะผู้ที่ต้องการหันมาทำธุรกิจในลักษณะของ E-commerce ซึ่งต้องมี Web Site ที่ใช้ Web server ที่เชื่อถือได้ และมีการเขียน Web application โดยคำนึงถึงเรื่อง ?Security? เป็นหลัก จึงมีความจำเป็นอย่างยิ่งที่ต้องเรียนรู้ช่องโหว่ (Vulnerability) ของ Web application ที่แฮกเกอร์ชอบใช้ในการเจาะระบบ Web application ของเราซึ่งรวบรวมได้ทั้งหมด 10 วิธีด้วยกัน (Top 10 Web Application Hacking)

ตลอดจนเรียนรู้วิธีการป้องกันที่ถูกต้อง เพื่อที่จะไม่ให้ตกเป็นเหยื่อของเหล่าแฮกเกอร์ที่จ้องคอยเจาะระบบเราอยู่ ผ่านทาง Web Site ที่ยังไงเราก็ต้องเปิดให้เข้าถึง และ ยังมี Virus Worm ตัวใหม่ๆ ที่เขียนขึ้นเพื่อจู่โจม Port 80 (HTTP)และ Port 443 (SSL) โดยเฉพาะอีกด้วย รายละเอียดของ Top 10 Web Application Hacking มี 10 วิธี ดังนี้

1. Unvalidated Input

หมายถึง การที่ข้อมูลจากฝั่ง client ที่ส่วนใหญ่แล้ว จะมาจาก Internet Explorer (IE) Browser ไม่ได้รับการตรวจสอบก่อนถูกส่งมาประมวลผลโดย Web Application ที่ทำงานอยู่บน Web Server ทำให้แฮกเกอร์สามารถดักแก้ไขข้อมูลในฝั่ง client

ก่อน ที่จะถูกส่งมายังฝั่ง server โดยใช้โปรแกรมที่สามารถดักข้อมูลได้ เช่น โปรแกรม Achilles เป็นต้น ดังนั้น ถ้าเรารับข้อมูลจากฝั่ง client โดยไม่ระมัดระวัง หรือ คิดว่าเป็นข้อมูลที่เราเป็นคนกำหนดเอง เช่น เทคนิคการใช้ Hidden Field หรือ Form Field ตลอดจนใช้ข้อมูลจาก Cookies เราอาจจะโดนแฮกเกอร์แก้ไขข้อมูลฝั่ง client ด้วย โปรแกรมดังกล่าวแล้วส่งกลับมาฝั่ง server ในรูปแบบที่แฮกเกอร์ต้องการ และมีผลกระทบกับการทำงานของ Web Application ในฝั่ง web server

วิธีการป้องกัน

เรา ควรจะตรวจสอบข้อมูลที่รับมาจากทั้ง 2 ฝั่ง คือ ข้อมูลที่รับมาจาก client ผ่านทาง Browser และข้อมูลที่รับมาประมวลผลที่ web server โดยตรวจสอบที่ web server อีกครั้งก่อนนำไปประมวลผลด้วย Web application เราควรมีการฝึกอบรม Web Programmer ของเราให้ระมัดระวังในการรับ input จากฝั่ง client ตลอดจนมีการ Review Source code ไม่ว่าจะเขียนด้วย ASP, PHP หรือ JSP Script ก่อนที่จะนำไปใช้งานในระบบจริง ถ้ามีงบประมาณด้านรักษาความปลอดภัย ก็แนะนำให้ใช้ application level firewall หรือ Host-Based IDS/IPS ที่สามารถมองเห็น Malicious content และป้องกันในระดับ application layer

2. Broken Access Control

หมาย ถึง มีการป้องกันระบบไม่ดีพอเกี่ยวกับการกำหนดสิทธิของผู้ใช้ (Permission) ที่สามารถจะ Log-in /Log-on เข้าระบบ Web application ได้ ซึ่งผลที่ตามมาก็คือ ผู้ที่ไม่มีสิทธิเข้าระบบ (Unauthorized User) สามารถเข้าถึงข้อมูลที่เราต้องการป้องกันไว้ไม่ให้ Unauthorized User เข้ามาดูได้ เช่น เข้ามาดูไฟล์ข้อมูลบัตรเครดิตลูกค้าที่เก็บอยู่ใน Web Server หรือ เข้าถึงไฟล์ข้อมูลในลักษณะ ฏDirectory Browsing โดยเห็นไฟล์ทั้งหมดที่อยู่ใน web Server ของเรา ปัญหานี้เกิดจากการกำหนด File Permission ไม่ดีพอ และ อาจเกิดจากปัญหาที่เรียกว่า ?Path Traversal? หมายถึง แฮกเกอร์จะลองสุ่มพิมพ์ path หรือ sub directory ลงไปในช่อง URL เช่น http://www.abc.com/../../customer.mdb link เป็นต้น นอกจากนี้อาจเกิดจากปัญหาการ cache ข้อมูลในฝั่ง client ทำให้ข้อมูลที่ค้างอยู่ cache ถูกแฮกเกอร์เรียกกลับมาดูใหม่ได้ โดยไม่ต้อง Log-in เข้าระบบก่อน

วิธีการป้องกัน

พยายามอย่าใช้ User ID ที่ง่ายเกินไป และ Default User ID ที่ง่ายต่อการเดา โดยเฉพาะ User ID ที่เป็นค่า default ควรลบทิ้งให้หมด สำหรับปัญหา Directory Browsing หรือ Path Traversal นั้น ควรมีการ set file system permission ให้รัดกุม เพื่อป้องกัน ช่องโหว่ที่อาจถูกโจมตี และ ปิด file permission ใน sub directory ต่างๆ ที่ไม่ได้ใช้ และ ไม่มีความจำเป็นต้องให้คนภายนอกเข้า เพื่อป้องกันแฮกเกอร์สุ่มพิมพ์ path เข้ามาดึงข้อมูลได้ และควรมีการตรวจสอบ Web Server log file และ IDS/IPS log file เป็นระยะๆ ว่ามี Intrusion หรือ Error แปลกๆ หรือไม่

3. Broken Authentication and Session Management

หมาย ถึง ระบบ Authentication ที่เราใช้อยู่ในการเข้าถึง Web Application ของเรานั้นไม่แข็งแกร่งเพียงพอ เช่น การตั้ง Password ง่ายเกินไป, มีการเก็บ Password ไว้ในฝั่ง Client โดยเก็บเป็นไฟล์ Cookie ที่เข้ารหัสแบบไม่ซับซ้อนทำให้แฮกเกอร์เดาได้ง่าย หรือใช้ชื่อ User ที่ง่ายเกินไป เช่น User Admin เป็นต้น บางทีก็ใช้ Path ที่ง่ายต่อการเดาได้ เช่น www.abc.com/admin link หมายถึง การเข้าถึงหน้า admin ของระบบ แฮกเกอร์สามารถใช้โปรแกรมประเภท Dictionary Attack หรือ Brute Force Attack ในการลองเดาสุ่ม Password ของระบบ Web Application ของเรา ตลอดจนใช้โปรแกรมประเภท Password Sniffer ดักจับ Password ที่อยู่ในรูปแบบ Plain Text หรือ บางทีแฮกเกอร์ก็ใช้วิธีง่ายๆ ในการขโมย Password เรา โดยแกล้งปลอมตัวเป็นเรา แล้วแกล้งลืม Password (Forgot Password) ระบบก็จะถามคำถามกลับมา ซึ่งถ้าคำถามนั้นง่ายเกินไป แฮกเกอร์ก็จะเดาคำตอบได้ไม่ยากนัก ทำให้แฮกเกอร์ได้ Password เราไปในที่สุด

วิธีการป้องกัน

ที่ สำคัญที่สุด คือการตั้งชื่อ User Name และ Password ควรจะมีความซับซ้อน ไม่สามารถเดาได้ง่าย มีความยาวไม่ต่ำกว่า 8 ตัวอักษร และมีข้อกำหนดในการใช้ Password (Password Policy) ว่าควรมีการเปลี่ยน Password เป็นระยะๆ ตลอดจนให้มีการกำหนด Account Lockout เช่น ถ้า Logon ผิดเกิน 3 ครั้ง ก็ให้ Lock Account นั้นไปเลยเป็นต้น การเก็บ Password ไว้ในฝั่ง Client นั้น ค่อนข้างที่จะอันตราย ถ้ามีความจำเป็นต้องเก็บในฝั่ง Client จริงๆ ก็ควรมีการเข้ารหัสที่ซับซ้อน (Hashed or Encrypted) ไม่สามารถถอดได้ง่ายๆ การ Login เข้าระบบควรผ่านทาง https protocol คือ มีการใช้ SSL เข้ามาร่วมด้วย เพื่อเข้ารหัส Username และ Password ให้ปลอดภัยจากพวกโปรแกรม Password Sniffing ถ้ามีงบประมาณควรใช้ Two-Factor Authentication เช่น ระบบ One Time Password ก็จะช่วยให้ปลอดภัยมากขึ้น การใช้ SSL ควรใช้ Digital Certificate ที่ได้รับการ Sign อย่างถูกต้องโดย CA (Certificate Authority) ถ้าเราใช้ CA แบบ Self Signed จะทำให้เกิดปัญหา Man in the Middle Attack (MIM) ทำให้แฮกเกอร์สามารถเจาะข้อมูลเราได้แม้ว่าเราจะใช้ SSL แล้วก็ตาม (ข้อมูลเพิ่มเติมที่เกี่ยวข้องกับ SSL Hacking ดูที่ http://www.acisonline.net link)

4. Cross Site Scripting (XSS) Flaws

หมาย ถึง แฮกเกอร์สามารถใช้ Web Application ของเรา เช่น ระบบ Web Board ในการฝัง Malicious Script แฝงไว้ใน Web Board แทนที่จะใส่ข้อมูลตามปกติ เมื่อมีคนเข้า Refresh หน้า Web Board ก็จะทำให้ Malicious Script ที่ฝังไว้นั้นทำงานโดยอัตโนมัติ ตามความต้องการของแฮกเกอร์ หรือ อีกวิธีหนึ่ง แฮกเกอร์จะส่ง e-mail ไปหลอกให้เป้าหมาย Click ไปที่ URL Link ที่แฮกเกอร์ได้เตรียมไว้ใน e-mail เมื่อเป้าหมาย Click ไปที่ Link นั้น ก็จะไปสั่ง Run Malicious Script ที่อยู่ในตำแหน่งที่แฮกเกอร์ทำดักรอไว้ วิธีการหลอกแบบนี้ในวงการเรียกว่า ?PHISHING? ซึ่งโดนกันไปแล้วหลายองค์กร เช่น Citibank, eBay เป็นต้น (ข้อมูลเพิ่มเติมดูได้ที่ http://www.acisonline.net link)

วิธีการป้องกัน

อย่าง แรกเลยต้องมีการให้ข้อมูลกับผู้ใช้คอมพิวเตอร์ทั่วไป ที่ใช้ e-mail และ web browser กันเป็นประจำให้ระมัดระวัง URL Link แปลกๆ หรือ e-mail แปลกๆ ที่เข้ามาในระบบก่อนจะ Click ควรจะดูให้รอบคอบก่อน เรียกว่า เป็นการทำ ?Security Awareness Training? ให้กับ User ซึ่งควรจะทำทุกปี ปีละ 2-3 ครั้ง เพื่อให้รู้ทันกลเม็ดของแฮกเกอร์ และไวรัสที่ชอบส่ง e-mail มาหลอกอยู่เป็นประจำ สำหรับในฝั่งของผู้ดูและระบบ เช่น Web Master ก็ควรจะแก้ไข source codeใน Web Board ของตนให้ฉลาดพอที่จะแยกแยะออกว่ากำลังรับข้อมูลปกติ หรือรับข้อมูลที่เป็น Malicious Script ซึ่งจะสังเกตได้ไม่ยาก เพราะ Script มักจะมีเครื่องหมาย ?< > ( ) # & ? ให้ Web Master ทำการ ?กรอง? เครื่องหมายเหล่านี้ก่อนที่จะนำข้อมูลไปประมวลผลโดย Web application ต่อไป

5. Buffer Overflow

หมาย ถึง ในฝั่งของ Client และ Server ไม่ว่าจะเป็น IE Browser และ IIS Web Server หรือ Netscape Browser และ Apache Web Server ที่เราใช้กันอยู่เป็นประจำ ล้วนมีช่องโหว่ (Vulnerability) หรือ Bug ที่อยู่ในโปรแกรม เมื่อแฮกเกอร์สามารถค้นพบ Bug ดังกล่าว แฮกเกอร์ก็จะฉวยโอกาสเขียนโปรแกรมเจาะระบบที่เราเรียกว่า ?Exploit? ในการเจาะผ่านช่องโหว่ที่ถูกค้นพบ ซึ่งช่วงหลังๆ แม้แต่ SSL Modules ทั้ง IIS และ Apache web server ก็ล้วนมีช่องโหว่ให้แฮกเกอร์เจาะผ่านทาง Buffer Overflow ทั้งสิ้น

วิธีการป้องกัน

จะเห็นว่าปัญหานี้มาจาก ผู้ผลิตไม่ใช่ปัญหาการเขียนโปรแกรม Web application ดังนั้นเราต้องคอยหมั่นติดตามข่าวสาร New Vulnerability และ คอยลง Patch ให้กับระบบของเราอย่างสม่ำเสมอ และลง ให้ทันท่วงทีก่อนที่จะมี exploit ใหม่ๆ ออกมาให้แฮกเกอร์ใช้การเจาะระบบของเรา สำหรับ Top 10 Web Application Hacking อีก 5 ข้อ ที่เหลือผมขอกล่าวดังในฉบับต่อไปนะครับ

6. Injection Flaws

หมาย ถึง แฮกเกอร์สามารถที่จะแทรก Malicious Code หรือ คำสั่งที่แฮกเกอร์ใช้ในการเจาะระบบส่งผ่าน Web Application ไปยังระบบภายนอกที่เราเชื่อมต่ออยู่ เช่น ระบบฐานข้อมูล SQL โดยวิธี SQL Injection หรือ เรียก External Program ผ่าน shell command ของระบบปฎิบัติการ เป็นต้น

ส่วนใหญ่แล้วแฮกเกอร์จะใช้วิธีนี้ในช่วง การทำ Authentication หรือการ Login เข้าระบบผ่านทาง Web Application เช่น Web Site บางแห่งชอบใช้ ?/admin? ในการเข้าสู่หน้า Admin ของ ระบบ ซึ่งเป็นช่องโหว่ให้แฮกเกอร์สามารถเดาได้เลยว่า เราใช้ http://www.mycompany.com/admin link ในการเข้าไปจัดการบริหาร Web Site ดังนั้นเราจึงควรเปลี่ยนเป็นคำอื่นที่ไม่ใช่ ?/admin? ก็จะช่วยได้มาก

วิธี การทำ SQL injection ก็คือ แฮกเกอร์จะใส่ชื่อ username อะไรก็ได้แต่ password สำหรับการทำ SQL injection จะใส่เป็น Logic Statement ยกตัวอย่างเช่น ? or ?1? = ?1 หรือ ? or ?1?= ?1

ถ้า Web Application ของเราไม่มีการเขียน Input Validation ดัก password แปลกๆ แบบนี้ แฮกเกอร์ก็สามารถที่จะ bypass ระบบ Authentication ของเราและ Login เข้าสู่ระบบเราโดยไม่ต้องรู้ username และ password ของเรามาก่อนเลย

วิธี การเจาะระบบด้วย SQL injection ยังมีอีกหลายแบบจากที่ยกตัวอย่างมา ซึ่งแฮกเกอร์รุ่นใหม่สามารถเรียนรู้ได้ทางอินเทอร์เน็ตและวิธีการทำก็ไม่ยาก อย่างที่ยกตัวอย่างมาแล้ว

วิธีการป้องกัน

นักพัฒนาระบบ (Web Application Developer) ควรจะระมัดระวัง input string ที่มาจากทางฝั่ง Client (Web Browser) และไม่ควรใช้วิธีติดต่อกับระบบภายนอกโดยไม่จำเป็น

ควร มีการ ?กรอง? ข้อมูลขาเข้าที่มาจาก Web Browser ผ่านมาทางผู้ใช้ Client อย่างละเอียด และ ทำการ ?กรอง? ข้อมูลที่มีลักษณะที่เป็น SQL injection statement ออกไปเสียก่อนที่จะส่งให้กับระบบฐานข้อมูล SQL ต่อไป

การ ใช้ Stored Procedure หรือ Trigger ก็เป็นทางออกหนึ่งในการเขียนโปรแกรมสั่งงานไปยังระบบฐานข้อมูล SQL ซึ่งมีความปลอดภัยมากกว่าการใช้ ?Dynamic SQL Statement ? กับฐานข้อมูล SQL ตรงๆ

7. Improper Error Handling

หมายถึง มีการจัดการกับ Error message ไม่ดีพอ เวลาที่มีผู้ใช้ Web Application หรืออาจจะเป็นแฮกเกอร์ลองพิมพ์ Bad HTTP Request เข้ามาแต่ Web Server หรือ Web Application ของเราไม่มีข้อมูล จึงแสดง Error message ออกมาทางหน้า Browser ซึ่งข้อมูลที่แสดงออกมาทำให้แฮกเกอร์สามารถใช้เป็นประโยชน์ ในการนำไปเดาเพื่อหาข้อมูลเพิ่มเติมจากระบบ Web Application ของเราได้ เนื่องจากเมื่อการทำงานของ Web application หลุดไปจากปกติ ระบบมักจะแสดงค่า Error Message ออกมาแสดงถึงชื่อ user ที่ใช้ในการเข้าถึงฐานข้อมูล, แสดง File System Path หรือ Sub Directory Name ที่ชี้ไปยังไฟล์ฐานข้อมูล ตลอดจนทำให้แฮกเกอร์รู้ว่าเราใช้ระบบอะไรเป็นฐานข้อมูลเช่น ใช้ MySQL เป็นต้น

วิธีการแก้ปัญหา

ควรมีการกำหนดนโย บายการจัดการกับ Error message ให้กับระบบ โดยทำหน้า Error message ที่เตรียมไว้รับเวลามี Bad HTTP Request แปลกๆ เข้ามายัง Web Application ของเราโดยหน้า Error message ที่ดีไม่ควรจะบอกให้ผู้ใช้รู้ถึงข้อมูลระบบบางอย่างที่ผู้ใช้ทั่วไปไม่ควร รู้ และถ้าผู้ใช้คนนั้นเป็นแฮกเกอร์ซึ่งย่อมมีความรู้มากกว่าผู้ใช้ธรรมดา การเห็นข้อมูล Error message ก็อาจนำไปใช้เป็นประโยชน์สำหรับแฮกเกอร์ได้

8. Insecure Storage

หมาย ถึง การเก็บรหัสผ่าน (password), เบอร์บัตรเครดิตลูกค้า หรือ ข้อมูลลับของลูกค้า ไว้อย่างไม่มีความปลอดภัยเพียงพอ ส่วนใหญ่จะเก็บแบบมีการเข้ารหัส (Encryption) ไว้ในฐานข้อมูลหรือ เก็บลงในไฟล์ที่อยู่ใน Web server และคิดว่าเมื่อเข้ารหัสแล้วแฮกเกอร์คงไม่สามารถอ่านออก แต่ สิ่งที่เราคิดนับว่าเป็นการประเมินแฮกเกอร์ต่ำเกินไป เนื่องจากอาจเกิดข้อผิดพลาดในการเข้ารหัส เช่น การเข้ารหัสนั้นใช้ Algorithm ที่อ่อนเกินไป ทำให้แฮกเกอร์แกะได้ง่ายๆ หรือมีการเก็บกุญแจ (key) หรือ รหัสลับ (Secret password) ไว้เป็นไฟล์แบบง่ายๆ ที่แฮกเกอร์ สามารถเข้าถึงได้ หรือ สามารถถอดรหัสได้โดยใช้เวลาไม่มากนัก

วิธีการแก้ไข

ควร มีการเข้ารหัสไฟล์ โดยใช้ Encryption Algorithm ที่ค่อนข้างซับซ้อนพอสมควร หรือแทนที่จะเก็บรหัสผ่านที่เข้ารหัสไว้ ให้หันมาเก็บค่า Message Digest หรือ ค่า ?HASH? ของรหัสผ่านทาง โดยใช้ Algorithm SHA-1 เป็นต้น

การ เก็บกุญแจ (key), ใบรับรอง ดิจิตัล (Digital Certificate) หรือ ลายมือชื่อดิจิตัล (Digital Signature) ควรเก็บไว้อย่างปลอดภัย เช่น เก็บไว้ใน Token หรือ Smart Card ก็จะปลอดภัยกว่าการเก็บไว้เป็นไฟล์ในฮาร์ดดิสค์ เป็นต้น (ถ้าเก็บเป็นไฟล์ก็ควรทำการเข้ารหัสไว้ทุกครั้ง)

9. Denial of Service

หมาย ถึงระบบ Web Application หรือ Web Server ของเรา อาจหยุดทำงานได้เมื่อเจอกับ Bad HTTP Request แปลกๆ หรือ มีการเรียกเข้ามาอย่างต่อเนื่องจำนวนมาก ทำให้เกิดการจราจรหนาแน่นบน Web Server ของเรา โดยปกติ Web Server จะจัดการกับ Concurrent session ได้จำนวนหนึ่ง ถ้ามี HTTP Request เข้ามาเกินค่าที่ Web Server จะสามารถรับได้ ก็จะเกิด Error ขึ้น ทำให้ผู้ใช้ไม่สามารถเข้า Web Site เราได้ นอกจากนี้ อาจจะทำให้เครื่องเกิด CPU Overload หรือ Out of Memory ก็เป็นรูปแบบหนึ่งของ Denial of Service เช่นกัน กล่าวโดยรวมก็คือ ทำให้ระบบของเรามีปัญหาเรื่อง ?Availability?

วิธีการแก้ไข

การ ป้องกัน DoS หรือ DDoS Attack นั้นไม่ง่าย และ ส่วนใหญ่ ไม่สามารถป้องกันได้ 100% การติดตั้ง Hardware IPS (Intrusion Prevention System) เป็นอีกทางเลือกหนึ่ง แต่ก็มีค่าใช้จ่ายค่อนข้างสูง หากต้องการประหยัดงบประมาณก็ควรต้อง ทำการ ?Hardening? ระบบให้เรียบร้อย เช่น Network OS ที่ใช้อยู่ก็ควรจะลง Patch อย่างสม่ำเสมอ, Web Server ก็เช่นเดียวกัน เพราะมีช่องโหว่ เกิดขึ้นเป็นประจำ ตลอดจนปรับแต่งค่า Parameter บางค่าของ Network OS เพื่อให้รองรับกับการโจมตีแบบ DoS /DDoS Attack

10. Insecure Configuration Management

หมายถึง เป็นปัญหาที่เกิดขึ้นจากผู้ดูแลระบบ หรือ ผู้ติดตั้ง Web Server มักจะติดตั้งในลักษณะ ?Default Configuration? ซึ่งยังคงมีช่องโหว่มากมาย หรือบางครั้งก็ไม่ได้ทำการ Update Patch ระบบให้ครบถ้วนจนถึง Patch ล่าสุด

ปัญหา ที่เจอบ่อยๆ ก็คือมีการกำหนดสิทธิในการเข้าถึงไฟล์ต่างๆ ใน Web Server ไม่ดีพอทำให้มีไฟล์หลุดออกมาให้ผู้ใช้เข้าถึงได้ เช่น แสดงออกมาในลักษณะ ?Directory Browsing? ตลอดจนค่า default ต่างๆ ไม่ว่าจะเป็น Default Username และ Default Password ก็มักจะถูกทิ้งไว้โดยไม่ได้เปลี่ยนอยู่เป็นประจำ

วิธีการแก้ปัญหา

ให้ ทำการแก้ไขค่า ?Default? ต่างๆ ทันทีที่ติดตั้งระบบเสร็จ และทำการ Patch ระบบให้จถึง Patch ล่าสุด และ ตาม Patch อย่างสม่ำเสมอ เรียกว่า ทำการ ?Hardening? ระบบนั่นเอง Services ใดที่ไม่ได้ใช้ก็ไม่ต้องเปิดบริการ เราควรตรวจสอบสิทธิ File and Subdirectory Permission ในระบบว่าตั้งไว้ถูกต้อง และ ปลอดภัยหรือไม่ ตลอดจนเปิดระบบ Web Server log file เพื่อที่จะได้สามารถตรวจสอบ (Audit) HTTP Request ที่ส่งมายัง Web Server ได้ โดยดูจาก Web Server log file ที่เราได้เปิดไว้ และ เราควรหมั่นติดตามข่าวสารเรื่องช่องโหว่ (Vulnerability) ใหม่ๆ อย่างสม่ำเสมอ และ มีการตรวจวิเคราะห์ Web Server log file, Network log file, Firewal log file และ IDS/IPS log file เป็นระยะๆ

จะเห็นได้ ว่าแฮกเกอร์ในปัจจุบันสามารถเจาะระบบเราโดยผ่านทะลุ Firewall ได้อย่างง่ายดาย เพราะ เรามีความจำเป็นต้องเปิดให้บริการ Web Server ในทุกองค์กร ดังนั้นการตรวจสอบเรื่องของ Web Application Source Code และ Web Server Configuration จึงเป็นทางออกสำหรับการแก้ไขปัญหาทางด้านความปลอดภัยของระบบให้รอดพันจาก เหล่ าไวรัสและแฮกเกอร์ซึ่งนับวันจะเพิ่มจำนวนและเพิ่มความสามารถขึ้นเป็นทวีคูณ.


ที่มา:http://www.naitam.com/naitam-webdesign/view.php?id=22
Read more
X คอร์สเรียนแฮกเกอร์ - Hacker-Security (Online course and Ebook)