zoukankan      html  css  js  c++  java
  • SQL注入实验

    实验环境

    1.运行Apache Server:镜像已经安装,只需运行命令%sudo service apache2 start
    2.phpBB2 web应用:镜像已经安装,通过http://www.sqllabmysqlphpbb.com访问,应用程序源代码位于/var/www/SQL/SQLLabMysqlPhpbb/
    3.配置DNS:上述的URL仅仅在镜像内部可以访问,原因是我们修改了/etc/hosts文件使http://www.sqllabmysqlphpbb.com指向本机IP 127.0.0.1。如果需要在其他机器访问,应该修改hosts文件,使URL映射到phpBB2所在机器的IP。
    4.找到/etc/php5/apache2/php.ini,找到magic_quotes_gpc = On这一行改为magic_quotes_gpc = Off
    在之前的实验中实验环境已经搭配好了。

    实验任务

    对SELECT语句的攻击

    此次任务,你需要通过访问虚拟机内的URL:www.sqllabmysqlphpbb.com。在进入phpBB之前系统会要求你登陆。这个登陆认证由服务器上的login.php实现,需要用户输入用户名和密码来通过认证。
    实现过程如下

    对UPDATE语句的攻击

    当用户想要在phpBB2中修改他们的资料时,可以点击Profile,然后填写表单修改。用户发送修改请求后,会执行include/usercp_register.php中的一条UPDATE SQL语句。在这条语句中同样有一个SQL注入漏洞,请用它来达到以下目标:在不知道其他人密码的情况下修改其资料。例如:你以Alice登陆,你的目标就是修改Ted的资料信息,包括他的密码。攻击成功后你将可以登陆Ted的账号
    有一个在这个SQL语句中的SQL注入漏洞;

    sudo vim /var/www/SQL/Collabtive/include/class.user.php
    

    我们会发现​sql语句为:SELECT ID WHERE name=​'$user',并且company的位置是存在注入漏洞。

    这样我们就可以越权来修改其他用户的信息及密码;我们使用任意用户,如: bob bob 进行登录;

    在编辑用户的位置:user 填 ted用户;

    Company 处填:

    ', pass = '9d4e1e23bd5b727046a9e3b4b7db57bd8d6ee684' WHERE ID = 4 # '
    

  • 相关阅读:
    【实战】一次简单的js接口漏洞挖掘
    【实战】Location 302跳转 + CRLF 场景下的XSS
    【实战】权限绕过小结
    【实战】简单的API接口FUZZ小案例
    【实战】一次有趣的逻辑漏洞挖掘
    【实战】一个简单的SQL注入绕过
    【实战】springboot actuator未授权访问之trace接口泄漏敏感信息
    【实战】springboot actuator未授权访问之heapdump敏感信息提取
    层次分析法AHP
    pyppeteer(1)
  • 原文地址:https://www.cnblogs.com/lxy666666/p/6885139.html
Copyright © 2011-2022 走看看