xiaodisec day031

简介: `#day31` 文件上传漏洞探讨:涉及 CMS 中的文件上传,通常需配合抓包工具。绕过前台验证和 MIME 验证(如变造 `content-type`),利用大小写或.php伪装上传。当.php被过滤时,可试用短标签`<= 'php代码'>`。若过滤括号,则可能无法构造有效payload。文件头过滤常用于防止非正常文件上传,而.user.ini文件能包含后门代码实现命令执行。同时,修改`user-agent`为PHP木马以尝试通过日志记录通道触发。总结:上传漏洞利用策略多变,关键在于识别并绕过安全防护措施。

day31 上传漏洞

前置

基础内容在 ctfshow 中演示
中间件
cms 中的文件上传

开始

文件上传一般配合抓包

前台验证, 在前台改就可上传成功

php 后缀的文件有 php 后门,可连接后门

MIME 验证
就是在抓包中数据包中的字段 content-type 中有内容验证
image/png 是图片,如果检测到 Php 内容,content-type 就会变成 Php 的内容

将图片的内容换成

在 java 或是 asp 的网站,就不要传 php 后门

大小写尝试能上传成功,但是浏览器访问提示下载,就是网站的解析配置问题

php 中 .user.ini 是一个什么样的文件呢

在.uer.ini 中包含 1.php, 在 1.php 中写入后门代码,访问 index.php 即可实现命令执行

文件上传过滤了<?php 就想到使用短标签<= 'php代码'>

后缀是解析用的,.user.ini 中包含的.png 的内容是 php 后门,就能实现命令执行

过滤了括号

使用反引号实现访问??
如果直接过滤<>尖括号呢,就寄了吧

文件头过滤

正常的文件都有文件头
比如 GIF89a

日志记录

网站在日志中会记录 user-agent 就是记录访问者的 user-agent,在抓到的数据包中修改 user-agent 为 php 木马,尝试连接

总结

相关文章
|
6天前
|
缓存 监控 NoSQL
【Redis性能瓶颈揭秘】「调优系列」深入分析热Key的排查策略和解决方案
【Redis性能瓶颈揭秘】「调优系列」深入分析热Key的排查策略和解决方案
215373 12
|
6天前
|
SQL 监控 安全
Linux&Windows 日志分析 陇剑杯 CTF
Linux&Windows 日志分析 陇剑杯 CTF
|
6天前
|
SQL JSON PHP
xiaodisec day027
本文档介绍了SQL注入的不同类型,包括数字型、字符型、搜索型、编码型和加密型,强调了在注入时对数据格式和闭包的考虑。提到了SQLMap工具的进阶使用,如利用tamper目录中的base64encode.py进行编码注入。同时,讨论了宽字符绕过技巧,如利用中文字符来避免PHP的addslash函数对攻击的阻止。
|
6天前
|
SQL 缓存 NoSQL
xiaodisec day026
`day26`探讨了Oracle与MongoDB的SQL注入,强调手动注入技巧。尽管`sqlmap`工具不支持NoSQL,它提供了一些选项,如清除缓存(--purge)、查看当前数据库(--current-db)和数据转储(--dump)。通过-r参数可以利用保存在TXT文件中的数据包进行测试,文件内星号(*)标记注入点,例如`username=admin*`。Metasploit Framework(MSF)未详述。
|
6天前
|
SQL 关系型数据库 MySQL
xiaodisec day025
了解 SQL 注入攻击,关注 MySQL、MSSQL 和 PostgreSQL 的高权限注入。利用 `loadfile` 和 `outfile` 函数在 MySQL 中读写文件,常见目标包括配置文件。获取路径方法包括报错显示、phpinfo 和字典攻击。注意 `secure-file-priv` 配置限制,但在某些环境下可突破。开启慢日志记录,植入后门,通过 PHP 执行。实战中,观察地址和输入框判断注入点,根据报错信息推测数据库类型。若无回显,尝试猜测注入点。
|
6天前
|
Java 中间件 测试技术
xiaodisec day023
Day23 Python 知识讲解聚焦于`pyc`反编译和`SSTI`(模板注入)。`pyc`是跨平台的编译结果,常在CTF中出现。`SSTI`发生在Web应用,当错误处理不当,允许注入代码执行,404页面可能是切入点。实战中判断SSTI和建站语言(如Python)需观察回显和使用工具如fofa。黑盒测试SSTI颇具挑战。
|
6天前
|
开发框架 安全 Java
xiaodisec day019
C#在.NET框架中用于开发,常伴安全风险如未授权访问。DLL类似Java的JAR,封装代码但能被反编译(如用ILSpy)。攻击者利用错误信息暴露版本及路径,`web.config`的`customErrors`模式设置不当可能导致信息泄露。未授权访问漏洞发生于身份验证不足时。检查所有功能页面是否都经过验证,寻找无保护文件或验证漏洞。案例中,空的`Inherits`属性可能指示未授权入口点。典型部署涉及Windows、IIS、ASP/ASPX及Access/SQL Server数据库。
|
6天前
|
SQL 安全 前端开发
xiaodisec day017
学习了PHP框架,重点讨论了ThinkPHP、Yii和Laravel。ThinkPHP5的URL结构为域名/.php/模块/控制器/方法。MVC模式用于框架开发。注意3.x版本的地址格式。讨论了命名空间和SQL注入,框架能提供内部过滤。审计了多个使用ThinkPHP的CMS,如EyouCMS、Fastadmin等,并提到了ZoomEye和Seebug作为搜索漏洞的工具。通过黑盒测试和报错信息可识别框架版本,如Fastadmin和YFCMF。还提到了ThinkPHP的rec漏洞及修复方法。
|
6天前
|
存储 SQL 安全
xiaodisec day015
Day15 PHP基础探讨登录验证,涉及COOKIE & SESSION用于用户状态管理。Cookie在客户端,易被篡改,安全隐患包括本地伪造和XSS攻击。Session存储于服务器,安全些,但若一方断开,会话结束。数据库密码通常MD5加密。同时讨论了SQL注入、验证码抵抗爆破和重放攻击的安全议题。
|
6天前
|
SQL 开发框架 关系型数据库
xiaodisec day024
本文介绍了SQL注入的相关知识,包括Access和MySQL数据库的注入。漏洞源于特定变量和函数,可通过网址参数或抓包发现。注入语句位置与字段相关。工具流程包括猜测数据库类型,如ASP配Access,然后通过ORDER BY和UNION查询列数。在Access中尝试偏移注入,MySQL中可能涉及文件读写和跨库查询。判断是否为root用户可用`user()`函数,MySQL5.0以上可查information_schema数据库获取详情。示例网址:`https://www.crfbehavioralhealthcare.org/researchDetails.php?id=MS==`。