การแฮ็กอย่างมีจริยธรรม - การพิมพ์ลายนิ้วมือ

คำว่า OS ลายนิ้วมือในการแฮ็กอย่างมีจริยธรรมหมายถึงวิธีการใด ๆ ที่ใช้ในการกำหนดว่าระบบปฏิบัติการใดกำลังทำงานบนคอมพิวเตอร์ระยะไกล นี่อาจเป็น -

  • Active Fingerprinting- การพิมพ์ลายนิ้วมือสามารถทำได้โดยการส่งแพ็กเก็ตที่สร้างขึ้นมาเป็นพิเศษไปยังเครื่องเป้าหมายจากนั้นสังเกตการตอบสนองและวิเคราะห์ข้อมูลที่รวบรวมเพื่อกำหนดระบบปฏิบัติการเป้าหมาย ในส่วนต่อไปนี้เราได้ยกตัวอย่างเพื่ออธิบายว่าคุณสามารถใช้เครื่องมือ NMAP เพื่อตรวจหาระบบปฏิบัติการของโดเมนเป้าหมายได้อย่างไร

  • Passive Fingerprinting- การพิมพ์ลายนิ้วมือแฝงขึ้นอยู่กับร่องรอยการดมกลิ่นจากระบบระยะไกล ขึ้นอยู่กับร่องรอยการดมกลิ่น (เช่น Wireshark) ของแพ็กเก็ตคุณสามารถกำหนดระบบปฏิบัติการของโฮสต์ระยะไกลได้

เรามีองค์ประกอบสำคัญสี่ประการต่อไปนี้ที่เราจะพิจารณาเพื่อกำหนดระบบปฏิบัติการ -

  • TTL - สิ่งที่ระบบปฏิบัติการตั้งค่า Time-To-Live บนแพ็กเก็ตขาออก

  • Window Size - ระบบปฏิบัติการกำหนดขนาดหน้าต่างไว้ที่อะไร

  • DF - ระบบปฏิบัติการตั้งค่าไฟล์ Don't Fragment นิดหน่อย.

  • TOS - ระบบปฏิบัติการตั้งค่าไฟล์ Type of Serviceและถ้าเป็นเช่นนั้นที่อะไร

ด้วยการวิเคราะห์ปัจจัยเหล่านี้ของแพ็กเก็ตคุณอาจสามารถกำหนดระบบปฏิบัติการระยะไกลได้ ระบบนี้ไม่แม่นยำ 100% และทำงานได้ดีกับระบบปฏิบัติการบางระบบมากกว่าระบบอื่น ๆ

ขั้นตอนพื้นฐาน

ก่อนที่จะโจมตีระบบคุณจำเป็นต้องทราบว่าระบบปฏิบัติการใดที่โฮสต์เว็บไซต์อยู่ เมื่อทราบระบบปฏิบัติการเป้าหมายแล้วจะง่ายต่อการระบุว่าช่องโหว่ใดที่อาจมีอยู่เพื่อใช้ประโยชน์จากระบบเป้าหมาย

ด้านล่างนี้เป็นเรื่องง่าย nmap คำสั่งที่สามารถใช้เพื่อระบุระบบปฏิบัติการที่ให้บริการเว็บไซต์และพอร์ตที่เปิดทั้งหมดที่เกี่ยวข้องกับชื่อโดเมนนั่นคือที่อยู่ IP

$nmap -O -v tutorialspoint.com

จะแสดงข้อมูลที่ละเอียดอ่อนต่อไปนี้เกี่ยวกับชื่อโดเมนหรือที่อยู่ IP ที่ระบุ -

