面试题
【汇总】2024HW面试题
各种攻击工具/漏洞流量特征
面试怎么做自我介绍?
如何排查JAVA内存马
如何判断被搭建了什么隧道
如何识别web网站是否使用了Spring Boot框架
CSRF、SSRF和重放攻击有什么区别?
蜜罐的识别
关于分析研判的一些问题回答(仅供参考)
2024hvv1
2024hvv2
2024hvv3
本文档使用 MrDoc 发布
-
+
首页
各种攻击工具/漏洞流量特征
研判溯源应急 准备-检测-抑制-根除-恢复-跟踪总结 中级 常见Webshell&重大漏洞的流量特征(附解密流量工具) https://mp.weixin.qq.com/s?__biz=MzUzMDQ1MTY0MQ==&mid=2247499139&idx=1&sn=098db6abc729988e83b6f2e574477ba8&chksm=fa532055cd24a943049c486e4dfc6e0ab54e8f0c5faa49abd252b9424ac868a1c155db2b3407 # 内存马的判断和清除 判断方式:先判断是通过什么方法注入的内存马,可以先查看web日志是否有可疑的web访问日志,如果是filter或者listener类型就会有大量url请求路径相同参数不同的,或者页面不存在但是返回200的,查看是否有类似哥斯拉、冰蝎相同的url请求,哥斯拉和冰蝎的内存马注入流量特征与普通webshell的流量特征基本吻合。通过查找返回200的url路径对比web目录下是否真实存在文件,如不存在大概率为内存马。如在web日志中并未发现异常,可以排查是否为中间件漏洞导致代码执行注入内存马,排查中间件的error.log日志查看是否有可疑的报错 清除方式: 1.利用条件竞争把shell内容改写或者清除比较好用 2.重启服务 3.提前占用他的目录名 # webshell 主要需要鉴别一些高危的函数,比如eval,assert # 蚁剑 ini_set ini_set_time ini_set_limit @ini_set("display_errors","0") 部分代码明文传输,较好辨认 # 菜刀 老版本采用明文传输,非常好辨认 新版本采用base64加密,检测思路就是分析流量包,发现大量的base64加密密文就需要注意 # 冰蝎 冰蝎1:冰蝎1有一个密钥协商过程,这个过程是明文传输,并且有两次流量,用来校验 冰蝎2:因为内置了很多的UA头,所以当某一个相同IP重复请求,但是UA头不一样的时候就需要注意了 冰蝎3:因为省去了协商过程,所以流量上可以绕过很多,但是其他特征依旧保留,比如ua头 冰蝎数据包总是伴随着大量的content-type:application什么什么,无论GET还是POST,请求的http中,content-type为application/octet-stream 还有他们的accept之类的长度总是等长,正常的根据应用场景和不同文件,长度是不同的 # 哥斯拉 cookie这个值的地方有一个小纰漏,就是正常请求cookie最后结尾是没有分号的,可能后续作者会进行调整修改 还有响应,哥斯拉会响应三次,而且我认为还有一个地方需要注意的就是webshell连接,所以一般会设置长时间连接,所以connection这里会是keep-alive #fastjson流量特征 fastjson原理:能够执行反序列化的根源定位在 @type @type 还有commit值为true ## 不出网打法: 目前公开已知的poc有两个:com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl org.apache.tomcat.dbcp.dbcp2.BasicDataSource 第一种利用方式需要一个特定的触发条件: 解析JSON的时候需要使用Feature才能触发,参考如下代码:JSONObject.parseObject(sb.toString(), new Feature[] {Feature.SupportNonPublicField}); 第二种利用方式: 则需要应用部署在Tomcat应用环境中,因为Tomcat应用环境自带tomcat-dbcp.jar 对于SpringBoot这种自带Tomcat可以直接以单个jar文件部署的需要在maven中配置tomcat- dbcp。 而且对于不同的Tomcat版本使用的poc也不同: Tomcat 8.0以后使用 org.apache.tomcat.dbcp.dbcp2.BasicDataSource• Tomcat 8.0以下使用 org.apache.tomcat.dbcp.dbcp.BasicDataSource # log4j流量特征 原理:该漏洞主要是由于日志在打印时当遇到`${`后,以:号作为分割,将表达式内容分割成两部分,前面一部分prefix,后面部分作为key,然后通过prefix去找对应的lookup,通过对应的lookup实例调用lookup方法,最后将key作为参数带入执行,引发远程代码执行漏洞 特征:${jndi:rmi # struts2 流量特征:遇到之后先进行url解码在查看总体含义 # redis未授权 原理:redis使用了默认配置,使端口绑定在了0.0.0.0:6379并且暴露在公网的话 此时我们任意一台带有redis-cli的机器就可以直接访问,跳过登陆验证,从而可以写shell,写入shell的话使用config参数 # thinkphp 5.x通杀原理:路由url从Request::path()中获取,由于var_pathinfo的默认配置为s,我们可利用$_GET['s']来传递路由信息,也可利用pathinfo来传递,但测试时windows环境下会将$_SERVER['pathinfo']中的\替换为/。结合前面分析可得初步利用代码如下:index.php?s=index/\namespace\class/method 正则没写好 # weblogic weblogic反序列化基于t3协议 # shiro shiro550:硬编码导致密钥可以被爆破,然后利用密钥进行解密和反序列化构建payload shiro721:这次没有了硬编码,但是rememberme字段又出问题了,导致可以构建恶意rememberme的值 服务端收到登录请求后,会对cookie的rememberMe字段的值进行base64解码,接着进行AES解密,然后反序列化 流量特征:rememberme字段长度异常 # 通过sql语句判断数据库类型: 1.根据注入后的报错信息判断 2.根据不同数据库所特有的表不同来判断 oracle:sys.user_tables mysql:sysobjects mysql v5.0以上:information_schema access数据库:mysysobject # nmap流量特征修改 https://zhuanlan.zhihu.com/p/248625327
无涯
2024年4月5日 16:52
转发文档
收藏文档
上一篇
下一篇
手机扫码
复制链接
手机扫一扫转发分享
复制链接
Markdown文件
分享
链接
类型
密码
更新密码