diff --git a/config/banner/KITT-01.txt b/config/banner/KITT-01.txt new file mode 100644 index 000000000..866be5330 --- /dev/null +++ b/config/banner/KITT-01.txt @@ -0,0 +1,11 @@ + + __ __ _______ _______ _______ +| |/ | |_ _||_ _|_ _| +| < __ _| |_ __| |__ | |__ +|__|\__|__|_______|__|___|__||___|__| + + +Michael: KITT can you analyze this firmware? +KITT: As usual I will use EMBA to find the weak spot ... + + diff --git a/config/banner/Knight_Edt-v1.1.2.txt b/config/banner/Knight_Edt-v1.1.2.txt new file mode 100644 index 000000000..a4e4f74e0 --- /dev/null +++ b/config/banner/Knight_Edt-v1.1.2.txt @@ -0,0 +1,74 @@ + +EMBA version 1.1.2 - Knight Rider Edt. + + + .............................................................................. + .'cooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooool,. + .:xOOkdllllllllccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccokOOkl. + .'okOOxc.;::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::,.;dOOOo'. + .;xOOOd,'lkOkoolllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllllokOkl.'oOOOx:. + .lkOOOo',dOkd' ,dOOd;.lkOOkl. + 'oOOOkl':xOkl. .lkOkc.:kOkOo' + .,dOOOk:.ckOx: .,,,'... .:kOkl.;xOOOd;. + .:xOOOx;'lOOx, .cllollllllc;'. ;xOOo',dOkOk:. + .ckOkOd,'oOOd' .:lcccccccclloddc;. ,xOOd',dOkOkc. + .:kOkOd',dOko. .cddxxkkOkxdlccloxxo:. 'dOOd''dOOOkc. + .;kOOOo',xOko. ,cccccccccldkkxolloxkl,. 'xOOd,'dOkOk:. + .oOkOd',xOOl. ..;xOOOOkkkxollllldkxollxko, 'dOOx,'oOOOd' + ,xOOk;.dOOo. .,cdkkOkkOOOOkOOOOOxolcldkdclxkc. 'dOOd''xOOx; + ;kOOd.;kOx, .okOOkkOOOOOOOOOOOOOOOOkl;:dkl:oko. ,xOO:.lOOk:. + .:kOOc.cOOl. .dOOOOOOOOOOOOOOOOOOOOkOOOxc,oOd:lkd. .lOOc.:OkOc. + ;kOO:.cOO: cOOOOOOOOOOOOOOOOOOOOkOOOkkOl,oOo;oOl. cOOc.:OOkc. + ,xOO:.lOk; .dOOOOOkkOOOOOOOOOOOOOOOOOOOOkc:xOl;xk, :kOc.:OOOc. + ,xOO:.lOk; :kOOOOOOOOOkOOOOOkkOOOOOOOOOOOd:oOx;cOc :kOc.:OOk:. + .dOOc.cOk; .;xOkOOOOOOOOkOOOOOOOOOOOOOOOOOOkclkk::Oo. :kOc.:OOx; + .lOOl.:OO: ,okOOOOOkkOOOkxxkOOOOOOOOOOOOOOOOOl:kO::ko. cOO:.lOOd' + .ckOo.;kOc .lkOOOOOOOkOkl;...:xOOOkOOOOOOOOOOOOl:xO::ko. .lOk,.oOOo. + ;xOd''xOd. .oOOOOOOOOOxc' cOOOOOkOOOOOOOOOOl:xO::ko. .oOx''xOk:. + .oOO:.oOk, :OkOOOOkOkl. ;xkOOOOOOOOOOOOkOl;xk;;Oo. ,kOl.:OOd' + .:kOo.;kOl. 'loolokko, .lOOOOOOOOOOOOOOOOl;xk,;Oo. .lOk;.oOk:. + 'oOk;.oOx' ''. .,cdOOOOkOOOOOOOOOOOOl;xx':Ol. ,xOo.,kOd' + .:kOd';kOc .,cokOOOOOOOOOOOOOOOOOkOO:;ko.:Oc .oOk;.lOk:. + .lkOc.lOx, 'cxOOkOOOOOOOOOOOOOOOOOOOOk;;Ol.cO: ckOl.;kOo. + ,xOx,'xOo. 'lkOOkkOOOOOOOOOOOOOOOOOOOOOk;:Ol.lOc 'xOd'.dOx, + .:kOo':Ok: .cxOkkOOOOOOOOOOOOOOOOOOOOOOOOk:;ko,l0d. .oOk;.cOkc. + .lOOc.lOx, .oOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOo;lkl;okd, ckkc.;kOo. + 'dOx;'dOo. 'dOkOOOOOOOOOOOOOOOOOOOOOOOOOOOOOkd:cxd::xkc. ,xOo.'dOx, + .,dOd';xOc. 'dOkOOOOOOOOOOOOOOOOOOOOOOOOOOOkkOOOkocoko:okd, 'dOd'.oOk:. + .;xOo.:kkc .dOkkOOOOOOOOOOOOOOOOOOOOOOOOOOOOkxdddxo;;oo;;lo, .oOk;.cOkc. + .:kOl'cOk: .lOOkOkOOOOOOOOOOOOOOOOOOOOOOOOkkOd,..... . . .lOk:.:kkl. + .ckOc.cOk; ;kOkOkOOOOOOOOOOOOOOOOOOOOOOOOOOOOk: .lOkc.;kOd' + .ckkc.lkx; .dOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOx; .lkkc.;xOd' + .ckkc.cOx; .:cccclllllllllllllllllllllllllllc:::' .lOkc.;xOd, + .:kkc.ckk:. ,oddooooooooooooooooooodooc' .lOkc.:kOd, + .:kkl':kkc. ;xOOOOOOOOOOOOOOOOOOkOkd:. .oOk:.ckOd' + .;xOl';xOo. .looooooooooooooooool;. ,xOx;.lkOl. + .,dOd,'oOd, 'cccllllllllllllllllllccccc:' .:kOo''oOkc. + .lkx;.ckkc. .ckOOOOOOOOOOOOOOOOOOOOOOOOOkOkc. .okkl';xOx;. + .:kkl';dOo' .lkOOkOOOOOOOOOOkkkkOOOOOOOOOkkOko. ;xOx;'lkOo'. + .,dOd,'lkx:. .okxxkkxxxxxxxxxxxxxxxxxkkkxxkkxxxxo. .lkkl';dOkc. + .ckkc',dkd, ................................... .:xOd;'ckOd,. + .;dOd;.:xko' ,oOkc';dOkc. + .ckkl,'lkkl. 'lkkl,;okOo,. + .,okxc',okxc. .lkko,,lkkx:. + .;dkx:',okkc. 'lkko;,cxOxc. + .:xOd:',okkl' 'lkko;,cxOkl'. + ..:xOd:',lkkl' .,lkko;,cxOkl,. + ..cxkxc',lxkl,. .;dOkl;,cxOkl,. + ..:dkxl,':dkdc:;,'''''',,;cxOxc,;okOxl'. + .;okko:,;lxkkkkkkkkkkkkxo:;:dkkd:.. + .,lkOxl;,,,,'''''''''';lxOko;. + .'cdOOxdddooooooooodkOxl'. + ..:odxxdddddddddddl:.. + ................ + + + + + + + + + + + diff --git a/config/banner/Vegas_Edt-v1.1.0.txt b/config/banner/Vegas_Edt-v1.1.0.txt index 962a645a9..38df1dd63 100644 --- a/config/banner/Vegas_Edt-v1.1.0.txt +++ b/config/banner/Vegas_Edt-v1.1.0.txt @@ -1,5 +1,5 @@ -EMBA version 1.1.0 - Las Vegas Edt. +EMBA version 1.1.0 - Las Vegas Edt. (Historic edt.) ...... ......,*///*,...... ..../*,.....,,..,,*/*... diff --git a/emba.sh b/emba.sh index aa6f9d867..5011ccfcf 100755 --- a/emba.sh +++ b/emba.sh @@ -337,8 +337,8 @@ main() export EMBA_PID="$$" # if this is a release version set RELEASE to 1, add a banner to config/banner and name the banner with the version details - export RELEASE=0 - export EMBA_VERSION="1.1.x" + export RELEASE=1 + export EMBA_VERSION="1.1.2" export STRICT_MODE=0 export MATRIX_MODE=0 export UPDATE=0 diff --git a/modules/F21_cyclonedx_sbom.sh b/modules/F21_cyclonedx_sbom.sh index 62f391152..9d655e41f 100755 --- a/modules/F21_cyclonedx_sbom.sh +++ b/modules/F21_cyclonedx_sbom.sh @@ -25,12 +25,13 @@ F21_cyclonedx_sbom() { local BINARY="" local VERSION="" local NEG_LOG=0 - if ! command -v cyclonedx; then + + if ! command -v cyclonedx > /dev/null; then module_end_log "${FUNCNAME[0]}" "$NEG_LOG" return fi - if [[ -f "$F20_LOG" ]]; then + if [[ -f "$F20_LOG" ]] && [[ "$(wc -l "$F20_LOG" | awk '{print $1}')" -gt 1 ]]; then if [[ -f "$CSV_DIR"/f21_cyclonedx_sbom.csv ]]; then rm "$CSV_DIR"/f21_cyclonedx_sbom.csv fi @@ -52,7 +53,7 @@ F21_cyclonedx_sbom() { cyclonedx convert --input-file "$CSV_DIR"/f21_cyclonedx_sbom.csv --output-file "$LOG_DIR"/f21_cyclonedx_sbom.json || true fi if [[ -f "$LOG_DIR"/f21_cyclonedx_sbom.json ]]; then - print_output "[+] SBOM in json format created in $ORANGE$LOG_DIR/f21_cyclonedx_sbom.json$NC:" + print_output "[+] SBOM in json format created:" "" "$LOG_DIR/f21_cyclonedx_sbom.json" print_ln tee -a "$LOG_FILE" < "$LOG_DIR"/f21_cyclonedx_sbom.json print_ln diff --git a/modules/L25_web_checks.sh b/modules/L25_web_checks.sh index e56b6921a..aa6533612 100755 --- a/modules/L25_web_checks.sh +++ b/modules/L25_web_checks.sh @@ -153,7 +153,7 @@ main_web_check() { mapfile -t VERSIONS < <(grep "Retrieved x-powered-by header" "$LOG_PATH_MODULE"/nikto-scan-"$IP_ADDRESS_".txt | cut -d: -f2 | sort -u | sed 's/^\ //' | grep -e "[0-9]" || true) for VERSION in "${VERSIONS[@]}"; do - l15_version_detector "$VERSION" "Nikto web server scanning log" + l15_version_detector "$VERSION" "Nikto web server scanning" done print_ln diff --git a/modules/S13_weak_func_check.sh b/modules/S13_weak_func_check.sh index b0d54a992..c36734ebd 100755 --- a/modules/S13_weak_func_check.sh +++ b/modules/S13_weak_func_check.sh @@ -453,6 +453,9 @@ print_top10_statistics() { for BINARY in "${RESULTS[@]}" ; do SEARCH_TERM="$(echo "$BINARY" | awk '{print $2}')" F_COUNTER="$(echo "$BINARY" | awk '{print $1}')" + if [[ "$F_COUNTER" -eq 0 ]]; then + continue + fi if [[ -f "$BASE_LINUX_FILES" ]]; then # if we have the base linux config file we are checking it: if grep -E -q "^$SEARCH_TERM$" "$BASE_LINUX_FILES" 2>/dev/null; then diff --git a/modules/S14_weak_func_radare_check.sh b/modules/S14_weak_func_radare_check.sh index 9302eb62f..1a4bf7df1 100755 --- a/modules/S14_weak_func_radare_check.sh +++ b/modules/S14_weak_func_radare_check.sh @@ -407,6 +407,9 @@ radare_print_top10_statistics() { for BINARY in "${RESULTS[@]}" ; do SEARCH_TERM="$(echo "$BINARY" | awk '{print $2}')" F_COUNTER="$(echo "$BINARY" | awk '{print $1}')" + if [[ "$F_COUNTER" -eq 0 ]]; then + continue + fi if [[ -f "$BASE_LINUX_FILES" ]]; then # if we have the base linux config file we are checking it: if grep -E -q "^$SEARCH_TERM$" "$BASE_LINUX_FILES" 2>/dev/null; then