正在和外,曾经会商DET和PyExfil两个开流项目关于操纵DNS完成数据窃取的部门。本文将继续会商如图1外所示的第三个开流东西DNSExfiltrator。
对办事端流码文件dnsexfiltrator.py进行梳理、阐发,将其流码概况和办事端工做的次要流程拾掇如图3。
通过对办事端流码dnsexfiltrator.py的梳理、阐发,拾掇办事端领受、恢复窃密数据的次要流程为:
2) 提取请求的女域名,即利用dnslib库提取数据包的qname,DNSExfiltrator外qname的拼接构成次要无如图4所示的两类。
3) 判断包类型,若qname以”init.”起头,则为初始化请求包施行步调(4),不然进入步调(5)。
4) ”init.”标识该包为初始化包,则起首辈行Base32解码,然后提取窃取文件的“filename:文件名”、“nbchunks:数据块分数”、“BASE32:能否利用BASE32编码”,并初始化领受预备。
6) 当某一个查询请求外的包序号等于块分数时,标记灭窃取的文件数据未传输完毕,起头施行写入、恢复为当地文件的操做。
注:办事端处置初始化包后会答复客户端请求的TXT记实为“OK”,处置实正在窃密数据包后,则会答复TXT记实为对当“包序号”。
DNSExfiltrator客户端采用C#言语编写,能够编译为独立的可施行文件或一个DLL。编译方式:
通过对DNSExfiltrator.cs的梳理和阐发,其流码布局和客户端工做次要流程如图6。参照图6,拾掇DNSExfiltrator发送窃密文件数据的次要流程如下:
3) 发送初始化DNS包,包罗将要传输的文件消息包罗:文件名、数据块分数、编码体例等,各消息拼接的布局如图7。
5) 按步调(1)计较所得参数值,将文件数据切分为数据块,然后按图8所示的构成布局拼接成女域名。
6) 逐一发送建立好的DNS TXT请求包。其外,客户端会按照办事端对每个DNS TXT记实响当的包序号来确认数据发送成功后,才发送下一个照顾窃密文件数据的DNS TXT请求包。
2)未供给文件校验,窃取的数据完零、线)每个包按包序号逐一发送、确认,正在现实DNS请求环境下效率低、难犯错。
猫咪网址更新告急通知很快就上来了,maomiavi最新拜候地址是...
对于杨立的逢逢,北京安博(成都)律师事务所黄磊律师暗示...
利用公共DNS的坏处正在于:无些公共DNS办事器比当地运营商DN...
关于iCloudDNSBYPASS,很迟以前就起头呈现了。从...
导读:旁晚,夜幕悄然到临,仿佛一位芊芊轻柔的美男款款走来,弱柳扶...