Starting Nmap 5.51 ( http://nmap.org ) at 2015-10-04 09:57 CDT 
Initiating Parallel DNS resolution of 1 host. at 09:57 
Completed Parallel DNS resolution of 1 host. at 09:57, 0.00s elapsed 
Initiating SYN Stealth Scan at 09:57
Scanning tutorialspoint.com (66.135.33.172) [1000 ports] 
Discovered open port 22/tcp on 66.135.33.172 
Discovered open port 3306/tcp on 66.135.33.172 
Discovered open port 80/tcp on 66.135.33.172 
Discovered open port 443/tcp on 66.135.33.172 
Completed SYN Stealth Scan at 09:57, 0.04s elapsed (1000 total ports) 
Initiating OS detection (try #1) against tutorialspoint.com (66.135.33.172) 
Retrying OS detection (try #2) against tutorialspoint.com (66.135.33.172) 
Retrying OS detection (try #3) against tutorialspoint.com (66.135.33.172) 
Retrying OS detection (try #4) against tutorialspoint.com (66.135.33.172) 
Retrying OS detection (try #5) against tutorialspoint.com (66.135.33.172) 
Nmap scan report for tutorialspoint.com (66.135.33.172) 
Host is up (0.000038s latency). 
Not shown: 996 closed ports 
PORT     STATE SERVICE 
22/tcp   open  ssh 
80/tcp   open  http 
443/tcp  open  https 
3306/tcp open  mysql  

TCP/IP fingerprint: 
OS:SCAN(V=5.51%D=10/4%OT=22%CT=1%CU=40379%PV=N%DS=0%DC=L%G=Y%TM=56113E6D%P= 
OS:x86_64-redhat-linux-gnu)SEQ(SP=106%GCD=1%ISR=109%TI=Z%CI=Z%II=I%TS=A)OPS 
OS:(O1=MFFD7ST11NW7%O2=MFFD7ST11NW7%O3=MFFD7NNT11NW7%O4=MFFD7ST11NW7%O5=MFF 
OS:D7ST11NW7%O6=MFFD7ST11)WIN(W1=FFCB%W2=FFCB%W3=FFCB%W4=FFCB%W5=FFCB%W6=FF 
OS:CB)ECN(R=Y%DF=Y%T=40%W=FFD7%O=MFFD7NNSNW7%CC=Y%Q=)T1(R=Y%DF=Y%T=40%S=O%A 
OS:=S+%F=AS%RD=0%Q=)T2(R=N)T3(R=N)T4(R=Y%DF=Y%T=40%W=0%S=A%A=Z%F=R%O=%RD=0% 
OS:Q=)T5(R=Y%DF=Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)T6(R=Y%DF=Y%T=40%W=0%S= 
OS:A%A=Z%F=R%O=%RD=0%Q=)T7(R=Y%DF=Y%T=40%W=0%S=Z%A=S+%F=AR%O=%RD=0%Q=)U1(R= 
OS:Y%DF=N%T=40%IPL=164%UN=0%RIPL=G%RID=G%RIPCK=G%RUCK=G%RUD=G)IE(R=Y%DFI=N% 
OS:T=40%CD=S)

หากคุณไม่มี nmap คำสั่งติดตั้งบนระบบ Linux ของคุณจากนั้นคุณสามารถติดตั้งโดยใช้สิ่งต่อไปนี้ yum คำสั่ง -

$yum install nmap

คุณสามารถผ่านไปได้ nmap คำสั่งโดยละเอียดเพื่อตรวจสอบและทำความเข้าใจคุณลักษณะต่างๆที่เกี่ยวข้องกับระบบและป้องกันการโจมตีที่เป็นอันตราย

แก้ไขด่วน

คุณสามารถซ่อนระบบหลักของคุณไว้หลังพร็อกซีเซิร์ฟเวอร์ที่ปลอดภัยหรือ VPN เพื่อให้ข้อมูลประจำตัวของคุณปลอดภัยและท้ายที่สุดระบบหลักของคุณจะยังคงปลอดภัย

การสแกนพอร์ต

เราเพิ่งเห็นข้อมูลที่ได้รับจาก nmapคำสั่ง คำสั่งนี้แสดงรายการพอร์ตที่เปิดทั้งหมดบนเซิร์ฟเวอร์ที่กำหนด

PORT       STATE   SERVICE 
22/tcp     open    ssh 
80/tcp     open    http 
443/tcp    open    https 
3306/tcp   open    mysql

คุณยังสามารถตรวจสอบว่าพอร์ตใดพอร์ตหนึ่งเปิดอยู่หรือไม่โดยใช้คำสั่งต่อไปนี้ -

$nmap -sT -p 443 tutorialspoint.com

มันจะให้ผลลัพธ์ดังต่อไปนี้ -

Starting Nmap 5.51 ( http://nmap.org ) at 2015-10-04 10:19 CDT 
Nmap scan report for tutorialspoint.com (66.135.33.172) 
Host is up (0.000067s latency). 
PORT    STATE SERVICE 
443/tcp open  https  

Nmap done: 1 IP address (1 host up) scanned in 0.04 seconds

เมื่อแฮ็กเกอร์รู้เกี่ยวกับพอร์ตที่เปิดแล้วเขาก็สามารถวางแผนเทคนิคการโจมตีต่างๆผ่านพอร์ตที่เปิดได้

แก้ไขด่วน

ขอแนะนำให้ตรวจสอบและปิดพอร์ตที่ไม่ต้องการทั้งหมดเสมอเพื่อป้องกันระบบจากการโจมตีที่เป็นอันตราย

ปิงกวาด

การกวาด ping เป็นเทคนิคการสแกนเครือข่ายที่คุณสามารถใช้เพื่อกำหนดที่อยู่ IP จากช่วงของที่อยู่ IP ที่จับคู่กับโฮสต์ที่ใช้งาน Ping Sweep เรียกอีกอย่างว่าICMP sweep.

คุณสามารถใช้ได้ fpingคำสั่งสำหรับการกวาด ping คำสั่งนี้เป็นโปรแกรมแบบ ping ซึ่งใช้การร้องขอการสะท้อนของ Internet Control Message Protocol (ICMP) เพื่อตรวจสอบว่าโฮสต์ทำงานหรือไม่

fping แตกต่างจาก pingคุณสามารถระบุจำนวนโฮสต์บนบรรทัดคำสั่งหรือระบุไฟล์ที่มีรายการโฮสต์ที่จะ ping หากโฮสต์ไม่ตอบสนองภายในระยะเวลาที่กำหนดและ / หรือ จำกัด การลองอีกครั้งจะถือว่าไม่สามารถเข้าถึงได้

แก้ไขด่วน

หากต้องการปิดใช้งานการกวาด ping บนเครือข่ายคุณสามารถบล็อกคำขอ ICMP ECHO จากแหล่งภายนอกได้ สามารถทำได้โดยใช้คำสั่งต่อไปนี้ซึ่งจะสร้างกฎไฟร์วอลล์ในiptable.

$iptables -A OUTPUT -p icmp --icmp-type echo-request -j DROP

การแจงนับ DNS

Domain Name Server (DNS) เปรียบเสมือนแผนที่หรือสมุดที่อยู่ ในความเป็นจริงมันเป็นเหมือนฐานข้อมูลแบบกระจายซึ่งใช้ในการแปลที่อยู่ IP 192.111.1.120 เป็นชื่อ www.example.com และในทางกลับกัน

การแจงนับ DNS คือกระบวนการค้นหาเซิร์ฟเวอร์ DNS ทั้งหมดและระเบียนที่เกี่ยวข้องสำหรับองค์กร แนวคิดคือการรวบรวมรายละเอียดที่น่าสนใจเกี่ยวกับเป้าหมายของคุณให้ได้มากที่สุดก่อนที่จะเริ่มการโจมตี

คุณสามารถใช้ได้ nslookupคำสั่งพร้อมใช้งานบน Linux เพื่อรับ DNS และข้อมูลที่เกี่ยวข้องกับโฮสต์ นอกจากนี้คุณสามารถใช้สิ่งต่อไปนี้DNSenum สคริปต์เพื่อรับข้อมูลโดยละเอียดเกี่ยวกับโดเมน -

DNSenum.pl

DNSenum สคริปต์สามารถดำเนินการที่สำคัญต่อไปนี้ -

  • รับที่อยู่ของโฮสต์

  • รับเนมเซิร์ฟเวอร์

  • รับระเบียน MX

  • ดำเนินการ axfr คำถามเกี่ยวกับเนมเซิร์ฟเวอร์

  • รับชื่อและโดเมนย่อยเพิ่มเติมผ่าน Google scraping

  • โดเมนย่อย Brute force จากไฟล์ยังสามารถทำการเรียกซ้ำบนโดเมนย่อยที่มีระเบียน NS

  • คำนวณช่วงเครือข่ายโดเมนคลาส C และดำเนินการ whois คำถามเกี่ยวกับพวกเขา

  • ดำเนินการ reverse lookups บน netranges

แก้ไขด่วน

DNS Enumeration ไม่มีวิธีแก้ไขอย่างรวดเร็วและอยู่นอกเหนือขอบเขตของบทช่วยสอนนี้ การป้องกัน DNS Enumeration ถือเป็นความท้าทายที่ยิ่งใหญ่

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