pysap - Python library for crafting SAP's network protocols packets
SECUREAUTH LABS. Copyright (C) 2019 SecureAuth Corporation. All rights reserved.
Version 0.1.17.dev0 (XXX 2019)
SAP Netweaver and SAP HANA are technology platforms for building and integrating SAP business applications. Communication between components uses different network protocols and some services and tools make use of custom file formats as well. While some of them are standard and well-known protocols, others are proprietaries and public information is not available.
pysap is an open source Python library that provides modules for crafting and sending packets using SAP's NI, Diag, Enqueue, Router, Message Server, SNC and IGS protocols. In addition, support for creating and parsing different proprietary file formats is included. The modules are built on top of Scapy and are based on information acquired at researching the different protocols, file formats and services.
Dissection and crafting of the following network protocols:
- SAP Network Interface (NI)
- SAP Diag
- SAP Enqueue
- SAP Router
- SAP Message Server (MS)
- SAP Secure Network Connection (SNC)
- SAP Internet Graphic Server (IGS)
Client interfaces for handling the following file formats:
- SAP SAR archive files
- SAP PSE (Personal Security Environment) files
- SAP SSO Credential (Credv2) files
Library implementing SAP's LZH and LZC compression algorithms.
Automatic compression/decompression of payloads with SAP's algorithms.
Client, proxy and server classes implemented for some of the protocols.
Example scripts to illustrate the use of the different modules and protocols.
To install pysap simply run:
$ pip install pysap
Documentation is available at Read the Docs.
This library is distributed under the GPLv2 license. Check the
COPYING file for
The library was designed and developed by Martin Gallo from the SecureAuth Labs team.
Contributions made by:
- Florian Grunow (@0x79)
- Scott Walsh (@invisiblethreat)
- Joris van de Vis (@jvis)
- Victor Portal Gonzalez
- Dmitry Yudin (@ret5et)
- Hans-Christian Esperer (@hce)
- Vahagn Vardanyan (@vah13)
- Mathieu Geli (@gelim)
- Yvan Genuer (@iggy38)
- Malte Heinzelmann (@hnzlmnn)
- Albert Zedlitz
Whether you want to report a bug or give some suggestions on this package, drop
us a few lines at
firstname.lastname@example.org or contact the author email