安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
目录
2025年HW(护网面试) 05
1、算法?了解过什么排序? 2、爬虫 3、页面存在很多js的时候,用什么 4、爬虫的待爬取URL量级比较大的时候,如何对其去重 5、多线程 异步 协程 多路复用 用哪一个最快 为什么 6、浏览器的常用编码 7、web常用的加密算法有什么 8、有没有内网渗透的经验?怎么渗透?如果拿下了边界层的某一个机器,如何对内网其他进行探测? 9、mysql中like查询会会非常缓慢,如何进行优化 10、做了cdn的网站如何获取真实IP 11、渗透的时候如何隐藏自己的身份 12、主机疑似遭到入侵,要看哪里的日志 13、SQL注入漏洞怎么修复
1. 排序算法
常见排序算法及特性:
- 快速排序:分治思想,平均时间复杂度O(n log n),空间复杂度O(log n),适合大数据量
- 归并排序:稳定排序,时间复杂度O(n log n),适合链表结构排序
- 堆排序:原地排序,时间复杂度O(n log n),适合优先级队列
- TimSort:Python默认排序,混合插入与归并排序,优化实际场景性能
- 应用场景:小数据量用插入排序,内存敏感用堆排序,稳定性要求用归并
2. 爬虫核心要素
技术栈组成:
- 请求库:requests/aiohttp(HTTP协议层)
- 解析库:BeautifulSoup/lxml(DOM解析)
- 框架:Scrapy(异步处理+中间件扩展)
- 反反爬:IP代理池+浏览器指纹模拟
- 存储:分布式文件系统/MongoDB(非结构化数据)
3. JS密集型页面处理
解决方案对比:
方案 原理 优缺点 Selenium WebDriver协议控制浏览器 功能全面但资源消耗大 Puppeteer Chrome DevTools协议 精准渲染但需维护headless实例 Pyppeteer Python异步版Puppeteer 协程优化更适合大规模并发 JS逆向工程 解析JavaScript逻辑 效率极高但技术门槛高 4. 海量URL去重方案
三级过滤体系:
- 内存级:布隆过滤器(误判率0.1%时,1亿URL仅需约114MB内存)
- 磁盘级:LevelDB/RocksDB(LSM树结构支持高速写入)
- 分布式:Redis集群(通过SETNX命令实现分布式锁) 优化技巧:URL规范化(大小写统一、参数排序)+哈希压缩(使用MurmurHash3减少存储)
5. 并发模型性能对比
IO密集型场景性能排序:
协程 > 异步IO > 多路复用 > 多线程
原因分析:
- 协程:用户态线程切换(纳秒级),单线程即可承载10万级并发
- 异步IO:基于事件循环,适合高吞吐量场景
- 多路复用:epoll/kqueue系统调用,C10K问题标准解决方案
- 多线程:受GIL限制(CPython),线程切换开销大(微秒级)
6. 浏览器编码体系
核心编码类型:
- 字符编码:UTF-8(92.1%网站使用)、GBK/GB2312(中文环境遗留系统)
- 传输编码:gzip(75.3%网站采用)、br(Brotli压缩率提升20%)
- 安全编码:Base64(二进制转码)、URL Encoding(特殊字符处理)
7. Web加密算法
分层安全方案:
- 传输层:TLS 1.3(前向加密)+ ECDHE密钥交换
- 存储层:
- 对称加密:AES-256-GCM(认证加密模式)
- 非对称加密:RSA-3072/ECC secp384r1
- 哈希算法:Argon2(密码存储)、SHA3-512(数据完整性)
- 国密标准:SM2/SM3/SM4(金融等领域合规要求)
8. 内网渗透方法论
阶段化渗透流程:
mermaid
graph TD A[边界突破] --> B[信息收集] B --> C[权限维持] C --> D[横向移动] D --> E[数据渗透] 技术点: B -->|nbtscan/ldapsearch| 网络拓扑测绘 C -->|Cobalt Strike| 持久化后门 D -->|Pass-The-Hash| 域渗透攻击 E -->|DNS隧道| 数据外传
9. MySQL LIKE优化
四级优化策略:
- 索引优化:创建前缀索引(
ALTER TABLE t ADD INDEX idx(col(10))
)- 存储优化:使用全文索引(MATCH...AGAINST)替代LIKE
- 架构优化:Elasticsearch实现搜索分离
- 查询优化:
WHERE REVERSE(col) LIKE REVERSE('%@xxx')
右模糊转左模糊10. CDN真实IP探测
七种穿透技术:
- 历史DNS记录查询(通过SecurityTrails等平台)
- SSL证书关联(Censys证书搜索)
- 邮件服务器追踪(接收触发邮件查看原始IP)
- 全球PING测试(利用不同地区CDN配置差异)
- 子域名爆破(cdn.example.com 与www.example.com 可能不同线路)
- CloudFlare特定绕过:CloudflareWarrior工具链
- TCP时序分析:比较CDN节点与源站TTL差异
11. 渗透身份隐匿
四层隐匿体系:
- 网络层:Tor -> I2P -> 商业VPN链式代理(至少3跳)
- 设备层:Qubes OS + MAC地址欺骗 + 硬件指纹伪装
- 行为层:随机化请求间隔(泊松分布模式)+ 流量特征混淆
- 法律层:使用云函数架构(AWS Lambda等)实现攻击链解耦
12. 入侵日志分析
关键日志路径及工具:
bash
# Linux系统 /var/log/auth.log # 认证日志 /var/log/secure # RedHat系安全日志 journalctl -u sshd # SSH登录审计 # Windows系统 Event Viewer -> Security Log # 事件ID 4624/4625 Sysmon Logs # 进程创建监控 # Web层面 /var/log/apache2/access.log # 异常请求模式检测 ModSecurity Audit Log # WAF拦截记录
分析工具链:Elastic Stack + Sigma检测规则 + 时间轴比对(timeline.py )
13. SQL注入修复
深度防御方案:
solidity1. 输入处理层: - 数据类型强制转换(如intval()) - 危险字符过滤(使用OWASP ESAPI库) 2. 查询执行层: - 参数化查询(PreparedStatement) - ORM框架(SQLAlchemy/Hibernate) 3. 架构防护层: - WAF规则(正则拦截高频payload) - 数据库权限隔离(最小化应用账户权限) 4. 监控层: - SQL语法树分析(检查非常规查询模式) - 蜜罐字段埋点(检测注入试探行为)