反弹Shell由于其易用性、高交互性以及内网穿透能力在众多安全测试中广为使用,众多乙方安全公司和云服务厂商在进行主机安全产品建设时对这此场景也是重点关注,常见的反弹Shell检测包含命令特征匹配、流量检测、行为检测,本次主要针对行为检测,目标为绕过反弹Shell检测的自动检测机制,发现特征盲点,补充检测能力。
58安全第一届反弹shell众测来袭!
10万奖金池!
约你来挑战!
活动时间:2021年11月19日0:00– 2021年12月2日23:59。
测试范围:反弹Shell测试平台(https://security.58.com/reverse_shell/)
(1)每种绕过方式对前三名有效提交进行奖励,第一名1500元,第二名1000元,第三名500元;
(2)奖金池总计100000元,发完为止。
测试有效性认定
连接状态、执行状态、返回状态是用来判断此反弹Shell的工作是否正常;
连接状态、执行状态、返回状态均为正常,同时未被检测出,可以去SRC进行提交,申请奖励,我们会安排人员进行复核。
以下是一次有效的提交:
注:
(1)只有能真正进行交互式使用的反弹Shell才可以提交;
(2)每种绕过方式每人只能提交一次,比如使用不同的编码方式进行编码绕过检测。
报告标题:格式为(【反弹shell众测】报告名称)
报告需要包含以下几项内容:
任务ID
命令内容
详情截图
(1)严禁使用拒绝服务类攻击,禁止恶意攻击测试平台,一经发现将取消资格;
(2)禁止伪造提交,我们会对相关提交进行人工审核;
(3)禁止通过小号刷奖励的行为;
(4)平台测试结果均为系统自动进行判定,不会有人工参与;
(5)不能稳定复现的case按最低奖励给予;
(6)由于数据库超时导致的漏报情况不予进行奖励;
(7)58SRC对本次活动相关规则保留最终解释权。
测试用Dockerfile
FROM ubuntu:20.10
WORKDIR /
RUN sed -i 's/http:\/\/archive\.ubuntu\.com\/ubuntu\//http:\/\/mirrors\.tuna\.tsinghua\.edu\.cn\/ubuntu\//g' /etc/apt/sources.list && \
sed -i 's/http:\/\/security\.ubuntu\.com\/ubuntu\//http:\/\/mirrors\.tuna\.tsinghua\.edu\.cn\/ubuntu\//g' /etc/apt/sources.list
RUN apt-get update && \
DEBIAN_FRONTEND="noninteractive" apt-get install -y curl wget python2 python3 socat netcat ncat perl lua5.1 lua-socket nodejs telnet groovy openjdk-11-jre-headless ruby php gawk tclsh && \
apt-get clean
ENV JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
RUN useradd -m -u 1000 -s /bin/bash test
USER test
WORKDIR /home/test
CMD ["bash"]
(1)Q:第一次提交未检出,二次提交变成检出了,是否是因为我们修改了检测规则?
A:绝对不会发生这种情况,本次测试期间,我们不会对检测规则进行任何修改。
这种情况多半是因为数据库写入超时,当前数据量较多,高并发写入的情况下会产生数据写入失败的问题;
此类由于平台bug导致的漏报,我们暂时不进行收录。
(2)Q:为什么会有已连接未执行但是被检出的情况?
A:这种情况是模型出现了误报,暂不进行收录,有类似的情况欢迎反馈给运营同学。
(3)Q:如何评估绕过方式的种类划分?
A:通过修复方式进行划分。
众测的目的是为了查漏补缺,我们会根据提交的绕过命令从分析模型缺陷;
漏报原因相同的归为一类,防止利用相同的绕过方式进行刷分。
(4)Q:能否提供检测命中的特征详情?
A:暂时不进行提供。
(5)Q:如果使用漏洞穿透平台,是否进行收录?
A:不收录,此为禁止行为,违规者将做封号通报处理。
(6)Q:为什么本地能执行,远程执行失败?
A:目前已知是两种情况:
软件版本不匹配,建议使用我们提供的Dockerfile构建测试环境;
执行过程中fork之后结束了主线程,导致容器关闭,建议在命令下加一行`sleep 10`。