sql注入是怎么弄的

sql注入是怎么弄的,第1张

举个例子,一个用户登录过程是:用户输入账号paraUserName、密码后提交paraPassword,后台验证sql一般是:

select user_name from user_table where user_name='"+paraUserName+"' and password='"+paraPassword+"'"

这条语句就存在sql注入漏洞,试想如果用户输入的帐号是123' or 1=1 --,带入sql后变成了:

select user_name from user_table where user_name='123' or 1=1 --'and password='"+paraPassword+"'"

这条语句执行起来是不需要账号和密码,直接能够验证通过并登陆成功。

1.POST注入,通用防注入一般限制get,但是有时候不限制post或者限制的很少,这时候你就可以试下post注入,比如登录框、搜索框、投票框这类的。另外,在asp中post已被发扬光大,程序员喜欢用receive来接受数据,这就造成了很多时候get传递的参数通过post/cookie也能传递,这时如果恰好防注入程序只限制了get,因此post注入不解释

2.cookie注入,原理同post注入,绕过相当多通用防注入

3.二次注入,第一次注入的数据可能不会有效,但是如果将来能在某个页面里面被程序处理呢?注入来了……

4.csrf,适合后台地址已知并且存在已知0day,可以试试用csrf劫持管理员来进行操作(这招其实不属于sql注入了)

5.打碎关键字,比如过滤select,我可以用sel/**/ect来绕过,这招多见于mysql

6.有时候也可以sELeCT这样大小写混淆绕过

7.用chr对sql语句编码进行绕过

8.如果等于号不好使,可以试试大于号或者小于号,如果and不好使可以试试or,这样等价替换

9.多来几个关键字确定是什么防注入程序,直接猜测源码或者根据报错关键字(如"非法操作,ip地址已被记录")把源码搞下来研究

10.记录注入者ip和语句并写入文件或数据库,然而数据库恰好是asp的,插马秒杀

SQL注入:就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令。

具体来说,它是利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入(恶意)SQL语句得到一个存在安全漏洞的网站上的数据库,而不是按照设计者意图去执行SQL语句。

总结:Sql注入其实就是你在url中提交的payload它带入数据库查询了,这说明就有Sql注入,也就是数据交互了。

相信很多人刚开始学渗透的时候看的教程几乎都是从注入漏洞开始讲,那么我会带着大家一起去批量找注入点。

准备工作:Sqlmap丶URL采集器丶超级SQL注入工具

那么Sqlmap大家都不陌生吧,我在这里就不讲Sqlmap的使用命令了,我只讲Sqlmap如何批量找注入:


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/1954.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-01-30
下一篇2023-01-30

发表评论

登录后才能评论

评论列表(0条)

    保存