2020年12月3日 星期四

SQL injection 測試方法及工具

 Reference:

資安滲透攻防筆記-1

sqlmap®

Using sqlmap for testing HTTPS sites

使用工具 SQLMAP 檢測

安裝在CentOS 7,步驟:

  • yum install python
  • yum install git
  • git clone --depth 1 https://github.com/sqlmapproject/sqlmap.git sqlmap-dev
  • yum install squid
  • service squid start

執行:

  • cd sqlmap-dev/
  • ./sqlmap.py -u "https://target.com/" --batch
  • 若網頁需要輸入資料,指令 ./sqlmap.py -u "https://target.com/" --batch --forms

(2021.7.13 version update後似乎不需要 --batch --proxy "http://127.0.0.1:3128")

  • ./sqlmap.py -u "https://target.com/" --batch --proxy "http://127.0.0.1:3128"


人工檢測

如果網址是 php,可測試

  • #網站弱點範例的URL
  • http://example.com/show.php?article=1 OR 1=1

如果是 Form 型式的 php 網站

  • 在 Form 欄位輸入 ’OR 1=1 #
如果是 Form 型式的 asp 網站

  • 在 Form 欄位輸入 ' OR 1=1 --   (** -- 後一定要加空格)

  • 2021.7.13 update:
    SQLmap版本更新後需要python >= 2.7.9
    python version updtae方法

    步驟:
    • wget https://www.python.org/ftp/python/2.7.18/Python-2.7.18.tgz
    • tar -xvzf Python-2.7.18.tgz
    • yum install gcc* openssl openssl-devel ncurses-devel.x86_64  bzip2-devel sqlite-devel python-devel zlib
    • cd Python-2.7.18
    • ./configure --prefix=/usr/local
    • make #compile
    • make altinstall
    • mv /usr/bin/python /usr/bin/python2.7.5
    • ln -s /usr/local/bin/python2.7 /usr/bin/python
    • python -V 
    • vi /usr/bin/yum
      • Change #!/usr/bin/python in the first line to #!/usr/bin/python2.7.5
    • vi /usr/libexec/urlgrabber-ext-down
      • Change #!/usr/bin/python in the first line to #!/usr/bin/python2.7.5



    沒有留言:

    張貼留言