sqlmap搭建&手册

0×00 python环境搭建

  • a.下载
    下载地址:https://www.python.org/downloads/ (这里推荐ptyhon2版本,python3版本与sqlmap不兼容)
  • b.安装
    默认路径为C:\Python27,可更改至其他盘 如D:\Python27
    根据提示“下一步”即可
  • c.配置环境变量
    计算机 --> 属性 --> 高级系统设置 --> 环境变量 --> 系统变量 --> path中添加“D:\Python27”


    sqlmap搭建&手册_第1张图片
sqlmap搭建&手册_第2张图片
sqlmap搭建&手册_第3张图片
  • d.测试
    cmd --> python 若返回python版本,则配置成功
sqlmap搭建&手册_第4张图片

0×01 sqlmap环境搭建

  • a.下载
    下载地址:http://sqlmap.org/

  • b.配置
    将上述下载的文件夹更名为"sqlmap",将sqlmap文件夹剪切至python文件夹中;


    sqlmap搭建&手册_第5张图片

配置环境变量,同上python,path中添加“D:\Python27\sqlmap”

  • c.测试
    cmd --sqlmap.py 若返回sqlmap版本,则配置成功


    sqlmap搭建&手册_第6张图片

0×02 sqlmap手册

Options:
 -h, --help            显示基本帮助信息
 -hh                   显示高级帮助信息
 --version             显示版本号
 -v VERBOSE            详细级别:0-6(默认为1).设置输出信息的详细程度
                    0:只显示追踪栈 ,错误以及重要信息。1:还显示信息和警告。2:显示debug消息。3:显示注入payload。
                    4:显示HTTP请求。5:显示HTTP响应头。6:显示HTTP响应内容
Target:(至少需要一种提供给url)
-u URL, --url=URL   Target URL (e.g. "http://www.site.com/vuln.php?id=1")
-g GOOGLEDORK       Process Google dork results as target URLs
-d DIRECT           直接连接到数据库的连接字符串。
-l LOGFILE          从Burp或WebScarab代理的日志中解析目标
-x SITEMAPURL       Parse target(s) from remote sitemap(.xml) file           从远程站点地图文件(.xml)解析目标(s)
-m BULKFILE         Scan multiple targets given in a textual file            扫描文本文件中给出的多个目标  
-r REQUESTFILE      Load HTTP request from a file                            从文件加载HTTP请求  
-g GOOGLEDORK       Process Google dork results as target URLs               处理Google dork的结果作为目标URL
-c CONFIGFILE       Load options from a configuration INI file               从INI配置文件中加载选项。  
Request:(用来指定如何连接到目标url)
  --method=METHOD     Force usage of given HTTP method (e.g. PUT)             强制使用给定的HTTP方法(e.g. PUT)  
