
pysap is an open source Python library that provides modules for crafting and sending packets using SAP's NI, Diag, Enqueue, Router, MS, SNC, IGS, RFC and HDB protocols.
Version 0.2.1.dev0 (in dev)
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 generally not available.
pysap is an open source Python library that provides
modules for crafting and sending packets using SAP's NI, Diag, Enqueue, Router,
MS, SNC, IGS, RFC, NWRFC and HDB 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:
NI)DiagEnqueueRouterMS)SNC)IGS)RFC)NWRFC)HDB)Client interfaces for handling the following file formats:
SAR archive filesPSE) filesTo install pysap simply run:
$ python3 -m pip install pysap
pysap requires Python 3.10 or newer.
After a long time and thanks to a great community effort, the project has been just ported to Python 3. The project now runs on Python 3, but bugs are still expected to raise as more functionality is tested and evaluated. Testing support by the community is highly appreciated.
In addition, some of the recent Python 3 capabilities are not yet fully adapted, such as static typing, native concurrency and others.
NWRFC, RFC, Diag, HDB)genpse, dpmon, gwmon)honeysap & SAP attack surface monitoringDocumentation is available at Read the Docs.
The development documentation includes a short testing guide at
docs/dev/testing.rst. It describes the unit and
integration suites, the test harness, and the recommended tox and pytest
commands.
This library is distributed under the GPLv2 license. Check the COPYING file for more details.
he tool was initially designed and developed by Martin Gallo wile working at SecureAuth's Innovation Labs team, with the help of many contributors. The code was then contributed by SecureAuth to the OWASP CBAS Project in October 2022.
Contributions made by:
The spirit of this Open Source initiative is to help security researchers, and the community, speed up research and educational activities related to the implementation of networking protocols and stacks.
The information in this repository is for research and educational purposes only and is not intended to be used in production environments and/or as part of commercial products.
If you desire to use this tool or some part of it for your own uses, we recommend applying proper security development life cycle and secure coding practices, as well as generate and track the respective indicators of compromise according to your needs.
Whether you want to report a bug, send a patch, or give some suggestions on this package, drop a few lines to OWASP CBAS' project leaders.
For security-related questions check our security policy.
Credv2) filesSSFS) filesLibrary 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.
Command-line tools for offline work with SAP archive, PSE, Credv2, and SSFS files.
Example scripts to illustrate the use of the different modules and protocols.