{ "cells": [ { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "# SAP Credv2" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "The following subsections show a representation of the file format portions and how to generate them.\n", "\n", "First we need to perform some setup to import the packet classes:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true, "deletable": true, "editable": true }, "outputs": [], "source": [ "from pysap.SAPCredv2 import *\n", "from IPython.display import display" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "## Credv2 without LPS" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "We'll read the files used in the test case suite and use them as example:" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [], "source": [ "with open(\"../../tests/data/credv2_lps_off_v0_3des\", \"rb\") as fd:\n", " credv2_lps_off_v0_3des_string = fd.read()\n", "credv2_lps_off_v0_3des = SAPCredv2(credv2_lps_off_v0_3des_string)\n", "\n", "with open(\"../../tests/data/credv2_lps_off_v1_3des\", \"rb\") as fd:\n", " credv2_lps_off_v1_3des_string = fd.read()\n", "credv2_lps_off_v1_3des = SAPCredv2(credv2_lps_off_v1_3des_string)\n", "\n", "with open(\"../../tests/data/credv2_lps_off_v1_aes256\", \"rb\") as fd:\n", " credv2_lps_off_v1_aes256_string = fd.read()\n", "credv2_lps_off_v1_aes256 = SAPCredv2(credv2_lps_off_v1_aes256_string)\n", "\n", "with open(\"../../tests/data/credv2_lps_off_v0_dp_3des\", \"rb\") as fd:\n", " credv2_lps_off_v0_dp_3des_string = fd.read()\n", "credv2_lps_off_v0_dp_3des = SAPCredv2(credv2_lps_off_v0_dp_3des_string)" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "The Cred files are comprised of the following main structures:" ] }, { "cell_type": "markdown", "metadata": { "collapsed": false }, "source": [ "### Credv2 without LPS and version 0 cipher format 3DES encryption" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false, "pycharm": { "name": "#%%\n" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "###[ SAPCredv2 ]### \n", " \\creds \\\n", " |###[ SAPCredv2Cred ]### \n", " | \\cred \\\n", " | |###[ SAPCredv2_Cred ]### \n", " | | cert_name = \n", " | | unknown1 = \n", " | | pse_path = \n", " | | unknown2 = \n", " | | cipher = \n", "\n" ] } ], "source": [ "credv2_lps_off_v0_3des.show()" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "### Credv2 without LPS and version 1 cipher format 3DES encryption" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "###[ SAPCredv2 ]### \n", " \\creds \\\n", " |###[ SAPCredv2Cred ]### \n", " | \\cred \\\n", " | |###[ SAPCredv2_Cred ]### \n", " | | cert_name = \n", " | | unknown1 = \n", " | | pse_path = \n", " | | unknown2 = \n", " | | cipher = \n", "\n" ] } ], "source": [ "credv2_lps_off_v1_3des.show()" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "### Credv2 without LPS and version 1 cipher format AES256 encryption" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "###[ SAPCredv2 ]### \n", " \\creds \\\n", " |###[ SAPCredv2Cred ]### \n", " | \\cred \\\n", " | |###[ SAPCredv2_Cred ]### \n", " | | cert_name = \n", " | | unknown1 = \n", " | | pse_path = \n", " | | unknown2 = \n", " | | cipher = \n", "\n" ] } ], "source": [ "credv2_lps_off_v1_aes256.show()" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "### Credv2 without LPS Cipher Header version 1 cipher format" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "cipher_header = SAPCredv2_Cred_Cipher(str(credv2_lps_off_v1_aes256.creds[0].cred.cipher))\n", "cipher_header.canvas_dump()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Credv2 Plain Credential\n", "\n", "After decrypting the credential using the username provided, the plaintext contains the following structure:" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "###[ SAPCredv2_Cred_Plain ]### \n", " pin = \n", " option1 = None\n", " option2 = None\n", " option3 = None\n", "###[ Raw ]### \n", " load = '\\xeb<'\n", "\n" ] } ], "source": [ "cred_v2_lps_off_aes256_plain = credv2_lps_off_v1_aes256.creds[0].cred.decrypt(\"username\")\n", "cred_v2_lps_off_aes256_plain.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Credv2 Plain Credential with DP API\n", "\n", "When using SSO Credentials in Windows, the CommonCryptoLib encrypts the PIN using DP API." ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "###[ SAPCredv2_Cred_Plain ]### \n", " pin = \n", " option1 = \n", " option2 = None\n", " option3 = None\n", "###[ Raw ]### \n", " load = '\\x04\\x04\\x04\\x04'\n", "\n" ] } ], "source": [ "cred_v2_lps_off_dp_3des_plain = credv2_lps_off_v0_dp_3des.creds[0].cred.decrypt(\"username\")\n", "cred_v2_lps_off_dp_3des_plain.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Credv2 with LPS" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "We'll read the files used in the test case suite and use them as example:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [], "source": [ "with open(\"../../tests/data/credv2_lps_on_v2_dp_aes256\", \"rb\") as fd:\n", " credv2_lps_on_v2_dp_aes256_string = fd.read()\n", "credv2_lps_on_v2_dp_aes256 = SAPCredv2(credv2_lps_on_v2_dp_aes256_string)\n", "\n", "with open(\"../../tests/data/credv2_lps_on_v2_int_aes256\", \"rb\") as fd:\n", " credv2_lps_on_v2_int_aes256_string = fd.read()\n", "credv2_lps_on_v2_int_aes256 = SAPCredv2(credv2_lps_on_v2_int_aes256_string)" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "The Cred files are comprised of the following main structures:" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "### Credv2 with LPS in DP API Mode (Windows)" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "###[ SAPCredv2 ]### \n", " \\creds \\\n", " |###[ SAPCredv2Cred ]### \n", " | \\cred \\\n", " | |###[ SAPCredv2_Cred_LPS ]### \n", " | | version = 0x2 \n", " | | \\subject \\\n", " | | |###[ X509_RDN ]### \n", " | | | \\rdn \\\n", " | | | |###[ X509_AttributeTypeAndValue ]### \n", " | | | | type = \n", " | | | | value = \n", " | | pse_path = \n", " | | cipher = \n", "\n" ] } ], "source": [ "credv2_lps_on_v2_dp_aes256.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Credv2 with LPS in INT/Fallback mode (Linux without TPM)" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "###[ SAPCredv2 ]### \n", " \\creds \\\n", " |###[ SAPCredv2Cred ]### \n", " | \\cred \\\n", " | |###[ SAPCredv2_Cred_LPS ]### \n", " | | version = 0x2 \n", " | | \\subject \\\n", " | | |###[ X509_RDN ]### \n", " | | | \\rdn \\\n", " | | | |###[ X509_AttributeTypeAndValue ]### \n", " | | | | type = \n", " | | | | value = \n", " | | pse_path = \n", " | | cipher = \n", "\n" ] } ], "source": [ "credv2_lps_on_v2_int_aes256.show()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "###[ SAPCredv2_Cred_Plain ]### \n", " pin = \n", " option1 = None\n", " option2 = None\n", " option3 = None\n", "\n" ] } ], "source": [ "cred_v2_lps_on_int_aes256_plain = credv2_lps_on_v2_int_aes256.creds[0].cred.decrypt(\"username\")\n", "cred_v2_lps_on_int_aes256_plain.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### SAP LPS Cipher header" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false, "scrolled": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "lps_cipher_header = SAPLPSCipher(str(credv2_lps_on_v2_int_aes256.creds[0].cred.cipher))\n", "lps_cipher_header.canvas_dump()" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.18" } }, "nbformat": 4, "nbformat_minor": 2 }