http://Yaklang.io反连技术三板斧
反连服务
多协议端口复用
内网穿透
反连是什么?为什么要做
很多时候,我们在进行漏洞检测时无法通过应用返回的信息来确定一个漏洞是否存在。但是如果命令/特殊操作确实执行了,那我们如何证明这个命令或者特殊操作执行了呢?
我们习惯性把这种漏洞检测技术称为:无回显的漏洞检测技术。
一般来说,无回显漏洞检测技术可以分为两种:
- sleep / benchmark 耗时操作检测。
- dnslog / http-reverse / tcp / tls / rmi 等服务外连检测。
严格来说,我并不觉得 sleep / benchmark 不算回显,耗时操作本来也算是可直接观测到的指标。除此之外,sleep / benchmark将会引起服务器端各种各样的小问题:
- 如果服务器是单线程,sleep 将会造成阻塞,
- 如果服务器 CPU 不太行,benchmark 将会消耗资源
- 如果发生在数据库中,很多生产环境中的数据库会针对 SQL 语句执行做各种限制,例如:
- 认为超时的 SQL 语句为 badsql,直接切断当前查询进程
- SQL 连接池恶意占用会造成其他查询失败,甚至整体 down 机
4. sleep 如果执行在了for/while分支中,将会造成 sleep 的时间远大于预期值,或者直接为 0。
相比之下,服务外连检测是一个更加 "稳妥" 的办法。
DNS反连检测原理
举个例子,服务外连时,我们执行 curl http://abc.example.com 命令:
- 这个时候,http://abc.example.com 将会被解析,会查询 http://abc.example.com 的NS记录和A记录
- 如果NS记录存在 (http://ns1.example.com),会向http://ns1.example.com 查询 http://abc.example.com的A记录。
- 如果 NS 不存在,则直接向公共服务器启用 A记录查询。
上述描述的过程中,如果我们可以控制 http://ns1.example.com 的话,任何用户查询的过程将会被记录下来。
当然,我们可以人为设置一个子域名,任何查询到这个子域名的请求被集合展示,这就是&nbs

本文介绍了Yaklang.io的反连技术,包括多协议端口复用(如Facade技术)、内网穿透服务,以及如何利用DNS反连检测、RMI/HTTP/TLS等进行漏洞检测。Yakkit插件与反连技术的结合简化了漏洞检测过程。
最低0.47元/天 解锁文章
2539

被折叠的 条评论
为什么被折叠?



