Reporting improvements for EMBA

Posted on Jan 27, 2022

We have included a template mechanism for creating better and more customised reports in EMBA. Now it is possible to place plain text template files or shell scripts to the EMBA directory ./report_templates. The naming of the files is quite strict. This means for the module P11_dlink_SHRS_enc_extract.sh a reporting template with the name P11_dlink_SHRS_enc_extract-post.sh or P11_dlink_SHRS_enc_extract-post.txt is used. The ending -pre is used for details printed at the beginning of the module, -post includes details shown at the end of the module. If a text file is used, this is just echoed to the cli and to the report file via the command cat. If instead a shell script is found, this gets included via source command. With this mechanism you are able to use the full power of shell scripting in your reporting templates. Means also you can access all variables and print your own customised header/footer of the modules.

EMBA reporting template used

The structure of the template directory looks like the following:

report_templates
├── F10_license_summary-post.sh
├── F10_license_summary-pre.sh
├── F20_vul_aggregator-pre.sh
├── L10_system_emulator-pre.sh
├── P11_dlink_SHRS_enc_extract-post.sh
├── P11_dlink_SHRS_enc_extract-pre.sh
├── P12_avm_freetz_ng_extract-pre.sh
├── P13_uboot_mkimage-pre.sh
├── P14_ext2_mounter-pre.sh
├── P15_ubi_extractor-pre.sh
├── P16_EnGenius_decryptor-post.sh
├── P16_EnGenius_decryptor-pre.sh
├── P17_gpg_decompress-pre.sh
├── P18_qnap_decryptor-post.sh
├── P18_qnap_decryptor-pre.sh
├── S06_distribution_identification-pre.sh
└── S09_firmware_base_version_check-post.txt

The pre reporting templates are handled via the EMBA helper function pre_module_reporter and the post reporting templates are handled via the already available helper function module_end_log.

The templates currently included in the installation are primarly for showing the possibilities of this new feature. We believe this is a great feature for every pentester to include the own descriptions into the EMBA reports.

Additionally, we will improve the included templates over time. If you are interested in helping improving these templates pull requests are welcome.