代码审计 - zzzphp Sql注入

简介: zzzphp Sql注入

640.png

       zzzphp免费开源建站系统采用PHP免费建站整站系统,所有源码开源完整,支持手机自动同步。

在本地搭建服务器,httpd-vhosts.conf 中设置本地绑定的域名:

640.png

其中,zzzphp为下载的zzzphpcms的内容。

然后,本机上的zzzphp cms的目录结构为如下:

640.png

在按照要求安装好cms后,本地cms的后台地址访问地址为admin264.

在登陆后台后,使用postman发送如下请求:

必须在cookie中设置登陆服务器后返回的cookie值,否则执行将失败:

640.png

该cookie值在成功登陆服务器后台后会自动获得。

在postman中绑定cookie之后,发送请求:

       http://[本地绑定的域名]/[后台地址]/save.php?act=content

       需要注意的是,需要在act中传参数act=content。

使用post传的参数中其他都是无关项,但是c_content为关键项。

c_content参数需要先使用单引号和括号闭合语句,然后插入想要执行的sql语句。

       这里c_content的值为content’,1,9);createdatabase kaixinjiuhao;//

640.png

开始在phpstorm中进行跟踪:

640.png

可以看见此时$act=”content”,继续跟进:

       然后在phpstorm中跟踪,跟踪到save_content()方法:

其中getform函数为获得我们之前通过post提交的各种参数,需要注意的是$c_content参数

       此时,$c_content参数的取值貌似被转义,但是不用着急,往下看。

640.png

       在第299行,$c_pagedesc参数在post不传值的情况下,成功获得我们输入的$_content的值,并且该值未经过转义:

640.png

继续跟踪,在第237行执行db_insert函数,跟进:

640.png

然后在在db_insert函数的第243行执行db_exec函数,继续跟进:

640.png

$d->exec($sql)执行命令

640.png

最后postman返回消息:

640.png 

继续往下执行,postman接收到返回回来的数据:

640.png

可见命令执行成功、可以成功在数据库中找到新创建的kaixinjiuhao数据库:

640.png

证明sql语句执行成功。

       同理,save_content()函数中的$c_title2同样在post请求未传值时从$c_title处获取值,也存在sql注入的风险。




相关文章
|
24天前
|
SQL 安全 数据库
Python Web开发者必学:SQL注入、XSS、CSRF攻击与防御实战演练!
【7月更文挑战第26天】在 Python Web 开发中, 安全性至关重要。本文聚焦 SQL 注入、XSS 和 CSRF 这三大安全威胁,提供实战防御策略。SQL 注入可通过参数化查询和 ORM 框架来防范;XSS 则需 HTML 转义用户输入与实施 CSP;CSRF 防御依赖 CSRF 令牌和双重提交 Cookie。掌握这些技巧,能有效加固 Web 应用的安全防线。安全是持续的过程,需贯穿开发始终。
48 1
Python Web开发者必学:SQL注入、XSS、CSRF攻击与防御实战演练!
|
11天前
|
SQL 安全 API
PHP代码审计示例(一)——淡然点图标系统SQL注入漏洞审计
PHP代码审计示例(一)——淡然点图标系统SQL注入漏洞审计
26 4
|
25天前
|
SQL 安全 数据库
从入门到精通:Python Web安全守护指南,SQL注入、XSS、CSRF全防御!
【7月更文挑战第25天】在Python Web开发中确保应用安全至关重要。以下是针对SQL注入、XSS与CSRF攻击的防护策略及示例代码
43 6
|
25天前
|
SQL 安全 数据库
|
23天前
|
SQL 安全 数据库
深度揭秘:Python Web安全攻防战,SQL注入、XSS、CSRF一网打尽!
【7月更文挑战第27天】在 Web 开发中,Python 面临着如 SQL 注入、XSS 和 CSRF 等安全威胁。
44 0
|
24天前
|
SQL 安全 Go
SQL注入不可怕,XSS也不难防!Python Web安全进阶教程,让你安心做开发!
【7月更文挑战第26天】在 Web 开发中, SQL 注入与 XSS 攻击常令人担忧, 但掌握正确防御策略可化解风险. 对抗 SQL 注入的核心是避免直接拼接用户输入至 SQL 语句. 使用 Python 的参数化查询 (如 sqlite3 库) 和 ORM 框架 (如 Django, SQLAlchemy) 可有效防范. 防范 XSS 攻击需严格过滤及转义用户输入. 利用 Django 模板引擎自动转义功能, 或手动转义及设置内容安全策略 (CSP) 来增强防护. 掌握这些技巧, 让你在 Python Web 开发中更加安心. 安全是个持续学习的过程, 不断提升才能有效保护应用.
35 1
|
24天前
|
SQL 安全 前端开发
Web安全新纪元:Python如何筑起SQL注入、XSS、CSRF的铜墙铁壁?
【7月更文挑战第26天】在Web开发中,安全性至关重要。Python提供强大工具来抵御SQL注入、XSS和CSRF等威胁。使用ORM如Django和SQLAlchemy可防SQL注入; Django等框架自动转义输出防XSS; CSRF通过自动及手动验证令牌来阻止。开发者须持续学习最新安全实践以保护用户数据。迈向Web安全新纪元,Python助你一臂之力。
26 1
|
23天前
|
SQL 安全 数据库
Python Web开发者必看!SQL注入、XSS、CSRF全面解析,守护你的网站安全!
【7月更文挑战第27天】在 Python Web 开发中, 安全至关重要。
36 0
|
23天前
|
SQL 安全 JavaScript
告别Web安全小白!Python实战指南:抵御SQL注入、XSS、CSRF的秘密武器!
【7月更文挑战第27天】在 Web 开发中,安全漏洞如同暗礁,其中 SQL 注入、XSS 和 CSRF 尤为棘手。本文通过实战案例展示如何使用 Python 抵御这些威胁。
43 0