安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
目录
腾讯[实习]玄武实验室-安全工程师
1. 自我介绍 2. 讲解一下CSRF原理吧 3. 什么时候接触web安全的 4. 为什么学WEB安全 5. 参加过哪些比赛 6. 你发挥了那行作用 7. 讲讲反序列化吧 8. 说一说最近你关注的安全圈大事 9. 那你说说你遇到最优印象的吧 10. 我看你简历上有黑盒测试 说一说吧 - 一个是钱包的测试 一个是交易所的测试,钱包主要是信息泄露,水平越权 11. 怎么发现的 - 信息泄露是webpack可以直接查看api 等调用信息,水平越权是构造josn包返回了用户数据账户密码之类的 12. 怎么构造的 13. 那继续说说交易所 14. (区块链相关)讲一讲逆向函数涉及到的接收参数的指令集 15. 说说重入漏洞 16. 有对最近那个最大的区块链安全事件有了解吗 17. 好,那你对密码学有什么接触嘛 18. 我看你简历有许多对Defi的审计,那你有什么对漏洞的挖掘的经验吗 19. 嗯好 那现在我问你个问题 你思考下 在DEFI项目中建立了各种各样的经济模型 怎样才能找出可能存在的漏洞 20. 讲讲你对未来可能出现的新型漏洞的猜想吧 21. 有一种 游戏在猜对正确答案后可获得奖励 22. 反问
1. 自我介绍
我是专注于Web安全与区块链安全的工程师,具备3年渗透测试与智能合约审计经验。擅长黑盒/白盒测试、漏洞挖掘(尤其DeFi方向),独立审计过20+个智能合约项目,发现高危漏洞17个,累计挽回潜在损失超$300万。熟悉密码学应用与底层攻击手法。
2. CSRF原理
核心逻辑:利用用户已登录的合法身份,诱导其执行非预期操作。
攻击流程:
- 用户登录:受害者登录信任网站(如银行),会话Cookie有效。
- 恶意诱导:攻击者构造含恶意请求的链接/页面(如转账链接),诱使用户点击。
- 伪造请求:浏览器自动携带用户Cookie发送请求,服务器误判为合法操作。
防御方案:
- Token验证:请求需携带服务端生成的随机Token(如
CSRF-Token
)。- 同源检测:校验
Origin
或Referer
头。- 关键操作二次验证(如短信/密码确认)。
3. Web安全入门时间
2019年参与高校CTF竞赛(如强网杯)时首次接触SQL注入与XSS漏洞,系统学习Web安全始于2020年实习期间参与企业SRC漏洞挖掘项目。
4. 学习Web安全的原因
- 攻防博弈的挑战性:漏洞挖掘是逻辑与创造力的双重对抗。
- 区块链安全需求爆发:DeFi漏洞导致单次损失可达数亿美元(如Poly Network被黑事件)。
- 防御体系构建:从攻击者视角设计更健壮的防护机制。
5. 参与的比赛
比赛名称 类型 成绩 DEFCON CTF 国际决赛 团队Top 20 Tianfu Cup 攻防赛 一等奖 GeekPwn 智能设备破解 最佳漏洞奖
6. 个人角色与贡献
- 漏洞挖掘主力:发现关键漏洞占团队总提交量的40%(如Fastjson反序列化0day)。
- 区块链攻防设计:设计智能合约挑战题(如重入攻击+预言机操纵组合)。
- 自动化工具开发:编写EVM字节码分析脚本,提升审计效率3倍。
7. 反序列化漏洞
原理:
当程序将不可信的序列化数据(如JSON/XML)还原为对象时,若未严格校验,攻击者可构造恶意数据触发危险操作(如RCE)。
典型案例:
- Java反序列化:利用
InvokerTransformer
执行系统命令(CommonsCollections链)。- PHP反序列化:通过
__destruct()
或__wakeup()
魔术方法触发文件删除。
防御方案:- 禁用危险类(如Java的
ObjectInputStream
过滤器)。- 使用安全序列化协议(如Protocol Buffers)。
8. 近期安全圈大事
事件:Curve Finance被黑(2024年7月)
- 损失金额:$6200万
- 漏洞类型:重入攻击 + 预言机价格操纵
- 根本原因:
vyper
编译器缺陷导致重入锁失效,攻击者反复提取抵押资产。- 行业影响:引发对DeFi底层编译器安全性的全面审计浪潮。
9. 印象最深的安全事件
Poly Network跨链桥攻击(2021年,损失$6.1亿)
- 攻击手法:合约管理员权限劫持(私钥泄露?后门?至今未公开)。
- 戏剧性转折:攻击者最终归还资金,暴露中心化私钥管理风险。
- 启示:跨链项目需实现多签+动态权限分割机制。
10. 黑盒测试实战案例
案例1:加密货币钱包(信息泄露)
- 漏洞:Webpack未混淆API调用路径
- 发现过程:
- 浏览器调试模式查看
/static/js/app.[hash].js
源码。- 搜索
/api/user
路径,发现未授权访问用户信息的接口:javascript
axios.get('/api/user/profile?user_id=123') // 返回用户明文手机号
- 利用效果:遍历
user_id
可批量获取用户敏感信息。案例2:交易所(水平越权)
- 漏洞:JSON响应包含超权限数据
- Payload构造:
- 正常请求:
POST /trade/order {order_id: "10001"}
- 篡改响应(Burp拦截修改):
json
{ "code": 200, "data": { "user_info": { "uid": "victim_uid", "api_key": "xxxxxx" // 不应返回的数据 } } }
- 风险:攻击者可盗取他人API密钥进行恶意交易。
14. 智能合约逆向:函数参数与指令集
以太坊EVM关键指令:
指令 作用 参数示例 CALLVALUE
获取调用者转账金额 msg.value
CALLDATALOAD
读取调用数据 calldata[0:32]
SSTORE
修改存储槽 sstore(0, 1)
参数解析流程:
- 函数选择器:
calldata[0:4] = keccak256("transfer(address,uint256)")
- 参数按32字节分割:
address
→calldata[4:36]
(需截断为20字节)uint256
→calldata[36:68]
15. 重入漏洞(Reentrancy)
攻击场景:
solidity
function withdraw() public { uint balance = balances[msg.sender]; require(msg.sender.call.value(balance)(""); // ❌ 先转账后更新状态 balances[msg.sender] = 0; }
攻击合约:
solidity
function attack() public payable { target.withdraw(); } fallback() external payable { if (address(target).balance > 0) { target.withdraw(); // 递归调用直至耗尽资金 } }
防御方案:
- 使用
Checks-Effects-Interactions
模式(先更新状态再转账)。- 引入重入锁(如OpenZeppelin的
ReentrancyGuard
)。
16. 近期最大区块链安全事件
事件:Sonne Finance被黑(2025年3月,损失$2000万)
- 漏洞类型:时间锁绕过 + 利率操纵
- 攻击链:
- 利用治理提案的时间锁漏洞提前执行恶意提案。
- 操纵抵押资产的预言机价格,制造坏账。
- 行业教训:DeFi协议需隔离关键模块(如治理/预言机/清算逻辑)。
17. 密码学应用经验
- 非对称加密:审计中验证椭圆曲线签名(如以太坊的
secp256k1
)。- 零知识证明:调试zk-SNARK电路(如Groth16证明系统)。
- 误用案例:某项目用
SHA256
代替HMAC
做API签名,导致长度扩展攻击。
18. DeFi漏洞挖掘经验
代表性漏洞:
漏洞类型 项目 损失规避 闪电贷价格操纵 AMM DEX $150万 治理权限逃逸 DAO平台 全协议接管风险 抵押品清算逻辑缺陷 借贷协议 $80万
19. DeFi经济模型漏洞挖掘方法论
四维审计框架:
- 激励一致性
- 检查用户行为激励是否与协议目标冲突(如流动性挖矿导致抛压)。
- 状态机完备性
- 验证所有资金流状态转换(如存款/借款/清算)是否闭环。
- 外部依赖风险
- 预言机延迟攻击、抵押品价格波动极值测试。
- 博弈论模拟
- 构建多角色模型(普通用户/套利者/攻击者),推演极端场景。
20. 未来新型漏洞猜想
方向1:AI+安全交叉漏洞
- 模型投毒攻击:污染DeFi利率模型训练数据,操纵贷款决策。
- 对抗样本攻击:生成欺骗KYC人脸识别的图像。
方向2:ZK硬件加速漏洞
- GPU/FPGA加速的ZK证明生成器中,侧信道攻击泄露证明密钥。
方向3:跨链原子交易缺陷
- 不同链交易确认时间差导致的中间状态劫持(如BTC慢确认 vs Solana快确认)。
21. 游戏答题奖励漏洞分析
潜在风险:
- 答案预测攻击:若答案链上可预测(如区块哈希),攻击者提前提交。
- 女巫攻击:伪造多个账号答题,耗尽奖池。
安全设计建议:- 答案由链下可信预言机(如Chainlink VRF)提交。
- 引入答题成本(如Gas费)与频率限制。
22. 反问
- 团队技术栈:当前智能合约审计是否引入形式化验证(如Certora)?
- 漏洞响应机制:发现高危漏洞后的应急流程与时间要求?
- 攻防演进:是否有内部红蓝对抗演练提升防御体系?