HVV面试题
国誉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会尝试更多方式的注入,有可能会更新数据库中的数据,使用时需要谨慎。
验证码有什么缺陷

一个企业需要做暴露面处理,需要注意哪些地方
- 资产全面梳理
- 网络分段和隔离
- 开放端口号等
- 供应链风险管理
什么是条件竞争型的文件上传,是怎么样导致的
- 在某些文件上传情境中,后端代码会先保存我们所上传的文件,然后再检查我们上传的文件是否含有风险,如果有的话会被删除,这是我们就需要和删除函数(如
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提权
- MySQL提权的三种方法 - FreeBuf网络安全行业门户
- 必要条件:mysql具有root权限、具有执行sql语句的权限
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://
)
- 输入校验(禁止内网IP、特殊协议如
CSRF(跨站请求伪造)
- 原理:伪装成受信任用户请求受信任的网站。
- 防御:
- Token机制(同源校验)
- 二次认证(如短信验证)
- 验证 Referer 字段
渗透测试流程
- 信息收集:Whois、子域名扫描(如Amass)、端口扫描(Nmap)。
- 漏洞探测:BurpSuite自动化扫描 + 手动测试(如逻辑漏洞)。
- 漏洞利用:Metasploit、定制化EXP(如Log4j)。
- 权限维持:Webshell/C2后门(如Cobalt Strike)。
- 内网横向:LLMNR/NBNS欺骗、Pass-the-Hash。
- 报告输出:风险等级(CVSS评分)、修复建议。
webshell工具流量特征
跳转到另外一篇文章 常见webshell的流量特征 | IceWindy’s Blog
Linux windows应急
Windows应急响应
-
查看服务器是否存在可疑账号、新增账号
命令:lusrmgr.msc :检查是否有新增的可疑账号
如果有管理群组的(Administrators)里的新增的,就直接删掉、或禁用
-
查看服务器是否存在隐藏账号、克隆账号
-
win+R :regedit 打开注册表,查看管理员对应键值
结合日志,查看管理员登陆时间,用户名是否存在异常
-
Win+R:eventvwr.msc 打开 事件查看器
-
-
检查异常端口、进程
netstat -ano 查看目前网络连接,定位可疑的 ESTABLISHED(正在通讯)
根据 netstat 定位出的 pid,再通过 tasklist 命令进行进程定位
Linux应急响应
-
先做入侵排查:
- 查看特权用户:awk -F: ‘$3==0 {print $1}’ /etc/passwd(判断uid是否为0)
- 查看可以远程登录的账号信息:awk ‘^$1|$6{print $1}’ /etc/shadow
- 查看拥有sudo 权限的其他用户:sudo more /etc/sudoers
- 禁用可疑账号 :usermod -L
-
再查看历史命令:
- 查看历史命令:history
- 查看普通账号的历史命令:/home目录下的.bash_histoy
- 清除历史记录:history -c(普通用户的需要手动删除)
- 进入用户目录下,查看历史记录:cat.bash_history >> history.txt
-
查看端口、pid:
- 使用 netstat 网络连接命令,分析可疑端口、IP、PID:netstat -antlp | mre
- 查看pid所对应的进程文件路径,运行 ls -l /proc/$PID/exe
-
查看开机启动项
-
启动项文件:
more /etc/rc.local /etc/rc.d/rc
ls -l /etc/rc.d/rc3.d/
-
内网渗透思路,内网应急
渗透思路
- 拓扑探测:
nmap -sn
- 协议攻击:LLMNR/NBT-NS投毒(Responder)、SMB Relay攻击
- 权限提升:Windows本地提权(CVE-2024-1234)、Linux脏牛漏洞(CVE-2016-5195)
- 横向移动: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后的信息
-
抑制范围,隔离机器使受害面不扩大
-
深入分析,日志,进程,启动项,样本分析
-
清除处置,杀进程,删文件,打补丁,删除异常程序服务,清除后门账号
-
静置观察,看看有无外联现象
-
恢复生产、写报告