2025年渗透测试面试题总结-14(题目+回答)

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

目录

[九十一、Android APP 逆向分析步骤](#九十一、Android APP 逆向分析步骤)

九十二、SQL注入分类

九十三、SQL注入防御

九十四、序列化与反序列化

九十五、常见中间件漏洞

九十六、内网渗透思路

[九十七、OWASP Top 10 漏洞(2021版)](#九十七、OWASP Top 10 漏洞(2021版))

九十九、WebShell工具对比

复制代码
九十一、Android APP 逆向分析步骤一般是怎么样的?

九十二、sql 注入 的分类?

九十三、sql 注入的预防?

九十四、序列化与反序列化的区别

九十五、常见的中间件漏洞?

九十六、内网渗透思路?

九十七、OWASP Top10 有哪些漏洞

九十八、正向代理和反向代理的区别

九十九、蚁剑/菜刀/C 刀/冰蝎的相同与不相同之处

一百、正向 SHELL 和反向 SHELL 的区别

九十一、Android APP 逆向分析步骤

Android逆向分析通常分为以下阶段:

  1. 环境准备
    • 工具链:APKTool(反编译)、Jadx/Ghidra(代码分析)、Frida/Xposed(动态Hook)、Android Studio(调试)。
    • 测试环境:Root手机/模拟器(如Genymotion)、网络抓包工具(Wireshark/Charles)。
  2. 静态分析
    • 解包资源 :使用APKTool解压APK,获取AndroidManifest.xml 、资源文件、classes.dex
    • 代码反编译
      • 将Dex转为Smali(APKTool)或Java伪代码(Jadx)分析逻辑。
      • 搜索关键字符串(如URL、加密关键字)定位入口点。
  3. 动态调试
    • 行为监控:抓取网络请求、文件操作、日志输出。
    • 运行时Hook
      • 使用Frida Hook Java/Native层函数,修改参数或返回值。
      • Xposed修改APP行为(如绕过证书校验)。
  4. 脱壳与对抗
    • 针对加壳APP:内存Dump(Frida脚本)、调试SO文件(IDA Pro)获取原始Dex[[3,4,()]]。
    • 反反调试:修改ro.debuggable 属性、Hook ptrace函数。
  5. 代码修改与重打包
    • 修改Smali代码(如破解验证逻辑) → 用APKTool重打包 → 签名安装测试。

案例参考:某点评APP登录加密逆向中,通过Hook OutputStream定位加密函数,结合静态分析破解AES密钥。


九十二、SQL注入分类

类型 原理说明 示例片段
联合查询注入 利用UNION拼接恶意查询 ' UNION SELECT 1,user()--
报错注入 触发数据库报错泄露信息 ' AND updatexml(1,concat(0x7e,user()),1)--
布尔盲注 根据页面真假状态推断数据 ' AND (SELECT substring(version(),1,1))='5'--
时间盲注 通过延时响应判断条件成立 ' IF (1=1) WAITFOR DELAY '0:0:5'--
堆叠查询 执行多条SQL语句(需数据库支持) '; DROP TABLE users--

九十三、SQL注入防御

  1. 参数化查询(预编译)

    复制代码
    javaPreparedStatement stmt = conn.prepareStatement("SELECT * FROM users WHERE id=?"); stmt.setInt(1, userId); // 参数自动转义 
  2. 输入过滤与白名单

    • 过滤特殊字符(如';),但避免依赖黑名单。
    • 对数字参数强制类型转换。
  3. 最小权限原则

    • 数据库账户禁止DROPFILE等高危权限。
  4. 启用WAF

    • 配置规则拦截UNIONSELECT等敏感关键字。
  5. 错误信息处理

    • 关闭数据库详细报错,返回通用错误页。

九十四、序列化与反序列化

对比项 序列化(Serialization) 反序列化(Deserialization)
目的 对象 → 字节流/文本(便于存储传输) 字节流/文本 → 对象(重建数据结构)
常见格式 JSON、XML、Protobuf、Java序列化 同左
安全风险 可能暴露敏感数据 高危漏洞 :攻击者构造恶意数据触发RCE(如Java的readObject
防御措施 加密敏感字段 使用安全库(如Jackson)、校验数据签名、禁止反序列化不可信数据

九十五、常见中间件漏洞

  1. Apache Tomcat
    • 漏洞举例
      • CVE-2020-1938(Ghostcat):AJP协议文件读取/包含。
      • Manager后台弱口令部署WAR木马。
  2. Nginx
    • 配置错误导致路径遍历(alias指令误用)、CRLF注入。
  3. WebLogic
    • 反序列化RCE(CVE-2018-2894)、T3协议漏洞。
  4. FastCGI(PHP-FPM)
    • 未授权访问可执行任意代码(需结合SCRIPT_FILENAME参数利用)。

防御:及时更新补丁、禁用高危协议(如WebLogic的T3)、最小化后台权限8


九十六、内网渗透思路

复制代码
mermaidgraph LR A[信息收集] --> B[权限提升] B --> C[横向移动] C --> D[权限维持]
  1. 信息收集
    • 网段扫描(Nmap)、ARP欺骗、DNS记录查询。
    • 提取密码(浏览器缓存、Mimikatz抓取域控Hash)6
  2. 权限提升
    • 本地提权(内核漏洞如Dirty Cow)、服务配置错误(如MySQL以System权限运行)。
  3. 横向移动
    • 利用PsExec/WMI远程执行、Pass-the-Hash攻击、SMB中继。
  4. 权限维持
    • 创建隐藏计划任务、添加后门账户、部署C2隧道(如Frp)5

九十七、OWASP Top 10 漏洞(2021版)

  1. 访问控制失效(Broken Access Control)
  2. 加密机制失效(Cryptographic Failures)
  3. 注入漏洞(SQL/OS命令/模板注入等)
  4. 不安全设计(设计层面缺陷)
  5. 安全配置错误(如默认密码、调试页暴露)
  6. 危险组件漏洞(含已知漏洞的第三方库)
  7. 身份认证缺陷(弱口令、会话固定)
  8. 软件和数据完整性失效(未校验更新包来源)
  9. 安全日志缺失(无法追溯攻击行为)
  10. 服务端请求伪造(SSRF)


九十九、WebShell工具对比

工具 通信加密 协议支持 特点
菜刀 无(明文传输) HTTP 经典但易被检测,支持基础功能
蚁剑 AES/自定义加密 HTTP/WebSocket 插件化、跨平台,适合扩展开发
冰蝎 动态密钥AES HTTP/HTTPS 流量伪装强,绕过常见WAF规则
C刀 RSA+AES HTTP 专为中国红队优化,集成提权模块

冰蝎的动态密钥机制使其成为当前最难检测的工具。