--data=DATA         Data string to be sent through POST                       通过POST发送的数据字符串  
--param-del=PARA..  Character used for splitting parameter values             用于拆分参数值的字符  
--cookie=COOKIE     HTTP Cookie header value                                  HTTP Cookie头的值  
--cookie-del=COO..  Character used for splitting cookie values                用于分割Cookie值的字符  
--load-cookies=L..  File containing cookies in Netscape/wget format           包含Netscape / wget格式的cookie的文件 
--drop-set-cookie   Ignore Set-Cookie header from response                    从响应中忽略Set-Cookie头  
--user-agent=AGENT  HTTP User-Agent header value                              指定 HTTP User - Agent头    
--random-agent      Use randomly selected HTTP User-Agent header value        使用随机选定的HTTP User - Agent头
--host=HOST         HTTP Host header value                                    HTTP主机头值 
--referer=REFERER   HTTP Referer header value                                 指定 HTTP Referer头 
-H HEADER, --hea..  Extra header (e.g. "X-Forwarded-For: 127.0.0.1")          额外header  
--headers=HEADERS   Extra headers (e.g. "Accept-Language: fr\nETag: 123")     额外header  
--auth-type=AUTH..  HTTP authentication type (Basic, Digest, NTLM or PKI)     HTTP认证类型(Basic, Digest, NTLM or PKI) 
--auth-cred=AUTH..  HTTP authentication credentials (name:password)           HTTP认证凭证(name:password)  
--auth-file=AUTH..  HTTP authentication PEM cert/private key file             HTTP认证 PEM认证/私钥文件  
--ignore-401        Ignore HTTP Error 401 (Unauthorized)                      忽略HTTP错误401(未经授权)  
--ignore-proxy      Ignore system default proxy settings                      忽略系统默认代理设置 
--ignore-redirects  Ignore redirection attempts
--ignore-timeouts   Ignore connection timeouts
--proxy=PROXY       Use a proxy to connect to the target URL                  使用代理连接到目标网址  
--proxy-cred=PRO..  Proxy authentication credentials (name:password)          代理认证证书(name:password)   
--proxy-file=PRO..  Load proxy list from a file                               从文件中加载代理列表  
--tor               Use Tor anonymity network                                 使用Tor匿名网络  
--tor-port=TORPORT  Set Tor proxy port other than default                     设置Tor代理端口而不是默认值  
--tor-type=TORTYPE  Set Tor proxy type (HTTP, SOCKS4 or SOCKS5 (default))     设置Tor代理类型  
--check-tor         Check to see if Tor is used properly                      检查Tor是否正确使用
--delay=DELAY       Delay in seconds between each HTTP request                每个HTTP请求之间的延迟(秒)
--timeout=TIMEOUT   Seconds to wait before timeout connection (default 30)    秒超时连接前等待(默认30) 
--retries=RETRIES   Retries when the connection timeouts (default 3)          连接超时时重试(默认值3)
--randomize=RPARAM  Randomly change value for given parameter(s)              随机更改给定参数的值(s) 
--safe-url=SAFEURL  URL address to visit frequently during testing            在测试期间频繁访问的URL地址 
--safe-post=SAFE..  POST data to send to a safe URL                           POST数据发送到安全URL  
--safe-req=SAFER..  Load safe HTTP request from a file                        从文件加载安全HTTP请求  
--safe-freq=SAFE..  Test requests between two visits to a given safe URL      在两次访问给定安全网址之间测试请求
--skip-urlencode    Skip URL encoding of payload data                         跳过有效载荷数据的URL编码  
--csrf-token=CSR..  Parameter used to hold anti-CSRF token                    参数用于保存anti-CSRF令牌  
--csrf-url=CSRFURL  URL address to visit to extract anti-CSRF token           提取anti-CSRF URL地址访问令牌  
--force-ssl         Force usage of SSL/HTTPS                                  强制使用SSL / HTTPS    
--hpp               Use HTTP parameter pollution method                       使用HTTP参数pollution的方法 
--eval=EVALCODE     Evaluate provided Python code before the request (e.g.    评估请求之前提供Python代码  
                    "import hashlib;id2=hashlib.md5(id).hexdigest()")
Injection:(用来指定测试哪些参数, 提供自定义的注入payloads和可选篡改脚本)
-p TESTPARAMETER    可测试的参数(S)
--skip=SKIP         Skip testing for given parameter(s)    跳过对给定参数的测试  
--skip-static       Skip testing parameters that not appear to be dynamic    跳过测试不显示为动态的参数  
--param-exclude=..  Regexp to exclude parameters from testing (e.g. "ses")    使用正则表达式排除参数进行测试(e.g. "ses")
--dbms=DBMS         强制后端的DBMS为此值
--dbms-cred=DBMS..  DBMS认证凭证(user:password)   
--os=OS             强制后端的DBMS操作系统为这个值
--invalid-bignum    使用大数字使值无效  
--invalid-logical   使用逻辑操作使值无效  
--invalid-string    使用随机字符串使值无效  
--no-cast           Turn off payload casting mechanism    关闭有效载荷铸造机制  
--no-escape         Turn off string escaping mechanism    关闭字符串转义机制  
--prefix=PREFIX     注入payload字符串前缀
--suffix=SUFFIX     注入payload字符串后缀
--tamper=TAMPER     使用给定的脚本(S)篡改注入数据
Brute force(野蛮、蛮力):
--common-tables     Check existence of common tables     检查存在共同表
--common-columns    Check existence of common columns    检查存在共同列
Detection:(自定义检测阶段--可以用来指定在sql盲注时如何解析和比较http响应页面的内容)
--level=LEVEL       Level of tests to perform (1-5, default 1)
--risk=RISK         Risk of tests to perform (1-3, default 1)
Techniques:(调整具体sql注入测试)
   --technique=TECH    SQL注入技术测试(默认BEUST)
