Skip to main content
zenodoopen

Neural Reverse Engineering of Stripped Binaries using Augmented Control Flow Graphs

<p>This dataset and pre-trained models are&nbsp;released as a companion to our OOPSLA &#39;20&nbsp;publication: &quot;Neural Reverse Engineering of Stripped Binaries using Augmented Control Flow Graphs&quot;:</p> <ol> <li>The dataset file (<a href="https://zenodo.org/api/files/0e98c909-50b4-43e3-8ab2-bb9673eed786/nero_dataset_binaries.tar.gz?versionId=b943752a-e89e-43c1-b32f-19d4a7420e00">nero_dataset_binaries.tar.gz</a>) is composed from packages of binary executables created by compiling several GNU source-code packages. We used these&nbsp;executables to evaluate our approach as implemented in our&nbsp;prototype &quot;Nero&quot; and compare it to other approaches. All executables contain debug information which serves as the ground truth for the procedure name predictions. The packages are split into three sets: training, validation and test. <ol> <li>The executable file name structure is: &quot;&lt;compiler&gt;-&lt;compiler version&gt;__O&lt;Optimization level(u for default)&gt;__&lt;Package name&gt;[-&lt;optional package version&gt;]__&lt;Executable name&gt;&quot;. For example &quot;gcc-5__Ou__cssc__sccs&quot;.</li> </ol> </li> <li>The procedure representation file (<a href="https://zenodo.org/api/files/0e98c909-50b4-43e3-8ab2-bb9673eed786/procedure_representations.tar.gz?versionId=fef2380c-c869-4a3f-8e32-bc4972dbb219">procedure_representations.tar.gz</a>) contains: <ol> <li>The raw representations for all the binary procedures in the above dataset. Each procedure is represented by one line&nbsp;in the relevant file for each&nbsp;set (training.json, validation.json and test.json)&nbsp;</li> <li>The above representations preprocessed for training.</li> </ol> </li> <li>The pre-trained model&nbsp;file (<a href="https://zenodo.org/api/files/0e98c909-50b4-43e3-8ab2-bb9673eed786/nero_gnn_model.tar.gz">nero_gnn_model.tar.gz</a>) was&nbsp;created using the above preprocessed dataset and contains: <ol> <li>Pre-trained model.</li> <li>Training log.</li> <li>Prediction results log.</li> </ol> </li> </ol> <p>For the code of the &quot;Nero&quot;&nbsp;prototype, and more information about the above artifacts&nbsp;see&nbsp;<a href="https://github.com/tech-srl/Nero">our Github repo</a></p>

ShareScore

36/100

Overall dataset sharing score

Score breakdown

These five areas show where the dataset supports — or may limit — practical reuse.

Stewardship
8
Harmonization
4
Access
16
Reuse readiness
8
Engagement
0

Topics