漏洞反连检测组合拳:内网穿透与多协议复用端口

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

http://Yaklang.io反连技术三板斧

反连服务

多协议端口复用

内网穿透

反连是什么?为什么要做

很多时候,我们在进行漏洞检测时无法通过应用返回的信息来确定一个漏洞是否存在。但是如果命令/特殊操作确实执行了,那我们如何证明这个命令或者特殊操作执行了呢?

我们习惯性把这种漏洞检测技术称为:无回显的漏洞检测技术。

一般来说,无回显漏洞检测技术可以分为两种:

  1. sleep / benchmark 耗时操作检测。
  2. dnslog / http-reverse / tcp / tls / rmi 等服务外连检测。

严格来说,我并不觉得 sleep / benchmark 不算回显,耗时操作本来也算是可直接观测到的指标。除此之外,sleep / benchmark将会引起服务器端各种各样的小问题:

  1. 如果服务器是单线程,sleep 将会造成阻塞,
  2. 如果服务器 CPU 不太行,benchmark 将会消耗资源
  3. 如果发生在数据库中,很多生产环境中的数据库会针对 SQL 语句执行做各种限制,例如:
  4. 认为超时的 SQL 语句为 badsql,直接切断当前查询进程
  5. SQL 连接池恶意占用会造成其他查询失败,甚至整体 down 机

4. sleep 如果执行在了for/while分支中,将会造成 sleep 的时间远大于预期值,或者直接为 0。

相比之下,服务外连检测是一个更加 "稳妥" 的办法。

DNS反连检测原理

举个例子,服务外连时,我们执行 curl http://abc.example.com 命令:

  1. 这个时候,http://abc.example.com 将会被解析,会查询 http://abc.example.com 的NS记录和A记录
  2. 如果NS记录存在 (http://ns1.example.com),会向http://ns1.example.com 查询 http://abc.example.com的A记录。
  3. 如果 NS 不存在,则直接向公共服务器启用 A记录查询。

上述描述的过程中,如果我们可以控制 http://ns1.example.com 的话,任何用户查询的过程将会被记录下来。

当然,我们可以人为设置一个子域名,任何查询到这个子域名的请求被集合展示,这就是&nbs

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值