vlambda博客
学习文章列表

利用SQL注入 获取网站管理员账号密码

 助力公益助力学习!


本文章所有内容免费,供大家使


 

挖掘漏洞分别是 明确目标--信息收集--漏洞扫描—验证漏洞---分析信息---渗透攻击---整理信息---编写测试报告

(扩展 )常见漏洞

1、跨站脚本

原理:指攻击者利用网站程序对用户输入过滤不足,输入可以显示在页面上对其他用户造成影响的HTML代码,从而盗取用户资料、利用用户身份进行某种动作或者对访问者进行病毒侵害的一种攻击方式。

(1)GET方式跨站脚本

由于某些网站会对<script>标签进行了过滤,如果没有弹出显示1234的告警框,则在返回的页面上单击鼠标右键,查看网页源代码。查看网页源码中是否包含完整的<script>alert(1234)</script>字符串,这样不管有没有弹出显示1234的告警框,都表明存在跨站脚本漏洞。

(2)POST方式跨站脚本

post方式同上,一般可以利用hackbar插件的Enable Post data插入验证内容。

2、框架注入、链接注入

原理:框架注入是一个所有基于GUI的浏览器攻击,是由于脚本没有对它们正确验证,攻击者有可能注入含有恶意内容的frame或iframe标记。

链接注入是修改站点内容的行为,其方式为将外部站点的URL嵌入其中,或将有易受攻击的站点中的脚本的URL嵌入其中。将URL嵌入易受攻击的站点中,攻击者便能够以它为平台来启动对其他站点的攻击,以及攻击这个易受攻击的站点本身。

具体方法:通过对网站中的get提交的url中的参数进行框架或者链接注入,注入到参数id

3、允许TRACE方法

原理:TRACE方法是HTTP协议定义的一种协议调试方法,该方法使得服务器原样返回任何客户端请求的内容。攻击者利用TRACE请求,结合其它浏览器端漏洞,有可能进行跨站脚本攻击,获取敏感信息,比如cookie中的认证信息,这些敏感信息将被用于其它类型的攻击。

4、Struts2远程命令

原理:作为网站开发的底层模板使用,是应用最广泛的Web应用框架之一。

一种漏洞类型是使用缩写的导航参数前缀时的远程代码执行漏洞,常见的有Struts2远程命令执行S2-045、Struts2远程命令执行S2-016、Struts2远程命令执行S2-019、Struts2远程命令执行S2-033、Struts2远程命令执行S2-037。

5、Struts2 URL跳转S2-017

原理:Struts2 URL跳转S2-017,是Struts2远程命令的第二类漏洞,是使用缩写的重定向参数前缀时的开放式重定向漏洞。

利用SQL注入 获取网站管理员账号密码


 实验工具:kali linux(没有的话看文末下载即可)

Sqlmap注入命令常用表

1.-u #注入点

  1. -f #指纹判别数据库类型

  2. -b #获取数据库版本信息

  3. -p #指定可测试的参数 

  4. -D "" #指定数据库名

  5. -T "" #指定表明

  6. -C "" #指定字段

  7. --level=1-5 #要执行的测试水平等级

  8. --risk=0-3 #要执行的风险等级

  9. --data #通过post发送数据

  10. --columns #列出字段

  11. --current-user #获取当前用户名称

  12. --current-db #获取当前数据库名称

  13. --users #列出数据库所有用户

  14. --passwords #数据库用户所有密码

  15. --privileges  #查看用户权限(--privileges -U root 

  16. -U  #指定数据库用户

  17. --dbs  #列出所有数据库

  18. --tables -D     "" #列出指定数据库中的表

  19. --columns -T     "user" -D "mysql"  #列出mysql数据库中user表的所有字段

  20. --dump-all  #列出所有数据库所有表

  21. --exclude-sysdbs  #只列出用户自己新建的数据库和表

  22. --dbms  #指定数据库

  23. --os  #指定操作系统

  24. --is-dba  #是否是数据库管理员

  25. --union-check  #是否支持union注入

  26. --union-use  #采用union注入

  27. --cookie     ""  #cookie注入

  28. --user-agent  #自定义user-agent

  29. --string=""  #字符串匹配

  30. --sql-shell  #执行指定sql注入

  31. --file-read  #读取指定文件

  32. --file-write  #写入本地文件

  33. --os-cmd-id  #执行系统命令

  34. --os--pwn  #反弹shell



     

SQL的攻击注入 

SQL注入的漏洞验证

原理:指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,以此来实现欺骗数据库服务器执行非授权的任意查询,获取数据库信息。

1.这次选择的是某靶场的实战

利用SQL注入 获取网站管理员账号密码


2.上一篇我们利用了AWVS进行漏洞发现,直接验证漏洞

kali里利用sqlmap验证发现存在SQL注入漏洞

 

利用SQL注入 获取网站管理员账号密码


 

3.进行注入攻击,报出了2个数据库

利用SQL注入 获取网站管理员账号密码

 


4.报出数据库接着报出表单表单也报出来了 2个数据库的表单都在   

利用SQL注入 获取网站管理员账号密码

 而要想获得用户名账号和密码就需要判断了 一般用户名的账号和密码都在admin里面


  

5.尝试进行admin的表单进行字段注入

 利用SQL注入 获取网站管理员账号密码

 注入发现了保存有用户名和密码的字段

 

6.阐述获取用户名

利用SQL注入 获取网站管理员账号密码

再次爆破 发现用户名已经爆出来了

  

7.获取管理员用户密码


爆出密码 是三行cmd5 的密文将密文进行解密 就获得了管理员密码

 

8.解密密码爆破出来这里可以搜索cmd5进行解密。这里就不再演示

 

注:需要注入命令 可以关注:(天银安全)  回复:注入 即可免费获取


 感谢关注《天银安全》复制链接免费获取学习视频,定期给大家更新

链接:https://pan.baidu.com/s/1lU25rOkIvrFaeGHJifXROg?pwd=TYAQ 

提取码:TYAQ