You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+25-8Lines changed: 25 additions & 8 deletions
Original file line number
Diff line number
Diff line change
@@ -14,7 +14,7 @@
14
14
15
15
## introduction
16
16
17
-
`punch-q` is a small Python 2 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.
17
+
`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.
18
18
19
19
## features
20
20
@@ -34,17 +34,34 @@ Executing commands via MQ services:
This utility relies on [pymqi](https://github.com/dsuch/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 installed which you would need to download from IBM's website first. [This](https://github.com/dsuch/pymqi/issues/15#issuecomment-124772995) Github issue can be used as a reference to install the correct MQ Client libraries.
55
+
This utility relies on [pymqi](https://github.com/dsuch/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](https://github.com/dsuch/pymqi/issues/15#issuecomment-124772995) Github issue can be used as a reference to install the correct MQ Client libraries.
56
+
57
+
Alternatively, a hint from [this](https://github.com/ibm-messaging/mq-golang/blob/master/Dockerfile#L53-L62) 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.
40
58
41
-
In summary, to get the IBM MQ client for `pymqi` and `punch-q` working, you need to:
59
+
To get the IBM MQ client for `pymqi` and `punch-q` working, you need to:
42
60
43
-
- Download the IBM MQ Client libraries from IBM's [website](http://www-01.ibm.com/software/integration/wmq/clients/). The version 7.5 x64 Linux client library was used while testing `punch-q` and can be found [here](https://www-945.ibm.com/support/fixcentral/swg/downloadFixes?parent=ibm~WebSphere&product=ibm/WebSphere/WebSphere+MQ&release=7.5.0.8&platform=All&function=fixId&fixids=7.5.0.8-WS-MQC-LinuxX64&useReleaseAsTarget=true&includeRequisites=0&includeSupersedes=0&downloadMethod=http) (You may need to login with an IBM ID first).
44
-
- After the download is complete, extract the archives contents and accept the IBM license agreement with `/mqlicense.sh -accept`.
45
-
- Install the `MQSeriesRuntime`, `MQSeriesClient` and `MQSeriesSDK` RPM's. These can be installed on Kali Linux after installing `alien` with `alien -i <PackageName>.rpm`.
61
+
- Download the IBM MQ Client libraries for Linux from IBM's website [here](https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/messaging/mqdev/redist/9.1.4.0-IBM-MQC-Redist-LinuxX64.tar.gz). Older versions and ibraries for other operating systems is also available [here](https://public.dhe.ibm.com/ibmdl/export/pub/software/websphere/messaging/mqdev/redist/).
62
+
- Extract the downloaded archive to `/opt/mqm`.
46
63
47
-
Finally, with the MQ series client installed, `punch-q` itself can be installed with:
64
+
Finally, `punch-q` itself can be installed with:
48
65
49
66
```bash
50
67
pip install punch-q
@@ -62,4 +79,4 @@ An osquery table plugin PoC can also be found in this repository [here](https://
62
79
63
80
## license
64
81
65
-
`punch-q` is licensed under a [GNU General Public v3 License](https://www.gnu.org/licenses/gpl-3.0.en.html). Permissions beyond the scope of this license may be available at http://sensepost.com/contact/.
82
+
`punch-q` is licensed under a [GNU General Public v3 License](https://www.gnu.org/licenses/gpl-3.0.en.html). Permissions beyond the scope of this license may be available at [http://sensepost.com/contact/](http://sensepost.com/contact/).
0 commit comments