一、说明

在JBoss服务器上部署web应用程序,有很多不同的方式,诸如:JMX Console、Remote Method Invocation(RMI)、JMXInvokerServlet、HttpAdapter等。根据内网测试的需求,写了一段代码,代码逻辑看注释。

二、代码实现

读取带有IP的文本内容,如果有端口以冒号(:)分隔,那就默认将该端口当成WEB端口。如果只有IP,那么就把端口设定为默认的80。

Python代码:


#!/usr/bin/env python
# coding=utf8
######################################
## 代码补丁的少年 zzzhhh ##
## 时间:20170925 ##
## 批量查询Jboss JMXInvokerServlet ##
######################################
import httplib
import os
import sys
import re ## 读取IP
def JBossScan(weblist):
fle_context = file(weblist, 'r')
for file_index in fle_context:
file_index = file_index.strip('\n') # 去掉空行
file_index = file_index.replace('http://', '') # 去掉HTTP://
ip_context = file_index.split(':') # 以:分隔
if len(ip_context)>=2:
ip = ip_context[-2] # 取列表倒数第二
pt = ip_context[-1] # 取列表倒数第一
else:
ip = ip_context[-1] # 否则取默认IP
pt = 80 # 默认端口为80
conn = httplib.HTTPConnection(ip, port=pt, timeout=1)
try:
conn.request('HEAD', '/invoker/JMXInvokerServlet') # 探测这个路径是否存在
except:
print '[*]http://%s:%s/invoker/JMXInvokerServlet ---------------------------Timeout' % (ip, pt) # 访问不成功就提示超时
continue
res = conn.getresponse()
# HTTP状态码
if res.status == 200:
print '[*]http://%s:%s/invoker/JMXInvokerServlet ---------------------------Found' % (ip, pt)
os.system(
'echo http://%s:%s/invoker/JMXInvokerServlet ---------------------------Found >> scucsess.txt' % ( # 把访问成功的路径存储到.txt
ip, pt))
else:
print '[*]http://%s:%s/invoker/JMXInvokerServlet ---------------------------Not Found' % (ip, pt) # 没找到路径,但是开启了相关端口
fle_context.close() if __name__ == '__main__':
try:
JBossScan(sys.argv[1]) # 参数形式
#JBossScan("D:\\ProjectCode\\PyScript\\WebUrl.txt") # 固定路径
except:
print 'usage: python jbosscan.py weblist.txt'

WebUrl.txt的内容:

192.168.1.1
192.168.17.1
http://10.1.128.203:1300
http://10.1.128.208:1300
http://10.1.128.206:1300
http://10.1.128.208:1200
http://10.1.128.206:1200
http://10.1.128.199:1200
http://10.1.128.195:1200
http://10.255.242.20:1199
http://10.255.242.24:1199

三、代码效果

四、代码下载

链接: https://pan.baidu.com/s/1nuHb1rF 密码: g6de

压缩包内容:

JBOSS-JMX-EJB-InvokerServlet批量检测工具.py          --------批量扫描用

WebUrl.txt                                           --------IP存放

01-jBoss应用服务器JMXInvokerServlet远程命令执行漏洞   --------利用工具

- jboss_exploit_fat.jar

