zoukankan      html  css  js  c++  java
  • SQLMap 样例

    别人眼中的软件测试就是点点点的工作,而对于资深的软件测试专家来说,功能测试只是软件测试中的一小部分,也是最基础的。而软件安全渗透测试经常被很多企业所忽略,特别是一些小企业,因为他们没有意识到这个危险带来的损失,当遇到了问题才知道安全测试的重要性比什么都要高。

    言归正传,今天下午拿公司的一个产品出来做数据库的安全渗透,借此机会整理一下笔记。数据库安全渗透测试工具我知道的有数十种,自己有使用过的,也差不多十种左右。今天刚开始使用APPScan工具进行安全扫描,居然没有发现SQL漏洞,怀疑工具扫描不彻底,于是换SQLMap进行测试。关于SQLMap的环境如何搭建,网上搜索一下很多,这里不再赘述。

    拿一个常见的登录功能来做SQL注入测试案例:

    一、打开Fiddler抓包工具

    二、打开要进行测试的页面,输入用户名和密码并点击登录

    三、通过Fiddler工具,我们可以看到抓包的详细内容,登录时需要post请求的参数,如loginname=admin_sbj&password=1&x=0&y=0

    看到上面这一串参数就知道这可能存在注入点,于是开始做注入操作:

    四、运行电脑CMD,打开运行窗口,执行相应的命令,我们先尝试是否存在注入的危险

    D:Python35sqlmap>sqlmap.py -u http://192.1******:8080/****/login/doAction.action --data "loginname=admin_sbj&password=1&x=0&y=0"

     

    当我们看到以上框红色边框的内容时,发现有戏了,我们把这一串注入的内容加上地址,直接在地址栏访问,发现居然成功登录,这就证明有问题了;

    接下来我们根据提示进行操作,如输入0进行一个post操作

    最终我们很明显的看到,当前使用的数据库类型为oracle:

    五、知道了数据库类型了,我们继续往下尝试,看下是否可以猜测出数据库名

    一样的语句,后面增加--dbs

     

     又发现惊喜,经过长时间的猜测,把当前数据库名也查找出来了,看到这一步,是不是觉得很危险了。

    六、有了数据库名,接下去我们尝试下数据库用户

     

     又是一个重大发现,几个用户名都被找出来了,接下去的方法一样,找出密码,然后把数据库表,表数据全部找出来........

    看到这,你是不是觉得如果没有给软件做安全测试,那潜在的危险造成的损失是有多可怕,赶紧动手看看你们的软件是否安全了吗。

  • 相关阅读:
    jmeter怎么衡量tps的值
    QPS、TPS、并发用户数、吞吐量关系
    PPAPI插件开发指南
    WebRTC手记之WebRtcVideoEngine2模块
    WebRTC手记Channel概念
    WebRTC手记之本地音频采集
    WebRTC手记之本地视频采集
    WebRTC手记之框架与接口
    WebRTC手记之初探
    Chromium的GPU进程启动流程
  • 原文地址:https://www.cnblogs.com/bzdmz/p/13040622.html
Copyright © 2011-2022 走看看