溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JudasDNS是什么工具

發(fā)布時間:2021-12-27 17:15:08 來源:億速云 閱讀:176 作者:小新 欄目:網絡安全

這篇文章將為大家詳細講解有關JudasDNS是什么工具,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

   JudasDNS是一款針對DNS域名服務器的安全測試工具,在JudasDNS的幫助下,廣大安全研究人員可以方便地對目標域名服務器進行DNS投毒攻擊測試,以確保域名服務器的安全性。

JudasDNS可以幫助研究人員構建和部署DNS代理服務器,并代替已接管的域名服務器以執(zhí)行目標攻擊。JudasDNS可以代理某個域名的合法域名服務器的所有DNS查詢請求,JudasDNS的規(guī)則配置允許我們根據源IP或DNS查詢類型來修改DNS響應,這也就意味著攻擊者可以配置一臺惡意域名服務器來實現:有選擇地重新路由來自指定源IP地址范圍(通過修改的MX記錄)的入站電子郵件,設置數據長度非常長的TTL,或執(zhí)行DNS緩存投毒等攻擊活動。

工具下載

運行下列命令直接將項目源碼克隆至本地:

git clone https://github.com/mandatoryprogrammer/JudasDNS.git

JudasDNS是什么工具

如何使用JudasDNS

下面給出的是JudasDNS針對測試樣例場景中的配置樣本代碼,在這個場景中,我們已經拿到了或接管了一臺蘋果的權威域名服務器(apple.com):

{    "version": "1.0.0",    "port": 2248,    "dns_query_timeout": 10000,    "target_nameservers": [ "17.254.0.59", "17.254.0.50", "17.112.144.50", "17.112.144.59", "17.171.63.30", "17.171.63.40", "17.151.0.151", "17.151.0.152" ],    "rules": [        {            "name": "Secretly redirect all emails coming from 127.0.0.1!",            "query_type_matches": [ "MX" ],            "ip_range_matches": [ "127.0.0.1/32" ],            "modifications": [                {                    "answer": [                        {                            "name": "apple.com",                            "type": 15,                            "class": 1,                            "ttl": 10,                            "priority": 10,                            "exchange": "hacktheplace.localhost"                        }                    ]                }            ]        },        {            "name": "Make all responses NOERROR even if they've failed.",            "query_type_matches": [ "*" ],            "modifications": [                {                    "header": {                        "rcode": 0                    }                }            ]        }    ]}

配置參數值解析

1、version:配置文件格式版本(當前為1.0.0);

2、port:Judas的運行端口;

3、dns_query_timeout:在放棄來自上游目標名稱服務器的答復之前等待多長時間(毫秒);

4、target_nameservers:目標域名的合法域名服務器,所有的DNS查詢都將從這里由Judas代表所有的請求客戶端來發(fā)出;

5、rules:對DNS響應進行修改的規(guī)則列表;

6、name:給定規(guī)則的名稱;

7、query_type_matches:待匹配的查詢類型列表,例如CNAME、A記錄等,還可以使用*通配符來匹配任意類型的查詢類型;

8、ip_range_matches:待匹配的IP范圍列表,用于選擇性地對特定范圍IP的響應進行欺騙攻擊;

9、modifications:查看README的“Modifications”數據段;

Modifications

JudasDNS的規(guī)則提供了modifications規(guī)范,這個規(guī)范可以幫助我們識別DNS響應在發(fā)送回客戶端之前,對其進行了哪些修改。在修改響應內容之前,我們還需要查看DNS節(jié)點文檔來了解DNS響應結構。

下面給出的是一個DNS響應格式樣本:

{ header:    { id: 25373,     qr: 1,     opcode: 0,     aa: 1,     tc: 0,     rd: 1,     ra: 0,     res1: 0,     res2: 0,     res3: 0,     rcode: 5 },  question: [ { name: 'apple.com', type: 2, class: 1 } ],  answer:    [ { name: 'apple.com',       type: 2,       class: 1,       ttl: 86400,       data: 'nserver2.apple.com' },     { name: 'apple.com',       type: 2,       class: 1,       ttl: 86400,       data: 'nserver4.apple.com' },     { name: 'apple.com',       type: 2,       class: 1,       ttl: 86400,       data: 'nserver.apple.com' },     { name: 'apple.com',       type: 2,       class: 1,       ttl: 86400,       data: 'nserver3.apple.com' },     { name: 'apple.com',       type: 2,       class: 1,       ttl: 86400,       data: 'nserver5.apple.com' },     { name: 'apple.com',       type: 2,       class: 1,       ttl: 86400,       data: 'nserver6.apple.com' },     { name: 'apple.com',       type: 2,       class: 1,       ttl: 86400,       data: 'adns2.apple.com' },     { name: 'apple.com',       type: 2,       class: 1,       ttl: 86400,       data: 'adns1.apple.com' } ],  authority: [],  additional: [],  edns_options: [],  payload: undefined,  address: undefined,...trimmed for brevity...

注意:如需了解更多關于DNS響應數據結構的內容,可以查看【這篇文檔】。

編寫一個modifications規(guī)則非常簡單,下面給出的是一套樣本規(guī)則:

{  "name": "Make all responses NOERROR even if they've failed.",  "query_type_matches": [ "*" ],  "modifications": [    {      "header": {        "rcode": 0      }    }  ]}

上述規(guī)則可以匹配任意類型的查詢請求,并且會將DNS響應中的header.rcode值設置為0.

下面給出的是另一個樣本規(guī)則以供大家參考:

{  "name": "Secretly redirect all emails coming from 127.0.0.1!",  "query_type_matches": [ "MX" ],  "ip_range_matches": [ "127.0.0.1/32" ],  "modifications": [    {      "answer": [        {          "name": "apple.com",          "type": 15,          "class": 1,          "ttl": 10,          "priority": 10,          "exchange": "hacktheplace.localhost"        }      ]    }  ]}

規(guī)則匹配類型

請求方IP

下面的規(guī)則可以匹配一個客戶端的IP地址:

{  "name": "Make all responses requested from localhost (127.0.0.1) NOERROR.",  "ip_range_matches": [ "127.0.0.1/32" ],  "modifications": [    {      "header": {        "rcode": 0      }    }  ]}

請求查詢類型

下面的規(guī)則可以匹配MX和CNAME這兩個查詢類型,并應用相應的modification規(guī)則:

{  "name": "Make all responses NOERROR even if they've failed.",  "query_type_matches": [ "MX", "CNAME" ],  "modifications": [    {      "header": {        "rcode": 0      }    }  ]}

響應狀態(tài)碼

下面的規(guī)則可以匹配NXDOMAIN的響應碼,并應用相應的modification規(guī)則:

{  "name": "Make all responses requested from localhost (127.0.0.1) NOERROR.",  "response_code_matches": [ "NXDOMAIN" ],  "modifications": [    {      "header": {        "rcode": 0      }    }  ]}

關于“JudasDNS是什么工具”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI