All Projects → sensepost → punch-q

sensepost / punch-q

Licence: GPL-3.0 license
👊 A small utility to play with IBM MQ

Programming Languages

python
139335 projects - #7 most used programming language
go
31211 projects - #10 most used programming language
Dockerfile
14818 projects
Makefile
30231 projects
shell
77523 projects

Projects that are alternatives of or similar to punch-q

mq-java-exporter
Exporter for IBM MQ metrics https://prometheus.io/
Stars: ✭ 19 (-61.22%)
Mutual labels:  ibm, mq, ibm-mq
Model-M-Type-C
A modern yet simple Model M replacement controller
Stars: ✭ 67 (+36.73%)
Mutual labels:  ibm
Carbon Web Components
Carbon Design System variant on top of Web Components
Stars: ✭ 171 (+248.98%)
Mutual labels:  ibm
ILEditor
IBM i development environment (IDE)
Stars: ✭ 83 (+69.39%)
Mutual labels:  ibm
Komiser
☁️ Cloud Environment Inspector 👮🔒 💰
Stars: ✭ 2,684 (+5377.55%)
Mutual labels:  ibm
predict-wildfire-intensity
WARNING: This repository is no longer maintained ⚠️ This repository will not be updated.
Stars: ✭ 32 (-34.69%)
Mutual labels:  ibm
Backend
Backend is responsible to provide data to EVOlution App - iOS
Stars: ✭ 123 (+151.02%)
Mutual labels:  ibm
icp-ce-on-linux-containers
Multi node IBM Cloud Private Community Edition 3.2.x w/ Kubernetes 1.13.5 in a Box. Terraform, Packer and BASH based Infrastructure as Code script sets up a multi node LXD cluster, installs ICP-CE and clis on a metal or VM Ubuntu 18.04 host.
Stars: ✭ 52 (+6.12%)
Mutual labels:  ibm
hyperion
The SoftDevLabs (SDL) version of the Hercules 4.x Hyperion System/370, ESA/390, and z/Architecture Emulator
Stars: ✭ 149 (+204.08%)
Mutual labels:  ibm
ServiceCommander-IBMi
Service Commander for IBM i
Stars: ✭ 29 (-40.82%)
Mutual labels:  ibm
openshift-install-power
UPI Install helper to deploy OpenShift 4 on IBM Power Systems Virtual Server using Terraform IaC
Stars: ✭ 16 (-67.35%)
Mutual labels:  ibm
mq-golang-jms20
JMS style messaging interface for Golang applications connecting to IBM MQ
Stars: ✭ 26 (-46.94%)
Mutual labels:  ibm-mq
kafka-connect-mq-sink
This repository contains a Kafka Connect sink connector for copying data from Apache Kafka into IBM MQ.
Stars: ✭ 27 (-44.9%)
Mutual labels:  ibm-mq
Terraform Provider Ibm
Terraform on IBM provider https://cloud.ibm.com/docs/ibm-cloud-provider-for-terraform?topic=ibm-cloud-provider-for-terraform-getting-started
Stars: ✭ 210 (+328.57%)
Mutual labels:  ibm
coax
Tools for connecting to real IBM 3270 type terminals
Stars: ✭ 29 (-40.82%)
Mutual labels:  ibm
Mq Container
Container images for IBM® MQ
Stars: ✭ 138 (+181.63%)
Mutual labels:  ibm
akka-react-cloudant
A Soccer Dashboard created by scraping EPL website using Akka backend and ReactJS frontend and IBM Cloudant for object storage. IBM Cloud Foundry is used to host both frontend and backend app.
Stars: ✭ 21 (-57.14%)
Mutual labels:  ibm
base
小而美的业务基础框架,也是本项目的核心
Stars: ✭ 47 (-4.08%)
Mutual labels:  mq
omxware-getting-started
Examples to get started with IBM Functional Genomics Platform
Stars: ✭ 13 (-73.47%)
Mutual labels:  ibm
ascii-art
ASCII art images for Neofetch (and beyond)
Stars: ✭ 27 (-44.9%)
Mutual labels:  ibm


👊 punch-q

A small utility to play with IBM MQ

@leonjza PyPI version Docker Cloud Build Status


introduction

punch-q is a small Python utility used to play with IBM MQ instances. Using punch-q, it is possible to perform security related tasks such as manipulating messages on an IBM MQ queue granting one the ability to tamper with business processes at an integration layer.

features

With punch-q, you can:

  • GET / PUT / SNIFF messages on message queues.
  • Execute commands using MQ services.
  • Perform various brute force attacks.

examples

Sniffing messages from a message queue:

message sniff

Executing commands via MQ services:

command execution

installation - docker

A docker container for punch-q exists and can be used with:

docker run --rm -ti leonjza/punch-q

Alternatively the container can be built locally with:

git clone https://github.com/sensepost/punch-q.git
cd punch-q
docker build -t punch-q:local .

Once done, you can run punch-q with (note the tag if you build it yourself):

docker run --rm -ti leonjza/punch-q --help

installation - host

This utility relies on pymqi and needs to be successfully installed for punch-q to work. The installation of pymqi relies on the IBM MQ client utilities to be available which you would need to download from IBM's website first. This Github issue can be used as a reference to install the correct MQ Client libraries.

Alternatively, a hint from this repository means one could just download and extract the archive in the correct location to compile pymqi. This is how the docker container does it.

To get the IBM MQ client for pymqi and punch-q working, you need to:

  • Download the IBM MQ Client libraries for Linux from IBM's website here. Older versions and ibraries for other operating systems is also available here.
  • Extract the downloaded archive to /opt/mqm.

Finally, punch-q itself can be installed with:

pip install punch-q

Note: When running punch-q, and you get an error similar to Importing pymqi failed with: libmqic_r.so: cannot open shared object file: No such file or directory!, simply set the LB_LIBRARY_PATH to /opt/mqm/lib64 library with:

export LD_LIBRARY_PATH=/opt/mqm/lib64

osquery table plugin

An osquery table plugin PoC can also be found in this repository here.

license

punch-q is licensed under a GNU General Public v3 License. Permissions beyond the scope of this license may be available at http://sensepost.com/contact/.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].