Skip to content

ricardojoserf/s7-parser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 

Repository files navigation

s7-parser

S7 protocol parser using Libpcap. You can extract the S7 packets from a PCAP file with both IT and industrial protocols, to study only the S7 packets.

S7comm (S7 Communication) is a Siemens proprietary protocol that runs between programmable logic controllers (PLCs) of the Siemens S7-300/400 family. It is used for PLC programming, exchanging data between PLCs, accessing PLC data from SCADA (supervisory control and data acquisition) systems and diagnostic purposes.

I created this because the S7's Wireshark filter does not recognise some packets correctly and the Python library scapy did not load some of the example pcaps correctly.

Usage

./s7parser $input_file $output_file

Testing with one of the test PCAP files in s7_test/ :

./s7parser s7_test/password.pcapng result_test.pcap

The result is a PCAP with only the S7 extracted packets:

image

Installation

apt install libpcap-dev
git clone https://github.com/ricardojoserf/s7-parser
cd s7-parser/
gcc s7.c -o s7parser -lpcap

References