面经分享 | 某安蓝队中级面经分享

admin 2024年10月10日21:54:00评论12 views字数 2121阅读7分4秒阅读模式

本文由掌控安全学院-山屿云投稿

先说结论(通过,只有一面),比较容易。

1、webshell流量特征

  • 菜刀:base64加密,php马有eval,(base64_decode ($_POST[z0])),&z0=QGluaV9zZXQ
  • 蚁剑:以_0x 开头的参数名,@ini_set(“display_errors”,”0”)

  • 冰蝎:
    1、大量的 content-type:application,content-type 为 application/octet-stream。
    2、默认内置 16 个 ua,content-length 请求长度payload 都为定长。
    3、Accept头有application/xhtml+xmlapplication/xmlapplication/signed-exchange属于弱特征。

  • 哥斯拉:
    1、pass=eval(base64_decode…,pass=加密数据。
    2、user-agent,accept,accept-language 固定。

2、蜜罐原理

  • 创建虚拟环境:在网络中创建一个看似易受攻击的虚拟环境,该环境模拟真实系统的一部分或全部功能,包括应用程序、服务和操作系统。

  • 引诱攻击者:通过暴露蜜罐的存在,例如通过公开可访问的IP地址或虚假的网站,吸引攻击者主动尝试入侵、扫描或攻击蜜罐系统。

  • 监测和记录:一旦攻击者进入蜜罐系统,蜜罐会记录攻击者的行为、攻击技术和使用的工具。这些信息对于理解攻击者的策略和行为非常有价值。

  • 分析和响应:通过分析记录的数据,研究人员可以识别攻击者的行为模式、漏洞利用方法和漏洞的目标。这些信息可以用于改进真实系统的安全性,及时发现和应对新的威胁。

  • 蜜罐的优势在于能够提供高质量的攻击数据和情报,帮助安全团队更好地了解攻击者的行为模式和目的,加强防御措施并及时应对威胁。

  • 然而,蜜罐也需要专业人员来设计、部署和管理,以确保其安全性和有效性,并避免对真实系统造成潜在的风险。

3、fastjson反序列化

在请求包里面中发送恶意的json格式payload,漏洞在处理json对象的时候,没有对@type字段进行过滤,从而导致攻击者可以传入恶意的TemplatesImpl类,而这个类有一个字段就是bytecodes,有部分函数会根据这个bytecodes生成java实例,这就达到fastjson通过字段传入一个类,再通过这个类被生成时执行构造函数。

4、log4j2原理

Apache Log4j2中存在JNDI注入漏洞,主要原理是利用log4j2的日志输出jndi远程对象时,调用远程对象没做检查导致,程序将用户输入的数据进行日志记录时即可触发该漏洞并可在目 标服务器上执行任意代码。该漏洞利用过程需要找到一个能触发远程加载并应用配置的输入点,迫使服 务器远程加载和修改配置的前提下使目标系统通过JNDI远程获取数据库源,触发攻击者的恶意代码。

5、XXE漏洞原理

一般通过改包让目标去读取本地文件(如config.php)然后请求恶意xml,然后通过恶意xml去请求记录数据的跳板,最后通过跳板携带数据到记录点,完成一个获取数据的操作。

6、Struts2原理

用户提交表单数据并且验证失败时,后端会将用户之前提交的参数值使用 OGNL 表达式 %{value} 进行解析,然后重新填充到对应的表单数据中。例如注册或登录页面,提交失败后端一般会默认返回之前提交的数据,由于后端使用 %{value} 对提交的数据执行了一次 OGNL 表达式解析,所以可以直接构造 Payload 进行命令执行。

7、应急响应

  1. 检查系统账号安全
  2. 查看服务器是否有弱口令,远程管理端口是否对公网开放
  3. 查看服务器是否存在可疑账号、新增账号
  4. 查看服务器是否存在隐藏账号、克隆账号
  5. 检查异常端口、进程
  6. 检查启动项、计划任务、服务
  7. 查看可疑文件和目录
  8. 查看webshell创建的时间
  9. 等等等... 还没说完被叫停

8、内存马查杀&原理

java内存马原理:
通过在Java虚拟机(JVM)中运行的恶意代码,实现对被攻击者系统的远程控制。其原理是通过在Java虚拟机中注入特定的Java类、变量或方法等Java对象,然后在Java虚拟机中运行这些代码,实现对受害者机器的远程控制。
java内存马排查:
  1. 利用Java Agent技术遍历所有已经加载到内存中的class
  2. 先判断是否是内存马,是则进入内存查杀。
java内存马识别:
  1. 1filter名字很特别
  2. 2filter优先级是第一位
  3. 3,对比web.xml中没有filter配置
  4. 4,特殊classloader加载
  5. 5,对应的classloader路径下没有class文件
  6. 6FilterdoFilter方法中有恶意代码
java内存马清除:
  1. 1、清除内存马中的Filter的恶意代码,
  2. 2 模拟中间件注销Filter

接下来就问些其它的,项目上的问题

1、说一下你做项目时候挖到RCE没有,是怎么挖到的
2、你在项目上有挖到什么比较有意思的洞
3、做过溯源没有
4、技战法写过没有

  1. 这里写过就是写过,没写过就是没写过,别乱编

5、真实环境做过应急没有

没了,相关来讲比较简单,学好正式课还是能过的!加油!

 

原文始发于微信公众号(掌控安全EDU):面经分享 | 某安蓝队中级面经分享

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年10月10日21:54:00
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   面经分享 | 某安蓝队中级面经分享https://cn-sec.com/archives/1921881.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息