摘要:
漏洞解析 // 实现了一个基本的MVC(Model-View-Controller)结构,通过动态加载控制器类和数据,并调用控制器的方法来实现基本的页面渲染。 // 自动加载函数,用于动态加载类文件。当使用尚未定义的类时,PHP会自动调用该函数来加载类文件。此处,__autoload 函数会尝试加载 阅读全文
摘要:
前置知识 - Twig Twig是一个PHP模板引擎,它提供了一种更简洁和可扩展的方法来创建PHP应用程序的视图层。Twig模板引擎旨在将设计与业务逻辑分离,并为开发人员提供一种更加清晰和易于维护的方式来构建网页。 使用前提:在PHP项目中安装,然后引入Twig的自动加载文件 composer re 阅读全文
摘要:
前言:发现红日安全代码审计小组写了关于php代码审计demo的系列文章,于是跟着一起学习。参考: [红日安全]代码审计Day1 - in_array函数缺陷 RIPS-PHP-SECURITY-CALENDAR-2017学习记录 漏洞解析 class Challenge { const UPLOAD 阅读全文
摘要:
前期准备 源码,环境 网站目录结构 主目录 模块目录 插件目录 上传目录 模板目录 数据目录 配置目录 配置文件:一般类似config.php等文件。保存一些数据库相关信息、程序的一些信息。先看看数据库编码,如果是gbk则可能存在宽字节注入。如果变量的值用双引号、则可能存在双引号解析代码执行的问题。 阅读全文
摘要:
注入类 命令注入 将用户输入拼接到命令行中执行 导致的任意命令执行问题 <?php $command = 'ping -c 1 '.$_GET['ip']; system($command); //system函数特性 执行结果会自动打印 ?> 此处输入ip参数无任何过滤限制 get输入ip=127 阅读全文
摘要:
工具准备 手工审计工具 VS CODE+PHP Intelephense扩展用于辅助审计 快捷键帮助提高审计效率 关闭当前窗口: Ctrl+W 文件之间切换: Ctrl+T_a_b 移动到行首: Home 移动到行尾: End 移动到文件开头: Ctrl+Home 移动到文件结尾: Ctrl+End 阅读全文
摘要:
通过sql注入拿到webshell into outfile 导出文件 into dumpfile 导出文件 将查询的结果导出成文件 如何找路径?————传入错误参数,就会爆出路径 写入一句话木马,连接菜刀,去查看里面的信息 URL union select 1,"<?php eval($_REQU 阅读全文
摘要:
#原理 前端代码注入,拼接恶意的html,真正执行恶意代码的是js语句 常见业务场景: 重灾区:评论区、留言区、个人信息、订单信息等 针对型:站内信、网页即时通讯、私信、意见反馈 存在风险:搜索框、当前目录、图片属性等 危害:盗取cookie,获取内网ip,获取浏览器保存的明文密码,截取网页屏幕…… 阅读全文
摘要:
#原理 注入攻击的本质是把用户输入的数据当做代码执行 #判断注入点 and 1=1页面正常,and 1=2 页面不正常【此法可能会被拦截】 为什么用and 1=1正常 and 1=2报错来判断是否存在SQL注入? 因为如果存在SQL注入,那么and就是和的意思,1=1是一个恒等式,然后因为原本能够查 阅读全文
摘要:
渗透测试的灵魂是信息收集 一个正常运行的网站,会有以下要素: 操作系统,框架、cms,接口,数据库,编程语言,服务器ip,域名,CDN,端口、协议,DNS 信息收集一般分为主动信息收集与被动信息收集。两者的区别在于是否与目标主机进行交互。一般来说,被动信息收集一般使用特殊的搜索引擎还有一些被动信息收 阅读全文