จะบันทึกการสืบค้น DNS ทั้งหมดของฉันได้อย่างไร


18

ฉันจะสร้างบันทึกของแบบสอบถาม DNS ทุกรายการที่คอมพิวเตอร์ทำพร้อมกับคำตอบที่ได้รับได้อย่างไร

logs  dns 

คำตอบ:


14

คุณสามารถtcpdumpบันทึกกิจกรรม 53 UDP และ TCP พอร์ตทั้งหมดได้


6
รายละเอียดใด ๆ
e-sushi

นี่เป็นคำตอบที่ดีที่สุดเนื่องจากเราไม่สามารถมั่นใจได้ว่า OP (หรือผู้อ่านรายอื่น) สามารถเข้าถึงเซิร์ฟเวอร์ DNS - ได้เฉพาะเครื่องในท้องถิ่น ในการตอบคำถามของ @ e-sushi ให้ใช้ tcpdump โดยใช้ยูทิลิตีนี้ (ดูหน้า manหรือไพรเมอร์ที่ดีพร้อมตัวอย่าง ) ทางออกที่ดีที่สุดของคุณคือการถ่ายโอนข้อมูลไปยังไฟล์จากนั้นดึงข้อมูลนั้นลงในwiresharkเพื่อตรวจสอบและวิเคราะห์
James Shewey

1
github.com/gamelinux/passivednsดูเหมือนว่าจะทำแค่นั้นดู./doc/How-it-works.txt
mxmlnkn

5
tcpdump udp port 53
Brannon

1
tcpdump --list-interfacesมันอาจจะไม่เลือกเชื่อมต่อเครือข่ายขาออกโดยปริยายดังนั้นคุณต้องบิตเพิ่มเติมได้ที่: tcpdump udp port 53 --interface (pickone), ยังพิจารณาฟุ่มเฟื่อย:-vv
nobar

9

วิธีที่ง่ายที่สุดคือการติดตั้ง Bind ภายในเครื่อง การติดตั้งเริ่มต้น distros ส่วนใหญ่ของ Bind จะเป็นการแคชแบบไม่ใช้สิทธิ์โดยอัตโนมัติ

เพียงเพิ่มlogging {}บล็อกการตั้งค่า (ตามที่อธิบายไว้ในการอ้างอิงการกำหนดค่า Bind 9 ) จากนั้นตั้งค่าระบบของคุณให้ใช้127.0.0.1หรือ::1เป็นตัวแก้ไข DNS


2
เมื่อพิจารณาว่าการเชื่อมโยงนั้นมีขนาดใหญ่เพียงใดและบันทึกความปลอดภัยที่ขาดความดแจ่มใสฉันคิดว่าหลายคนอาจลังเลที่จะติดตั้งบางอย่างเช่นนั้นเพื่อการเข้าสู่ระบบเพียงอย่างเดียว
jw013

ไม่ได้ผูกมีปัญหาที่ nameservers ใน /etc/resolv.conf ไม่ได้ใช้ แต่ nameservers จะต้องมีการระบุไว้อย่างชัดเจนในการกำหนดค่า bind?
Bananguin

ไม่ใช่/etc/resolv.confรายการตัวแก้ไขระบบ การกำหนดค่าเริ่มต้นของ Bind คือการค้นหาเซิร์ฟเวอร์ชื่อที่มีสิทธิ์และถามพวกเขา คุณสามารถส่งต่อคำขอทั้งหมดไปยังเซิร์ฟเวอร์เฉพาะ (หรือตั้งค่าเช่น ISP ของคุณ OpenDNS หรือ Google Public DNS) แต่ไม่จำเป็นต้องทำในการกำหนดค่า ฉันทำสิ่งนี้ตลอดเวลา ฉันไม่สามารถนับจำนวนครั้งที่ฉันตั้งค่าแคชเซิร์ฟเวอร์ชื่อเท่านั้น
bahamat

6

dnsmasqนั้นง่ายกว่าที่จะกำหนดค่าเป็น DNS aggregator / caching daemon มากกว่า BIND และเพื่อจุดประสงค์นั้นประสิทธิภาพอาจจะดีขึ้น หากคุณเปิดการเข้าสู่ระบบเพื่อ "ดีบั๊ก" คำถามและคำตอบทั้งหมดจะปรากฏในสิ่งที่syslogกำหนดค่าไว้สำหรับข้อความดีบั๊ก

Dnsmasq ยังทำให้ง่ายต่อการกำจัดผู้โฆษณาที่ไม่เหมาะสมและความเป็นส่วนตัวของถุงผ้าย่ำยีย่น "วิเคราะห์" ครีพโดยการทำให้นามแฝงทั้งโดเมนเป็น 127.0.0.1


1

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


1

หากต้องการแสดงและบันทึกลงในไฟล์Aคำขอ DNS ทั้งหมดให้เรียกใช้สิ่งนี้:

script -q -c "sudo tcpdump -l port 53 2>/dev/null | grep --line-buffered ' A? ' | cut -d' ' -f8" | tee dns.log

ตัวอย่างผลลัพธ์:

google.com
wikipedia.org

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.