-
-
[原创]使用ICMP协议来完成文件加密下载
-
发表于:
2014-5-4 14:26
69587
-
看绿盟的最近出的那个讲DDOS(破坏之王)那个书的时候.突然看到了Hping这个经典的工具
突然想起来.ping是icmp协议.支持data数据填充
最大可以是65535字节大也就是64K
那么这64K的东西 到底都有啥?
第一反应就是这些数据是可以自定义的
然后好奇了.那么回包是什么样子的呢?
然后我抓包看了下windows下ping.exe发的包
发现其data段就是循环的abcd...
然后reply包就是简单的把原本的request包的data给复制过来
也就是说 这个类似之前的SSL心脏出血那玩意的逻辑差不多的东西. 但是想来应该不会有类似的洞
然后想了下 既然有双方都可控的区域. 那么似乎可以用来传点什么.
再加上扩展最大64KB 可以做的事情就很多了
比如:
我们的木马植入对方的机器,首先伪装成无害的,,
然后构建好ping包,在data部分填写必要数据,如系统 mac地址之类的
一直ping自己的服务器.服务器平时是没问题的.但是到需要的时候会,把data部分的数据拿出来解析.
然后构造reply包,标识需要下载的文件的大小.分段数量,分段大小,加密方法,密钥,执行方法
客户端收到reply包后.(如果没收到就重发)
根据reply包的data中的数据说明的分段大小重新构建ping包,然后将分段序号填到data中,
服务器根据序号返回数据.客户端收到数据按照之前定好的加密方法和密钥解密,按照序号将解密后的数据连接起来
然后根据约定的执行方法进行执行,如jmp执行,或写文件执行
刚随便看了下 基本没有防火墙对icmp协议进行过滤.也就是说应该是天然绕防火墙的
当然不排除某些可怕的防火墙或网管会禁止ping
额 刚又想了下 似乎门槛挺高的.首先是代码...这块就吓死不少人..然后是需要有个VPS...
还要确定你的VPS不会在前面有个什么奇葩的东西把ping给禁了..
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)