【Python】JBOSS-JMX-EJB-InvokerServlet批量检测工具的更多相关文章

  1. 基于Python实现的死链接自动化检测工具

    基于Python实现的死链接自动化检测工具   by:授客 QQ:1033553122 测试环境: win7 python 3.3.2 chardet 2.3.0 脚本作用: 检测系统中访问异常(请求 ...

  2. Bash漏洞批量检测工具与修复方案

    <img src="http://image.3001.net/images/20140928/14118931103311.jpg!small" t ...

  3. [POC]微软3389远程漏洞CVE-2019-0708批量检测工具

    0x001 Win下检测 https://github.com/robertdavidgraham/rdpscan C:\Users\K8team\Desktop\rdpscan-master\vs1 ...

  4. s2-045漏洞批量检测工具

    今天晚上看老铁们在群里就这个st2-045漏洞讨论得火热,个人不太喜欢日站,本来想直接写个批量挂马的东西,但是想想还是算了,如果你有兴趣,改改也很容易,反正不关我的事 测试图 2017-3-8更新 增 ...

  5. python+jinja2实现接口数据批量生成工具

    在做接口测试的时候,我们经常会遇到一种情况就是要对接口的参数进行各种可能的校验,手动修改很麻烦,尤其是那些接口参数有几十个甚至更多的,有没有一种方法可以批量的对指定参数做生成处理呢. 答案是肯定的! ...

  6. 微软3389远程漏洞CVE-2019-0708批量检测工具

    0x001 Win下检测 https://github.com/robertdavidgraham/rdpscan C:\Users\K8team\Desktop\rdpscan-master\vs1 ...

  7. 基于Python的邮件检测工具

    邮件快速检测工具 概要介绍 mmpi,是一款使用python实现的开源邮件快速检测工具库,基于community框架设计开发.mmpi支持对邮件头.邮件正文.邮件附件的解析检测,并输出json检测报告 ...

  8. weblogic 反序列化补丁绕过漏洞的一个批量检测shell脚本(CVE-2017-3248 )

    ~ 以下内容,仅供学习参考 ~ weblogic 反序列化补丁绕过漏洞已经出了两个月了,balabala ~~~ 废话不说,拿到该漏洞的利用工具weblogic.jar,但只能一个个检测ip和端口,效 ...

  9. Python批量检测服务器端口可用性与Socket函数使用

    socket函数 简述 socket又称套间字或者插口,是网络通信中必不可少的工具.有道是:"无socket,不网络".由于socket最早在BSD Unix上使用,而Unix/L ...

随机推荐

  1. 开源工作流程引擎ccflow多人待办处理模式的详解

    多人待办工作处理模式,也是待办处理模式.是当接受的节点是多个人的时候,如何处理待办? 根据不用的场景,ccbpm把多人在普通节点下的处理模式分为如下几种. 抢办模式: A发送到B ,B节点上有n个人可 ...

  2. 自学Zabbix4.2 web监控项创建+item详解

    自学Zabbix4.2 web监控项创建+item详解 1. web监控项创建 1.1  Scenario 选项卡 Name: 监控项的名称 Application: 放到哪个应用中 Authenti ...

  3. 洛谷 P4097 [HEOI2013]Segment 解题报告

    P4097 [HEOI2013]Segment 题目描述 要求在平面直角坐标系下维护两个操作: 在平面上加入一条线段.记第 \(i\) 条被插入的线段的标号为 \(i\) 给定一个数 \(k\),询问 ...

  4. luogu1514 [NOIp2010]引水入城 (bfs+记忆化搜索)

    我们先bfs一下看看是否能到最底下的所有点 如果不能的话,直接把不能到的那几个数一数就行了 如果能的话: 可以发现(并不可以)某格能到达的最底下的格子一定是一个连续的区间 (因为如果不连续的话,我们先 ...

  5. 【uoj336】【清华集训2017】无限之环

    题目 描述 ​ 给出一个\(n*m\)的网格,每个格子里的水管可能向四个方向都有接口: ​ 游戏的目的是不能让水管漏水,即所有接口都有另一个接口与之相接: ​ 你一步可以将一个格子中的水管旋转\(90 ...

  6. 【洛谷P1463】反素数

    题目大意:给定 \(N < 2e9\),求不超过 N 的最大反素数. 题解: 引理1:不超过 2e9 的数的质因子分解中,最多有 10 个不同的质因子,且各个质因子的指数和不超过30. 引理2: ...

  7. 关于setvbuf()函数的详解

    为什么要使用setvbuf函数 如果你的内存足够大,可以把文件IO的BUF设置大一些,这样每次你用fopen/fread/fwrite/fscanf/fprintf语句的时候,都会在内存里操作,减少内 ...

  8. php中的session过期思考一二

    看了php开发组成员鸟哥的一篇关于php设置session过期(http://www.laruence.com/2012/01/10/2469.html)的文章 他也说了一般人的回答的几个答案, 回答 ...

  9. ip更换

    Python爬虫视频教程零基础小白到scrapy爬虫高手-轻松入门 https://item.taobao.com/item.htm?spm=a1z38n.10677092.0.0.482434a6E ...

  10. 20190408 XStream解析List

    XStream解析List 使用的JavaBean 普通JavaBean public class Book { private String name; public Book() { } publ ...