--time-sec=TIMESEC  DBMS响应的延迟时间(默认为5秒)
--union-cols=UCOLS  Range of columns to test for UNION query SQL injection    定列范围用于测试UNION查询注入  
--union-char=UCHAR  Character to use for bruteforcing number of columns       用于暴力猜解列数的字符  
--union-from=UFROM  Table to use in FROM part of UNION query SQL injection    要在UNION查询SQL注入的FROM部分使用的表
--dns-domain=DNS..  Domain name used for DNS exfiltration attack              域名用于DNS漏出攻击 
--second-order=S..  Resulting page URL searched for second-order response     生成页面的URL搜索为second-order响应  
Enumeration:(枚举)
  -a, --all           Retrieve everything
-b, --banner        Retrieve DBMS banner                      检索数据库管理系统的标识
--current-user      Retrieve DBMS current user                检索数据库管理系统当前用户
--current-db        Retrieve DBMS current database            检索数据库管理系统当前数据库
--hostname          Retrieve DBMS server hostname
--is-dba            Detect if the DBMS current user is DBA    检测DBMS当前用户是否DBA
--users             Enumerate DBMS users                      枚举数据库管理系统所有的用户
--passwords         Enumerate DBMS users password hashes      枚举数据库管理系统用户密码哈希
--privileges        Enumerate DBMS users privileges           枚举数据库管理系统用户的权限
--roles             Enumerate DBMS users roles                枚举数据库管理系统用户的角色
--dbs               Enumerate DBMS databases                  枚举数据库管理系统所有数据库
--tables            Enumerate DBMS database tables            枚举的DBMS数据库中所有的表
--columns           Enumerate DBMS database table columns     枚举DBMS数据库表所有的列
--schema            Enumerate DBMS schema
--count             Retrieve number of entries for table(s)
--dump              Dump DBMS database table entries          转储数据库管理系统的数据库中的表项
--dump-all          Dump all DBMS databases tables entries    转储所有的DBMS数据库表中的条目
--search            Search column(s), table(s) and/or database name(s)    搜索列(S),表(S)和/或数据库名称(S)
--comments          Retrieve DBMS comments
-D DB               DBMS database to enumerate                要进行枚举的指定数据库名
-T TBL              DBMS database table(s) to enumerate       要进行枚举的指定数据库表(如:-T tablename –columns)
-C COL              DBMS database table column(s) to enumerate要进行枚举的数据库列
-X EXCLUDECOL       DBMS database table column(s) to not enumerate
-U USER             DBMS user to enumerate                    用来进行枚举的数据库用户
--exclude-sysdbs    Exclude DBMS system databases when enumerating tables 枚举表时排除系统数据库
--pivot-column=P..  Pivot column name
--where=DUMPWHERE   Use WHERE condition while table dumping
--start=LIMITSTART  First query output entry to retrieve      第一个查询输出进入检索
--stop=LIMITSTOP    Last query output entry to retrieve       最后查询的输出进入检索
--first=FIRSTCHAR   First query output word character to retrieve  第一个查询输出字的字符检索
--last=LASTCHAR     Last query output word character to retrieve   最后查询的输出字字符检索
--sql-query=QUERY   SQL statement to be executed                   要执行的SQL语句
--sql-shell         Prompt for an interactive SQL shell            提示交互式SQL的shell
--sql-file=SQLFILE  Execute SQL statements from given file(s)
Operating system access:(操作系统访问)
   --os-cmd=OSCMD      执行操作系统命令
