HW面试经验分享 | 某安蓝队中级

2024-04-11 05:28

本文主要是介绍HW面试经验分享 | 某安蓝队中级,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

先说结论(通过,只有一面)某安比较容易,问的也比较正常

1、webshell流量特征

 
  1. 菜刀:base64加密,php马有eval,(base64_decode ($_POST[z0])),&z0=QGluaV9zZXQ

  2. 蚁剑:以_0x 开头的参数名,@ini_set("display_errors","0")

  3. 冰蝎:

  4. 1、大量的 content-type:application,content-type 为 application/octet-stream。

  5. 2、默认内置 16 个 ua,content-length 请求长度payload 都为定长

  6. 3、Accept头有application/xhtml+xmlapplication/xmlapplication/signed-exchange属于弱特征

  7. 哥斯拉:

  8. 1、pass=eval(base64_decode...,pass=加密数据

  9. 2、user-agent,accept,accept-language 固定

2、蜜罐原理

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

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

  3. 监测和记录:一旦攻击者进入蜜罐系统,蜜罐会记录攻击者的行为、攻击技术和使用的工具。

  4. 这些信息对于理解攻击者的策略和行为非常有价值。

  5. 分析和响应:通过分析记录的数据,研究人员可以识别攻击者的行为模式、漏洞利用方法和漏洞的目标。

  6. 这些信息可以用于改进真实系统的安全性,及时发现和应对新的威胁。

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

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

3、fastjson反序列化

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

4、log4j2原理

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

5、XXE漏洞原理

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

6、Struts2原理

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

7、应急响应

 
  1. 检查系统账号安全

  2. 查看服务器是否有弱口令,远程管理端口是否对公网开放

  3. 查看服务器是否存在可疑账号、新增账号

  4. 查看服务器是否存在隐藏账号、克隆账号

  5. 检查异常端口、进程

  6. 检查启动项、计划任务、服务

  7. 查看可疑文件和目录

  8. 查看webshell创建的时间

  9. 等等等... 还没说完被叫停

8、内存马查杀&原理

 
  1. java内存马原理:通过在Java虚拟机(JVM)中运行的恶意代码,实现对被攻击者系统的远程控制。其原理是通过在Java虚拟机中注入特定的Java类、变量或方法等Java对象,然后在Java虚拟机中运行这些代码,实现对受害者机器的远程控制

  2. java内存马排查:

  3. 利用Java Agent技术遍历所有已经加载到内存中的class。

  4. 先判断是否是内存马,是则进入内存查杀。

  5. 识别:1,filter名字很特别 2,filter优先级是第一位 3,对比web.xml中没有filter配置

  6. 4,特殊classloader加载 5,对应的classloader路径下没有class文件 7,Filter的doFilter方法中有恶意代码

  7. 清除:1、清除内存马中的Filter的恶意代码,2、 模拟中间件注销Filter

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

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

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

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

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

 声明:⽂中所涉及的技术、思路和⼯具仅供以安全为⽬的的学习交流使⽤,任何⼈不得将其⽤于⾮法⽤途以及盈利等⽬的,否则后果⾃⾏承担。所有渗透都需获取授权

免费领取安全学习资料包!


渗透工具

技术文档、书籍

面试题

帮助你在面试中脱颖而出

视频

基础到进阶

环境搭建、HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等

应急响应笔记

学习路线

这篇关于HW面试经验分享 | 某安蓝队中级的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/893187

相关文章

Python虚拟环境与Conda使用指南分享

《Python虚拟环境与Conda使用指南分享》:本文主要介绍Python虚拟环境与Conda使用指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python 虚拟环境概述1.1 什么是虚拟环境1.2 为什么需要虚拟环境二、Python 内置的虚拟环境工具

Python处理大量Excel文件的十个技巧分享

《Python处理大量Excel文件的十个技巧分享》每天被大量Excel文件折磨的你看过来!这是一份Python程序员整理的实用技巧,不说废话,直接上干货,文章通过代码示例讲解的非常详细,需要的朋友可... 目录一、批量读取多个Excel文件二、选择性读取工作表和列三、自动调整格式和样式四、智能数据清洗五、

JDK9到JDK21中值得掌握的29个实用特性分享

《JDK9到JDK21中值得掌握的29个实用特性分享》Java的演进节奏从JDK9开始显著加快,每半年一个新版本的发布节奏为Java带来了大量的新特性,本文整理了29个JDK9到JDK21中值得掌握的... 目录JDK 9 模块化与API增强1. 集合工厂方法:一行代码创建不可变集合2. 私有接口方法:接口

电脑系统Hosts文件原理和应用分享

《电脑系统Hosts文件原理和应用分享》Hosts是一个没有扩展名的系统文件,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应... Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应

SpringBoot请求参数接收控制指南分享

《SpringBoot请求参数接收控制指南分享》:本文主要介绍SpringBoot请求参数接收控制指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring Boot 请求参数接收控制指南1. 概述2. 有注解时参数接收方式对比3. 无注解时接收参数默认位置

数据库面试必备之MySQL中的乐观锁与悲观锁

《数据库面试必备之MySQL中的乐观锁与悲观锁》:本文主要介绍数据库面试必备之MySQL中乐观锁与悲观锁的相关资料,乐观锁适用于读多写少的场景,通过版本号检查避免冲突,而悲观锁适用于写多读少且对数... 目录一、引言二、乐观锁(一)原理(二)应用场景(三)示例代码三、悲观锁(一)原理(二)应用场景(三)示例

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

Python解析器安装指南分享(Mac/Windows/Linux)

《Python解析器安装指南分享(Mac/Windows/Linux)》:本文主要介绍Python解析器安装指南(Mac/Windows/Linux),具有很好的参考价值,希望对大家有所帮助,如有... 目NMNkN录1js. 安装包下载1.1 python 下载官网2.核心安装方式3. MACOS 系统安

Java嵌套for循环优化方案分享

《Java嵌套for循环优化方案分享》介绍了Java中嵌套for循环的优化方法,包括减少循环次数、合并循环、使用更高效的数据结构、并行处理、预处理和缓存、算法优化、尽量减少对象创建以及本地变量优化,通... 目录Java 嵌套 for 循环优化方案1. 减少循环次数2. 合并循环3. 使用更高效的数据结构4

Python中常用的四种取整方式分享

《Python中常用的四种取整方式分享》在数据处理和数值计算中,取整操作是非常常见的需求,Python提供了多种取整方式,本文为大家整理了四种常用的方法,希望对大家有所帮助... 目录引言向零取整(Truncate)向下取整(Floor)向上取整(Ceil)四舍五入(Round)四种取整方式的对比综合示例应