Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/mliras/malmod

Malmod
https://github.com/mliras/malmod

Last synced: 3 months ago
JSON representation

Malmod

Awesome Lists containing this project

README

        

This scripts are a group of functions that try different "attacks" against del Modicon M340 PLC. Among the attacks that can be tried are:

- Try default FTP passwords
- Write blocks of rubbish in the PLCs memory
- Obtain information of any kind
- Get all system bits
- Get all system words
- Monitor all system bits
- Extract general PLC information
- Extract network information
- Extract zlib blobs from snmp
- Store file in holding registers
- Recover file from holding registers
- stop PLC remotely
- delete backup strategy

Other additional non-malicious functions:
- Upload strategy
- Download strategy
- Get Card Information
- Check if PLC is running
- start PLC
- Set Date
- Set Time
- Get Time

This script are confirmed by the following files:

- malmod.py : Starting point. Will launch a screen menu based on CURSES that will allow do different operations against a PLC. The script can also be run without CURSES menu. The script options are:

usage: malmod.py [-h] [-v|-w] -m [-u |-d |-i|-c|-a|-b|-x|-y|-k|-l|-L|-f|-n]
-h: this help text
-m : PLC IP address
MODIFIERS:
-v | --verbose: verbose output
-w | --very-verbose: very verbose output
ACTIONS:
--upload-strategy | -u : ATX file to upload
--download-strategy | -d : Path to ATX file to download strategy in
--get-info | -i: Get Device Information
-s: Get Card Information
--store-file | -a : Store File in Holding registers
--retrieve-file | -b : Retrieve File in Holding registers
--command-file | -c : Command File (Only in listener mode)
--listener-mode | -l: Listener Mode
--ncurses | -n: use curses interface
--restore-backup | -R: Restore strategy from backup
--delete-backup | -D: Delete backup of strategy from card
--backup | -B: Backup styrategy into card
--start | -y: Start PLC
-x: Check if PLC is Running (with -v)
--stop | -z: Stop PLC
--kill-plc | -k: Stop PLC
-f: Try default FTP passwords
--set-date=


--set-time=
--get-time: return time of PLC

- umas.py : Includes a pseudo-library for interacting with the Modicon M-340 using the UMAS library

- mal_functions.py: Includes a set of malicious functions that can be used against a Modicon M340 PLC

- modbus.py: Very bad chosen name for a set of auxiliary functions used by the rest of scripts to work. This file include functions like ione that opens and maintain it open a port the PLC can interact with, among others

- cliente_modbus.py: Python script for doing normal modbus requests against the modicon PLC. This does not use UMAS