实践学习php,thinkphp,Redis,vue,uni-app等技术,推荐开源电商系统likeshop,可以借鉴思路,可去版权免费商用,gitee下载地址:
https://gitee-github.com/xRbKstf2

YXcms(MVC)

YXcms 1.4.7

熟悉MVC架构

路由方式

通过一个 r 的文件指针进行路由

参数传递

in($_GET[])

......public function test(){$param=in($_GET['a']);var_dump($param);}
......

$_GET 接收值,通过 in 进行过滤

in 函数

//数据过滤函数库
/*
功能:用来过滤字符串和字符串数组,防止被挂马和sql注入
参数$data,待过滤的字符串或字符串数组,
$force为true,忽略get_magic_quotes_gpc
*/
function in($data,$force=false){if(is_string($data)){$data=trim(htmlspecialchars($data));//防止被挂马,跨站攻击if(($force==true)||(!get_magic_quotes_gpc())) {$data = addslashes($data);//防止sql注入}return  $data;} else if(is_array($data)) {foreach($data as $key=>$value){$data[$key]=in($value,$force);}return $data;} else {return $data;}
}

可以看到函数并不能防止 int 型注入,也没有对数组的键进行过滤

增删改查

# default/indexController.php
<?php
class indexController extends commonController
{public function test(){$id = in($_GET['id']);$result = model('user')->find("id={$id}");var_dump($result);}
......

    public function test(){$data=['username'=>'ocean2','password'=>'ocean2'];$result=model('user')->insert($data);var_dump($result);}

    public function test(){$id = in($_GET['id']);$data=['username'=>'nc000eee','password'=>'nce000ee'];$result=model('user')->update("id={$id}",$data);var_dump($result);}

public function test()
{$id = in($_GET['id']);$result=model('user')->delete("id={$id}");var_dump($result);
}

漏洞

数字注入

insert注入

后台任意文件删除

任意文件写入

XSS

前台留言处存在 xss

存入时会进行过滤

但是后台审核处会将其还原

…(img-lpIJx1y6-1617631219454)]

存入时会进行过滤

但是后台审核处会将其还原

[外链图片转存中…(img-6LOyjGnD-1617631219455)]

[外链图片转存中…(img-nZ2k7yOy-1617631219456)]

YXcms(mvc架构php的cms)简单学习与审计相关推荐

  1. MyBatis学习:简单认识一下MVC架构模式和三层架构

    1.本篇博客的背景和目的 目前我本人正在学习MyBatis框架,在原先了解并且懵懵懂懂使用的基础上,开始系统正式的学习.本篇博客阐述一下MVC架构模式和三层架构,以及明晰一下我们通常在Web项目中的编 ...

  2. MVC架构中,用户的请求简单梳理

    MVC架构中,用户的请求分为下面3个步骤: 终端用户发送请求,路由器将请求路由到合适的Controller,Controller是逻辑实体和行为action的集合. Controller将请求映射到特 ...

  3. Java学习-MVC架构模式

    目录 1 传统方式处理业务的缺点 2 MVC架构模式理论基础 4 MVC架构模式如何设计 4.1 设计JDBC工具类的封装 4.2 创建封装数据的对象 4.3 设计Dao模式 4.4 业务逻辑编写 4 ...

  4. MVC架构在Asp.net中的应用和实现

    MVC架构在Asp.net中的应用和实现 摘要:本文主要论述了MVC架构的原理.优缺点以及MVC所能为Web应用带来的好处.并以"成都市信息化资产管理系统"框架设计为例,详细介绍其 ...

  5. 虚拟主机中,不修改IIS设置,在IIS6下运行MVC架构的网站

    虚拟主机中,不修改IIS设置,在IIS6下运行MVC架构的网站 我为什么要写这个教程呢? 主要是为了解决把网站部署在虚拟主机上的人,因为你根本不能去配置虚拟主机所以,用下面的方法,可以实现不配置IIS ...

  6. Java MVC 架构初学者指南

    如果您与 Web 开发场景相关,那么您肯定会遇到数百次(甚至更多)首字母缩略词"MVC".MVC 是当今 Web 编程世界中谈论最多的设计模式之一,这是正确的.在本文中,我们将带您 ...

  7. iris-v12 框架搭建二 mvc架构

    iris-v12 框架搭建二 mvc架构 在这里我就默认你已经会了搭建非mvc架构的方法(不懂得看iris-v12 框架搭建一 快速启动). 想要搭建mvc的架构非常简单,只要使用iris的mvc包就 ...

  8. ASP .NET MVC 架构

    ASP.NET MVC 架构 我在写上位软件的时候基本不用MVC架构,MVC架构的分层思想是值得借鉴的.一般我采用如下架构: 1 UI 表示层,处理与用户的交互,获取显示用户数据. 2 BLL 业务逻 ...

  9. 【JAVA】基于MVC架构Java技术荟萃案例演练

    基于JAVA-MVC技术的顾客管理项目案例总结 作者 白宁超 2016年6月9日22:47:08 阅读前瞻:本文源于对javaweb相关技术和资料汇总,涉及大量javaweb基础技术诸如:Servle ...

最新文章

  1. alias重启终端失效的问题
  2. [转] linux系统文件流、文件描述符与进程间关系详解
  3. py2与py3的区别
  4. arcgis js 移除某一个点_GIS Experience (二):ArcGIS实践操作问题集
  5. Android多线程
  6. oracle 运营维护_oracle运维(持续更新)
  7. 摄像机成像公式、外参、内参(转载)
  8. 【Java从0到架构师】SpringMVC - 特殊的请求参数
  9. 阶段1 语言基础+高级_1-3-Java语言高级_08-JDK8新特性_第3节 两种获取Stream流的方式_1_两种获取Stream流的方式...
  10. Blender的一些使用小结,在辣椒酱基础上加了点,会持续更新
  11. MATLAB 求导、符号计算
  12. 云控微信开发SDK使用教程--手机微信群二维码上传给服务端
  13. 海贼王热血航线正在连接服务器,海贼王热血航线为什么连接不了服务器?老是说人已满进不去?...
  14. PDF怎么转换成图片?这两种转换方法快速转换
  15. 一、FreeRTOS简介
  16. 网络安全行业有哪些认可度比较高的证书呢?
  17. 【转】用IDCNN和CRF做端到端的中文实体识别
  18. java拆分excel_apache poi拆分excel表格
  19. 全国省市区Json文件 ,做省市区联动很轻松
  20. 学计算机能学好英语,英语专业转行学计算机能学好吗

热门文章

  1. 智力大冲浪 (牛客贪心)
  2. 微信小程序之 微信开发工具使用教程详解
  3. 亚马逊遭遇TRO,账户冻结,卖家朋友该如何自处?
  4. 业绩打脸所有人,富士康与苹果依然亲密,立讯精密似未能趁机分羹
  5. 计算机辩证技巧,庄子:辩证智慧与诡辩技巧
  6. AnalyticDB PostgreSQL高可用整理
  7. mysql seconds_behind_master_mysql Seconds_Behind_Master解释
  8. 牛客ACM-喆神装书
  9. 25867 喆神装书 (背包DP)(贪心)
  10. 在虚拟机中安装Linux系统 (附上每一步操作截图及说明)【一看就懂】