Web开发-PHP应用&TP框架&MVC模型&路由访问&模版渲染&安全写法&版本漏洞

我们先使用/index.php/index/index/test,就是图中的test()方法

/index.php/index/index/index,这个回显就是111

http://127.0.0.1:83/index.php/index/index/test2?x=123456

复制代码
public function test2()
{
    $x=$_GET['x'];
    return $x;
}

这里再做一个案例更详细一点,我们这里定义了一个login,我们如何得到后台登陆回显呢,按照TP官方方式尝试,然后我们更换了文件夹,上面的更改为namespace app\admin\controller;

http://127.0.0.1:83/index.php/admin/index/login

这里成功了,那就再次解释一遍,就是index.php/这个是固定的,然后/admin就是我们的admin模块,也就是这个文件夹,控制器就是index.php,操作就是login这个方法,这样我们就能用TP官方方法访问了

第二种访问方法就是

http://127.0.0.1:83/index.php?s=/admin/index/login

早期版本,TP3版本附近

有的时候还会出现index.php?s=admin&m=index&a=login

这是什么意思呢,就是三个参数分别指向模块、控制器、操作,也就是我的admin目录,index模块,login操作

这样我们就能逆推功能点,这样可以在白盒应用中体现出来

3、请求变量-数据接受

请求对象,提交方法,助手函数等

这里使用REQUEST

这里就接受到信息了,这里定义的方式太多,可以自行选择使用哪种方式获取信息

4、数据库操作-应用对象

引用DB类,基本查询,助手函数等

复制代码
public function loginin(Requset $request)
{

    $id = input('get.id');
    $data=Db::table('admin')->where('id',$id)->find();
    var_dump($data);
}

THINKPHP

这里就能上梭哈工具检测,并且能一键利用

5、前端页面渲染-MVC模型

引擎配置,渲染变量,模版输出等

TP框架-写法安全

1、自写代码逻辑

例子1:自己不合规的代码写法

自己审计代码,看一下他的缺陷

例子2:一半框架一半自写代码

例子3:框架标准内置代码写法

官方写法就看版本漏洞,通杀或者找逻辑,有sql注入需要有相应的代码功能

2、框架版本安全

https://github.com/Mochazz/ThinkPHP-Vuln

例子1:写法内置安全绕过-TP5-SQL注入

例子2:内置版本安全漏洞-TP5-代码执行

TP框架-代审案例:

WeMall-TP5框架开发

这里拿一套源码,先看一下thinkphp版本号,然后找历史漏洞

这里打开发现什么都没有,伪静态,搭建时配置一下文件

搭建时候配置一下即可

上一下梭哈工具测试一下漏洞

拿下s

相关推荐
后台开发者Ethan2 分钟前
setState组件更新
前端·javascript·react
谙忆10247 分钟前
大文件上传实战:前端分片、断点续传、秒传与并发控制怎么落地
前端
shepherd12628 分钟前
一次把 Spring MVC 文件上传参数“查没了”的排查:multipart、Filter 与 request body 的连环坑
java·后端·spring·mvc
轻动琴弦34 分钟前
VoltTool —— 一站式在线开发者工具平台,69+实用工具免费使用
前端·chrome
就叫飞六吧36 分钟前
不同站点iframe嵌套种cookie、localstorege.set() 关系
前端
星栈37 分钟前
LiveView 怎么测:从组件测试到端到端,我终于不再只敢手点页面了
前端·前端框架·elixir
蜡台42 分钟前
uniapp vue2 转 vue3
前端·javascript·uni-app·vue3·vue2
Web4Browser44 分钟前
Headless 浏览器自动化适合哪些任务?巡检、截图和提交动作要分级
运维·前端·自动化
用户059540174461 小时前
把前端内存泄漏排查从2小时压到5分钟,我们把它集成进了CI
前端·css
IMPYLH1 小时前
HTML 的 <dd> 元素
前端·html