安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
目录
[4. 印象深刻的渗透流程](#4. 印象深刻的渗透流程)
[5. 典型漏洞原理分析](#5. 典型漏洞原理分析)
[6. ThinkPHP5代码执行调试](#6. ThinkPHP5代码执行调试)
[7. XSS种类及原理](#7. XSS种类及原理)
[8. CSRF防御方案](#8. CSRF防御方案)
[9. SQL注入防御(代码层)](#9. SQL注入防御(代码层))
[10. 判断服务器环境](#10. 判断服务器环境)
[12. 后渗透技术栈](#12. 后渗透技术栈)
[13. 反序列化漏洞](#13. 反序列化漏洞)
[14. 数据库类型对比](#14. 数据库类型对比)
1、自我介绍 2、工作经历 3、什么时候开始学习网络安全 4、印象深刻的渗透流程(每个HR都问) 5、struct2或典型漏洞原理分析 6、ThnkPHP5、*代码执行有无断点调试 7、XSS种类及其原理 8、CSRF防御 9、sql注入防御代码层面 10、判断服务器处于工作组还是域环境 11、真实渗透过程 12、后渗透了解吗 13、反序列化漏洞 14、非关系型数据库和关系型数据库有哪些
一、个人背景
1. 自我介绍
网络安全工程师,5年渗透测试与红队经验,擅长Web漏洞挖掘、内网渗透、域安全攻防。持有OSCP、CISSP认证,主导过20+次企业级渗透测试项目。
2. 工作经历
时间段 公司 职责 2023-至今 某安全厂商 高级渗透工程师 2021-2023 金融科技 安全研究员 2019-2021 互联网公司 安全运维工程师 3. 学习网络安全起点
2017年大学期间接触CTF(Web方向),系统学习路径:
网络基础 → Web安全(OWASP Top 10) → 内网渗透 → 漏洞复现(CVE) → 红队工具链开发
二、渗透实战技术深度解析
4. 印象深刻的渗透流程
目标 :某电商平台
流程:
mermaid`graph TD A[信息收集] --> B[漏洞发现] B --> C[突破边界] C --> D[横向移动] D --> E[权限维持] D --> F[数据获取]`
- 关键步骤 :
- 通过子域名爆破发现测试系统(test.xxx.com )
- ThinkPHP5 RCE漏洞getshell(
/index.php?s=/index/\think\app/invokefunction
)- 利用MSSQL服务账号解密后获取域用户权限
- 基于Kerberoasting攻击拿下域控
5. 典型漏洞原理分析
Struts2漏洞(以S2-045为例)
java`// 漏洞触发点:Jakarta Multipart解析器 Content-Type: %{(#nike='multipart/form-data').(#dm=@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS)...`
- 原理:OGNL表达式注入,恶意Content-Type头触发远程代码执行
- 防御 :升级Struts2 + 过滤
#
、$
等特殊字符
6. ThinkPHP5代码执行调试
断点定位:
ph`// thinkphp/library/think/App.php public static function exec($dispatch, $config) { $data = self::module(...); // 路由解析入口 if ($data instanceof Response) return $data; return self::invokeMethod(...); // 触发漏洞方法(关键断点) }`
- 调试工具:Xdebug + PhpStorm
- 利用链:路由解析 → 控制器动态调用 → 未过滤参数执行命令
三、Web安全核心技术
7. XSS种类及原理
类型 触发场景 案例 反射型 URL参数直接输出 http://xx.com?q=<script>alert(1)</script>
存储型 数据库内容渲染页面 留言板插入恶意脚本 DOM型 前端JS操作DOM未过滤 document.write(location.hash)
防御方案:
- 输入过滤:
HtmlEncode()
+JavaScriptEncode()
- CSP策略:
Content-Security-Policy: default-src 'self'
8. CSRF防御方案
php`// 服务端生成并验证Token session_start(); if ($_POST['csrf_token'] !== $_SESSION['csrf_token']) { die("Invalid Request"); }`
增强措施:
- SameSite Cookie:
Set-Cookie: key=value; SameSite=Strict
- 验证Referer头
9. SQL注入防御(代码层)
PDO参数化查询示例:
php`$stmt = $pdo->prepare("SELECT * FROM users WHERE email = :email"); $stmt->execute(['email' => $user_input]); // 自动转义特殊字符`
纵深防御:
- 最小化数据库账号权限
- WAF规则过滤
union select
、sleep()
等关键词
四、内网渗透专项
10. 判断服务器环境
工作组环境:
cmd`net config workstation # 无"域"信息 ipconfig /all # DNS后缀为空白或非域后缀`
域环境:
cmd`systeminfo | findstr /B /C:"域" # 显示域名 nltest /dsgetdc:域名 # 成功返回域控信息 `
12. 后渗透技术栈
核心环节:
- 权限维持 :
- 隐藏计划任务:
schtasks /create /tn "Update" /tr "C:\shell.exe" /sc minute /mo 1
- 影子账户:
net user $admin$ Password123 /add /active:yes
- 横向移动 :
- Pass-the-Hash:
mimikatz "sekurlsa::pth /user:admin /domain:test /ntlm:xxxx"
- WMI远程执行:
wmic /node:192.168.1.2 process call create "cmd.exe /c whoami"
五、数据库与漏洞进阶
13. 反序列化漏洞
PHP反序列化触发点:
php`class VulnClass { public $data = "id"; function __destruct() { system($this->data); // 危险函数在析构时触发 } } unserialize($_GET['d']); // 攻击者控制输入 `
防御 :禁用
unserialize()
+ 使用json_decode()
14. 数据库类型对比
特性 关系型数据库(MySQL) 非关系型数据库(MongoDB) 数据结构 表结构(行列固定) 文档/键值对(灵活) 查询语言 SQL JSON格式查询 典型漏洞 SQL注入 NoSQL注入(如 $ne
绕过)适用场景 交易系统、财务数据 日志分析、IoT数据存储