国誉2024初筛

用过什么安全设备

给你一个登录框,可能有什么漏洞

  • sql注入、xss、csrf、会话劫持

sql注入的类型

  • 字符、布尔、报错、时间盲注、联合、堆叠、宽字节、XFF

错误注入使用的方法有哪些

  • extractValue、updateXml、floor

宽字节注入的编码格式是什么

  • GBK

时间盲注不能使用工具或者脚本,怎么样注入较快

  • 尝试外带查询
  • 优化查询策略采用二分查找法
  • 简化数据集

sqlmap的level和risk有什么区别,level各个等级代表什么意思

  • –level和–risk是数字愈大级别越高,–level有1-5,–risk有1-3
  • level侧重点在于注入点。risk侧重点在于注入的方法和攻击者愿意承担的风险。
  • level默认等级会测试get和post请求中的参数。level2会测cookie。level3会测ua和refferer。level4-5会测各种payload和边界条件。
  • risk默认等级安全第一,风险低,只测默认的几种注入方法。risk2会尝试更多类型的注入,如时间盲注等。risk3会尝试更多方式的注入,有可能会更新数据库中的数据,使用时需要谨慎。

验证码有什么缺陷

img

一个企业需要做暴露面处理,需要注意哪些地方

  • 资产全面梳理
  • 网络分段和隔离
  • 开放端口号等
  • 供应链风险管理

什么是条件竞争型的文件上传,是怎么样导致的

  • 在某些文件上传情境中,后端代码会先保存我们所上传的文件,然后再检查我们上传的文件是否含有风险,如果有的话会被删除,这是我们就需要和删除函数(如unlink()函数)来进行时间与线程上的竞争,争取在删除文件之前访问到该文件,达到攻击效果。
  • 文件处理和文件保存之间存在时间差,且系统没有锁定文件的使用

csrf原理,验证token的目的

  • 原理:服务端没有对用户提交的数据进行随机值(token)校验,且队http请求包内的refer字段校验不严,导致攻击者可以利用用户的cookie信息伪造用户请求发送至服务器
  • 验证token是为了校验请求的合法性

事件查看器中出现了大量id为4525的事件

  • 4625为登陆失败的用户,表示可以在被爆破

  • 附常见的安全事件id:

    1074,通过这个事件ID查看计算机的开机、关机、重启的时间以及原因和注释。
    6005,表示计算机日志服务已启动,如果出现了事件ID为6005,则表示这天正常启动了系统。
    104,这个时间ID记录所有审计日志清除事件,当有日志被清除时,出现此事件ID。
    安全:
    4624,这个事件ID表示成功登陆的用户,用来筛选该系统的用户登陆成功情况。
    4625,这个事件ID表示登陆失败的用户。
    4720,4722,4723,4724,4725,4726,4738,4740,事件ID表示当用户帐号发生创建,删除,改变密码时的事件记录。
    4727,4737,4739,4762,事件ID表示当用户组发生添加、删除时或组内添加成员时生成该事件。

现在有一个服务器需要将ssh开放到公网上,如何进行加固

  • 修改配置禁止ssh直接登录root用户,改用公私钥形式
  • 修改默认ssh的22端口
  • 修改密码策略配置文件,加强密码设置规则,防止弱口令
  • 错误登录3次,锁定此账户5分钟
  • 禁止su非法提权,只允许root和wheel组用户su到root

mysql提权

udf提权和mof提权

  • UDF(User Defined Funtion)用户自定义函数
  • MOF提权:利用了C:\Windows\System32\wbem\MOF目录下的nullevt.mof文件

weblogic有什么漏洞

  • 反序列化、ssrf、任意文件上传、war后门文件部署

shiro反序列化有几种

  • 两种,shiro550、721
  • 原理:apache shiro框架提供了记住我的功能

cs应急(失陷主机通用)

  • 收集信息,收集客户信息和主机中cs shell后的信息
  • 抑制范围,隔离机器使受害面不扩大
  • 深入分析,日志,进程,启动项,样本分析
  • 清除处置,杀进程,删文件,打补丁,删除异常程序服务,清除后门账号
  • 静置观察,看看有无外联现象
  • 恢复生产、写报告

