从SQL注入到代码审计竟然能够这么简单?

零基础黑客教程,黑客圈新闻,安全面试经验php

尽在 # 暗网黑客 #nginx


*本文中涉及到的相关漏洞已报送厂商并获得修复,本文仅限技术研究与讨论web

严禁用于非法用途,不然产生的一切后果自行承担面试

本文中出现的全部敏感信息已作打码处理sql



文末有sqlmap相关实战视频操做领取
shell



数据库

找网站SQL注入点安全

在测试时候发现有一个信息查询框,就是下面这个图片显示的微信

通常信息查询框会和数据库存在交互网络


我输入数字1,会正常提示未查询到相关信息


那咱们使用1′测试一下,发现不弹未查询到相关信息的提示框

也没有任何数据输出,大体判断这个点存在sql注入,而且不对输出报错信息

大概猜想出SQL语句为 :

select * from A where id ='$_POST['id']';

没有对用户输入的数据作任何过滤。

构造一个闭合语句再次确认一些是否确认存在sql注入。

payload:1′ #


经过上面简单测试,已经肯定了,确定存在sql注入



sqlmap跑一下


将数据包保存到一个文件,直接用sqlmap跑

很是震惊,竟然有51个库


通过查询,查到后台的帐号密码,那我就开始找后台的艰辛路程了。



找后台

没有找到后台,可是发现robots文件。


从robots上看到是PHPCMS系统


使用PHPCMS系统通用后台地址admin.php,m=admin&c=index&a=login

都不行,测了好就发admin模型下的index控制器是存在

当咱们访问的时候就会自动跳到首页

这也该是开发者后来作了修改,专门作防黑的。



找通用漏洞


这个步骤就很少说了

我测了已暴光的漏洞,都是不行

说明开发者仍是有安全意识的,把漏洞都给修复了



返回sqlmap

还有一种思路就是使用sqlmap –os-shell直接获取shell

可是这个基本上不行的,由于网站的文件基本上都是755权限

没有写的权限就会失败。那我仍是抱着一丝丝但愿去测试了

使用sqlmap –os-shell须要知道网站的绝对路径,网站绝对路径能够经过中间件配置文件查看。


首先须要知道网站用了什么中间件

我没有用nmap跑,只用404看到是nginx ,nginx的配置文件 /usr/local/nginx/conf/ngixn.conf

用sqlmap –file-read 去读nginx配置文件

经过配置文件只看到一条默认的配置信息


须要注意的是若是在nginx.conf文件没有看到有价值的信息

有一种多是存在

/usr/local/nginx/conf/vhost/网站域名.conf 这个位置

果不其然就是它


找到了真实的路径,就可使用 sqlmap –os-shell了

可是正式我当时预料的没有写入权限致使拿shell失败。



使用sqlmap读取网站源码


经过上面的思路咱们已经知道网站的真实路径

知道了是PHPCMS系统,那咱们能够读取网站的文件了

一、读取路由文件 caches\configs\route.php 查看路由文件没有问题。


二、查看系统文件 caches\configs\system.php (这个文件能看是否开启了域名访问后台)


三、在上面咱们说到admin模型下index控制器是能访问

知识在访问的时候会跳转到主页,那咱们下载index控制器文件看下

phpcms\modules\admin\index.php

看index控制器下的login方法是没有作任何修改的。



侧面渗透测试


面说了一共有51个网站,我随机看了几个

数据库的结构是同样的,说明是同一个建站系统

那咱们用nmap扫一下服务发现有8080服务

这个网站8080端口的网站时dedecms系统搭建的

我正好有后台密码,这样能经过dedecms上传文件



代码审计


经过上面们大概判断是admin模块index控制器有问题

查看admin模块多了一个MY_index.php控制器,


查看MY_index.php 发现里面有一个构造函数

这个函数大概意思就是会打开这个方法会判断你的right_enter的session值是否为空

若果为空,那么就回到首页

这这是咱们刚开始一直打不开后台的缘由


通过看phpcms开发手册(我对这看系统二次开发不太熟悉,我只知道是一个MVC结构的php程序)

若是须要对控制器进行二次开发须要在同级目录建立一个MY_*.php文件

大概意思就是建立这个文件后程序在运行index模块时会运行MY_index.php里面的代码。


到这了明白了,由于没有$_SESSION['right_enter']值

因此致使登录不了

因此打开后台首先须要给$_SESSION['right_enter']赋值

通过不懈努力找到了一个正确文件


这个文件大概意思就是当我运行改文件时会将$_SESSION['right_enter']=1,而后跳转到登录界面



"sqlmap上sql注入的简介和sqlmap简介"

“sqlmap下使用工具找管理员密码”

“sqlmap getshell之大马小马一句话”

“sqlmap getshell实战”

......

上述等视频教程!可打包带回家!

可领取视频教程!边看边学!掌握思路~

扫描下方二维码!直接免费领取!(录播)

扫码领取



往期内容回顾


【干货】黑客攻防!老司机教你如何提高权限

教你一招!半吊子黑客怎么入侵网络摄像头

爆破多个用户名总不成功?看来之后不能说用户名不存在




扫码当即免费领取

黑客教程视频  靶场工具 讲师课件 

一线安全工程师天天在线直播授课













本文分享自微信公众号 - 暗网黑客(HackRead)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索