--os-shell          Prompt for an interactive operating system shell       交互式的操作系统的shell
--os-pwn            Prompt for an OOB shell, Meterpreter or VNC            获取一个OOB shell,meterpreter或VNC
--os-smbrelay       One click prompt for an OOB shell, Meterpreter or VNC  一键获取一个OOB shell,meterpreter或VNC
--os-bof            Stored procedure buffer overflow exploitation          存储过程缓冲区溢出利用
--priv-esc          Database process user privilege escalation             数据库进程用户权限提升
--msf-path=MSFPATH  Local path where Metasploit Framework is installed     Metasploit Framework本地的安装路径
--tmp-path=TMPPATH  Remote absolute path of temporary files directory      远程临时文件目录的绝对路径
General:(设置一些一般的工作参数)
-s SESSIONFILE      Load session from a stored (.sqlite) file               保存和恢复检索会话文件的所有数据  
-t TRAFFICFILE      Log all HTTP traffic into a textual file                记录所有HTTP流量到一个文本文件中  
--batch             Never ask for user input, use the default behaviour     从不询问用户输入,使用所有默认配置。
--binary-fields=..  Result fields having binary values (e.g. "digest")      具有二进制值的结果字段  
--charset=CHARSET   Force character encoding used for data retrieval        强制用于数据检索的字符编码
--crawl=CRAWLDEPTH  Crawl the website starting from the target URL          从目标网址开始抓取网站
--crawl-exclude=..  Regexp to exclude pages from crawling (e.g. "logout")   正则表达式排除网页抓取 
--csv-del=CSVDEL    Delimiting character used in CSV output (default ",")   分隔CSV输出中使用的字符
--dump-format=DU..  Format of dumped data (CSV (default), HTML or SQLITE)   转储数据的格式
--eta               Display for each output the estimated time of arrival   显示每个输出的预计到达时间
--flush-session     Flush session files for current target                  刷新当前目标的会话文件  
--forms             Parse and test forms on target URL                      在目标网址上解析和测试表单
--fresh-queries     Ignore query results stored in session file             忽略在会话文件中存储的查询结果
--hex               Use DBMS hex function(s) for data retrieval             使用DBMS hex函数进行数据检索  
--output-dir=OUT..  Custom output directory path                            自定义输出目录路径  
--parse-errors      Parse and display DBMS error messages from responses    解析和显示响应中的DBMS错误消息
--save=SAVECONFIG   Save options to a configuration INI file                保存选项到INI配置文件  
--scope=SCOPE       Regexp to filter targets from provided proxy log        使用正则表达式从提供的代理日志中过滤目标
--test-filter=TE..  Select tests by payloads and/or titles (e.g. ROW)       根据有效负载和/或标题(e.g. ROW)选择测试
--test-skip=TEST..  Skip tests by payloads and/or titles (e.g. BENCHMARK)   根据有效负载和/或标题跳过测试(e.g. BENCHMARK)  
--update            Update sqlmap                                           更新SqlMap  
Miscellaneous:(其他杂项)
--z MNEMONICS        Use short mnemonics (e.g. "flu,bat,ban,tec=EU")         使用简短的助记符 
--alert=ALERT       Run host OS command(s) when SQL injection is found       在找到SQL注入时运行主机操作系统命令 
--answers=ANSWERS   Set question answers (e.g. "quit=N,follow=N")            设置问题答案  
--beep              发现SQL注入时提醒
--cleanup           Clean up the DBMS from sqlmap specific UDF and tables    SqlMap具体的UDF和表清理DBMS 
--dependencies      Check for missing (non-core) sqlmap dependencies         检查是否缺少(非内核)sqlmap依赖关系
--disable-coloring  Disable console output coloring                          禁用控制台输出颜色 
--gpage=GOOGLEPAGE  Use Google dork results from specified page number       使用Google dork结果指定页码  
--identify-waf      Make a thorough testing for a WAF/IPS/IDS protection     对WAF / IPS / IDS保护进行全面测试  
--mobile            Imitate smartphone through HTTP User-Agent header 
--offline           Work in offline mode (only use session data)             在离线模式下工作(仅使用会话数据)  
--purge-output      Safely remove all content from output directory          安全地从输出目录中删除所有内容  
--skip-waf          Skip heuristic detection of WAF/IPS/IDS protection       跳过启发式检测WAF / IPS / IDS保护 
--smart             Conduct thorough tests only if positive heuristic(s)     只有在正启发式时才进行彻底测试  
--sqlmap-shell      Prompt for an interactive sqlmap shell
--tmp-dir=TMPDIR    Local directory for storing temporary files
--web-root=WEBROOT  Web server document root directory (e.g. "/var/www")
--wizard            Simple wizard interface for beginner users               给初级用户的简单向导界面

至此~~~
sqlmap的环境搭建以及手册介绍完成啦~~
如有问题,请您指教~~~

你可能感兴趣的:(sqlmap搭建&手册)