QT 2025HVV面试题

ssrf、csrf 区别和防御方法

SSRF(服务端请求伪造)

  • 原理:攻击者诱使服务器向内部或第三方系统发送恶意请求(如读取本地文件、探测内网)。
  • 防御
    • 输入校验(禁止内网IP、特殊协议如file://
    • 白名单域名/IP
    • 禁用非必要协议(如gopher://

CSRF(跨站请求伪造)

  • 原理:伪装成受信任用户请求受信任的网站。
  • 防御
    • Token机制(同源校验)
    • 二次认证(如短信验证)
    • 验证 Referer 字段

渗透测试流程

  1. 信息收集:Whois、子域名扫描(如Amass)、端口扫描(Nmap)。
  2. 漏洞探测:BurpSuite自动化扫描 + 手动测试(如逻辑漏洞)。
  3. 漏洞利用:Metasploit、定制化EXP(如Log4j)。
  4. 权限维持:Webshell/C2后门(如Cobalt Strike)。
  5. 内网横向:LLMNR/NBNS欺骗、Pass-the-Hash。
  6. 报告输出:风险等级(CVSS评分)、修复建议。

webshell工具流量特征

跳转到另外一篇文章 常见webshell的流量特征 | IceWindy’s Blog

Linux windows应急

Windows应急响应

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

    命令:lusrmgr.msc :检查是否有新增的可疑账号

    如果有管理群组的(Administrators)里的新增的,就直接删掉、或禁用

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

    • win+R :regedit 打开注册表,查看管理员对应键值

      结合日志,查看管理员登陆时间,用户名是否存在异常

    • Win+R:eventvwr.msc 打开 事件查看器

  3. 检查异常端口、进程

    netstat -ano 查看目前网络连接,定位可疑的 ESTABLISHED(正在通讯)

    根据 netstat 定位出的 pid,再通过 tasklist 命令进行进程定位

Linux应急响应

  1. 先做入侵排查:

    • 查看特权用户:awk -F: ‘$3==0 {print $1}’ /etc/passwd(判断uid是否为0)
    • 查看可以远程登录的账号信息:awk ‘^$1|$6{print $1}’ /etc/shadow
    • 查看拥有sudo 权限的其他用户:sudo more /etc/sudoers
    • 禁用可疑账号 :usermod -L
  2. 再查看历史命令:

    • 查看历史命令:history
    • 查看普通账号的历史命令:/home目录下的.bash_histoy
    • 清除历史记录:history -c(普通用户的需要手动删除)
    • 进入用户目录下,查看历史记录:cat.bash_history >> history.txt
  3. 查看端口、pid:

    • 使用 netstat 网络连接命令,分析可疑端口、IP、PID:netstat -antlp | mre
    • 查看pid所对应的进程文件路径,运行 ls -l /proc/$PID/exe
  4. 查看开机启动项

    • 启动项文件:

      more /etc/rc.local /etc/rc.d/rc

      ls -l /etc/rc.d/rc3.d/

内网渗透思路,内网应急

渗透思路

  1. 拓扑探测:nmap -sn
  2. 协议攻击:LLMNR/NBT-NS投毒(Responder)、SMB Relay攻击
  3. 权限提升:Windows本地提权(CVE-2024-1234)、Linux脏牛漏洞(CVE-2016-5195)
  4. 横向移动:Pass-the-Hash、Kerberoasting攻击

内网应急

  • 收集信息,收集客户信息和主机中cs shell后的信息
  • 抑制范围,隔离机器使受害面不扩大
  • 深入分析,日志,进程,启动项,样本分析
  • 清除处置,杀进程,删文件,打补丁,删除异常程序服务,清除后门账号
  • 静置观察,看看有无外联现象
  • 恢复生产、写报告

容器安全问题

  • 风险点:
    • 容器逃逸(CVE-2021-30465);
    • 未鉴权的Kubelet API(6443端口)。
    • Docker用户组提权
  • 防御:
    • 安全策略Pod Security Policy(PSP);
    • 镜像签名验证(Notary)。

内网渗透漏洞防御问题,不会就问web的问题

防御建议

  • 网络分段:VLAN隔离核心业务
  • 权限最小化:关闭域管账号本地登录权限
  • 日志集中化:部署态势感知平台分析异常流量

文件上传,sql注入等漏洞防御方法

文件上传

  • 上传到OSS,图片二次渲染
  • 文件自动重命名、隐藏上传路径
  • 文件内容检测

sql注入

  • 预编译 参数化查询
  • 后端输入验证和过滤:正则过滤等方法
  • 使用WAF拦截

内存马排查 (每个人都问)

  • 如果是jsp注入,日志中排查可疑jsp的访问请求。
  • 如果是代码执行漏洞,排查中间件的error.log,查看是否有可疑的报错,判断注入时间和方法
  • 根据业务使用的组件排查是否可能存在java代码执行漏洞以及是否存在过webshell,排查框架漏洞、反序列化漏洞。
  • 如果是servlet或者spring的controller类型,根据上报的webshell的url查找日志(日志可能被关闭,不一定有),根据url最早访问时间确定被注入时间。
  • 如果是filter或者listener类型,可能会有较多的404但是带有参数的请求,或者大量请求不同url但带有相同的参数,或者页面并不存在但返回200
  • 直接利用内存马检测工具去找,github也有很多检测脚本,手工的话可以分析web日志,filter或者listener类型的内存马,会有大量路径相同参数不同的url请求,或者页面不存在但是返回200的请求,分析web.xml文件,内存马的Filter是动态注册的,web.xml是没有配置的,也有可能是中间件漏洞通过代码执行加载内存马,这就可以去排查中间件的错误日志,像哥斯拉和冰蝎的内存马也会有跟webshell相似的特征,分析特殊的classloader加载,攻击者喜欢利用TemplatesImpl和bcel加载内存马,因为内存马是驻留在内存里的,本地无class文件,通过检测Filter对应的ClassLoader目录下是否存在class文件来判断,也可以把内存中所有的Filter的class dump出来,使用工具分析是否存在恶意代码

0day怎么应急处置

  • 封禁外联ip(最优先处理方法)

  • 收集信息,收集客户信息和主机中cs shell后的信息

  • 抑制范围,隔离机器使受害面不扩大

  • 深入分析,日志,进程,启动项,样本分析

  • 清除处置,杀进程,删文件,打补丁,删除异常程序服务,清除后门账号

  • 静置观察,看看有无外联现象

  • 恢复生产、写报告

国誉2025初筛

  • 去年参加过几次护网,用过哪些设备

    天眼 NGSOC态势感知 椒图 腾讯天幕 长亭谛听 锦行蜜罐

  • 假设一个厂商要参加护网,它可能会用到哪几类的安全设备

    IPS/IDS WAF 态势感知 全流量威胁检测(天眼) 蜜罐 ADS(防DDOS)等

  • 假如你收到一个告警,你要通过哪几个点来判断攻击是否成功

    告警危害等级 状态码 返回数据包

  • 企业中常见的集权系统

    AD域 k8s vCenter

  • 前端JS代码可能出现哪些漏洞

    DOM型XSS、接口泄露、前端越权、密钥硬编码、CDN劫持

  • SSRF能通过哪些协议探测内网,gopher协议怎么利用

    • HTTP/HTTPS file dict gopher ftp等
    • gopher://ip:port/_TCP/IP数据流
  • mysql配置参数secure_file_priv功能是什么

    限制导入和导出的数据目录

  • 通过mysql注入去读一个文件的前提条件是什么

    image-20250521125728950

  • 网站的绝对路径要怎么获取

    尝试使用phpinfo一类

  • 怎么导致的CSRF漏洞

    • 原理:服务端没有对用户提交的数据进行随机值(token)校验,且队http请求包内的refer字段校验不严,导致攻击者可以利用用户的cookie信息伪造用户请求发送至服务器
    • 验证token是为了校验请求的合法性
  • 条件竞争型文件上传漏洞

    • 在某些文件上传情境中,后端代码会先保存我们所上传的文件,然后再检查我们上传的文件是否含有风险,如果有的话会被删除,这是我们就需要和删除函数(如unlink()函数)来进行时间与线程上的竞争,争取在删除文件之前访问到该文件,达到攻击效果。
    • 文件处理和文件保存之间存在时间差,且系统没有锁定文件的使用
  • 拿到一个EXE的样本文件,如何提取外联地址

    丢微步沙箱看外联

  • XSS能进行哪些攻击,有哪些冷门的XSS

  • SSTI模板注入是什么

    服务端接收了用户的恶意输入以后,未经任何处理就将其作为 Web 应用模板内容的一部分

    https://www.cnblogs.com/bmjoker/p/13508538.html

  • 现在有一个PHP的本地文件包含,但是没有文件上传点,我还想通过这个本地文件包含去Get Shell,有什么利用思路

    通过修改User-Agent或URL向Web Log文件写入shell,然后包含Log

  • cookie和session的区别

    • Seesion存储在服务端,Cookie存储在客户端
    • Seesion有效期比较短,仅单次会话,Cookie可以设置较长有效期
    • Seesion可存储的数据远高于Cookie,单个Cookie保存数据不能超过4K
    • https://developer.aliyun.com/article/1358589
  • Windows服务器出现大量ID4625安全日志

    4625是登录失败,可能正在被爆破

  • Linux怎么查看SSH登录失败的记录

    • debian/ubuntu:/var/log/auth.log
    • CentOS/RHEL:/var/log/secure
    • lastb命令
  • 在Linux上面有没有什么统计Web日志比较好用的命令组合,比如我要统计某个时间段,什么IP访问量最高

    1
    2
    3
    4
    5
    # 统计2024-06-01 10:00到12:00的访问IP Top 10
    grep "01/Jun/2024:10:[0-5][0-9]" /var/log/nginx/access.log | \
    awk '{print $1}' | \
    sort | uniq -c | sort -nr | \
    head -10
  • Linux密码存在哪个文件里面

    /etc/shadow

  • 域名中的SPF设置作用

    为了防止随意伪造发件人。原理是域名SPF记录设置允许IP为设置的IP的主机发送邮件,邮件服务器会去查询SPF记录查看是否合法

    https://www.renfei.org/blog/introduction-to-spf.html

  • RCE无回显怎么判断命令是否执行成功

    DNSLog、sleep或ping产生延迟、curl请求外带

  • WebLogic有哪些攻击面

    T3反序列化、SSRF、war包提权

  • Shiro反序列化

  • Mysql提权原理

    https://www.freebuf.com/articles/web/264790.html

  • 假设你是一家企业的安全负责人,对钓鱼邮件这种攻击有什么防御手段

  • SSH服务安全加固

  • CS Shell应急排查思路

  • Java内存劫持类型,查杀过程

  • 往年的护网经历

  • 假如有一台阿里云服务器存在SSRF漏洞,请问你有什么利用思路

    利用元数据获取临时凭证,尝试接管控制台

    https://www.cnblogs.com/backlion/p/17081117.html

  • Java怎么连接数据库

    JDBC、ORM框架

  • Java序列化后的二进制数据有什么特征

  • 假如你获取到一个网站的后台,这个后台功能有很多,基本上你能想到的他都有,讲一讲你获取shell的思路

    • 文件上传功能
    • 数据库备份/导入
    • 模板/主题编辑(适用于CMS)
    • 安装恶意插件
    • 已有插件代码注入(适用于自定义代码插件)
    • 修改网站配置(config.php .env等配置文件)
    • 命令注入绕过(适用于有ping测试等功能)
    • 计划任务注入反弹shell

几乎都会问的

sqlmap参数

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
-v                  日志输出级别(0~6,默认1)
-u url 指定url
--data=DATA 该参数指定的数据会被作为POST数据提交
-r file.txt 常用于POST注入或表单提交时注入
--cookie 设置cookie
--threads 指定线程并发数
--prefix 指定前缀
--suffix 指定后缀(这俩用于在注入的payload前后加一些字符,以此保证payload的正常运行)
--level 检测级别(1~5,默认1)
--risk 风险等级(1~4,默认1)
--banner 列举数据库系统的信息等
--current-user 输出当前用户
--current-db 输出当前所在数据库
--hostname 输出服务器主机名
--is-dba 检测当前用户是否为管理员
--users 输出数据库系统的所有用户
--dbs 输出数据库系统的所有数据库
-D DB 指定数据库
--tables 在-D情况下输出库中所有表名
-T table 在-D情况下指定数据表
--columns 在-D -T情况下输出表中所有列名
-C column 在-D -T情况下输出某列数据的值
--dump 拉取数据存放到本地
--dump-all 拉取所有可访问数据存放到本地
--count 输出数据条目数量
--search 搜索数据库名、表明、列名,需要与-D -T或-C 联用
--sql-query 执行任意的SQL语句
--sql-shell 使用交互式SQL语句执行环境
--flie-read 读取文件
--file-write 上传文件(指定本地路径)
--file-dest 上传文件(指定目标机器路径)
--os-cmd 执行任意系统命令
--os-shell 使用交互式shell执行命令

内存马排查

https://forum.butian.net/share/3774

安恒

  • HW项目经验和技术能力介绍

  • shiro反序列化正确和不正确密钥的流量特征

    • 命令执行攻击成功:回显$$包含Base64的执行结果,响应码200

      image-20250604200531951

    • 正确密钥返回包

      image-20250604200507780

    • 不正确密钥流量特征:`rememberMe=deleteMe

      image-20250604200417418

    • 更具体参照:https://www.freebuf.com/vuls/415408.html

  • fastjson常见字符

    @type、Java类名

  • fastjson反序列化漏洞原理

    fastjson解析客户端发送过来的json的时候,由于AutoType功能,fastjson会通过读取@type的内容,尝试将json反序列化成这个对象,并且会调用这个类的setter方法。可以利用这个特性,构造出一个JSON字符串,使用@type指定一个可以构造恶意利用链的类,造成远程代码执行。

  • log4j2漏洞流量特征

    • ${jndi:...},协议关键字ldap://rmi://dns://
    • 攻击成功后可能会有,JNDI lookup successful${env:os.name}${env:hostname}等动态信息
  • webshell管理工具,冰蝎或者哥斯拉的流量特征

    https://www.icewindy.cn/2024/03/18/菜刀、蚁剑、冰蝎、哥斯拉的流量特征/

  • Linux应急处置思路

  • 内存马清理思路

    • 查看web日志:请求特征、响应特征有无异常
    • 在设备上封锁外联ip
    • 排查内存马:https://mp.weixin.qq.com/s/072NxRT-stFi7nhDuP5Z4Q
    • 清理内存马:重启(客户允许条件下)、热修复(用Arthas使用Java Agent技术进行热修复)
  • 钓鱼邮件事件怎么溯源

  • 对于一个ip,说出溯源取证思路

    https://www.ddosi.org/ip-address-tracing/

  • 微信钓鱼,拿到了对方微信,怎么通过微信进一步溯源

  • 外网监测出现大量webshell连接告警,但是没有程序落地,有什么思路排查

  • 内存马排查可以排查哪些日志

    web日志、error.log

  • windows影子账号怎么查

    HEKY_LOCAL_MACHINE\SAM\SAM\Domains\Account\User

  • php webshell, body中有哪些特征

    system、eval、exec、shell_exec

  • jboss有哪些历史漏洞和相关的接口

  • weblogic反序列化漏洞原理

  • cs流量特征

    https://www.ddosi.org/cobaltstrike/

    https://lexsd6.github.io/2025/04/27/CobaltStrike流量分析-玄机靶场/

  • Linux查找24小时内更改过的文件

    find /<directory> -newermt "-24 hours" -ls