[+] Check scripts with shellcheck and semgrep

This module tries to identify shell scripts and analyses them with shellcheck - https://www.shellcheck.net/.


==> Check scripts with shellcheck

[+] Found 4 issues in script (common linux file: no): logs/firmware/patool_extraction/DUMP/mtdblock2_unblob_extracted/mtdblock2_extract/0-376832.squashfs_v4_le_extract/opt.local (-rw-r--r-- root root)
[+] Found 5 issues in script (common linux file: yes): /bin/curl-config (-rw-r--r-- 117 125)
[+] Found 1 issues in script (common linux file: no): /cgi/admin/tools_firmware.cgi (-rw-r--r-- 117 125)
[+] Found 5 issues in script (common linux file: no): /cgi/admin/tools_leveloftrust.cgi (-rw-r--r-- 117 125)
[+] Found 32 issues in script (common linux file: no): logs/firmware/patool_extraction/DUMP/mtdblock2_unblob_extracted/mtdblock2_extract/0-376832.squashfs_v4_le_extract/mydlink_watchdog.sh (-rw-r--r-- root root)
[+] Found 3 issues in script (common linux file: no): /etc/openssl/checkCrt.sh (-rw-r--r-- 117 125)
[+] Found 16 issues in script (common linux file: no): /bin/mp (-rw-r--r-- 117 125)
[+] Found 1 issues in script (common linux file: yes): /etc/ppp/ip-up (-rw-r--r-- 117 125)
[+] Found 1 issues in script (common linux file: no): /etc/rc.d/init.d/apConnection.sh (-rw-r--r-- 117 125)
[+] Found 10 issues in script (common linux file: no): /etc/rc.d/init.d/avcd.sh (-rw-r--r-- 117 125)
[+] Found 1 issues in script (common linux file: no): /etc/rc.d/init.d/create_certificate.sh (-rw-r--r-- 117 125)
[+] Found 8 issues in script (common linux file: no): /etc/rc.d/init.d/bluetoothd.sh (-rw-r--r-- 117 125)
[+] Found 5 issues in script (common linux file: no): /etc/rc.d/init.d/db_analysis.sh (-rw-r--r-- 117 125)
[+] Found 6 issues in script (common linux file: no): /etc/rc.d/init.d/dbus-daemon.sh (-rw-r--r-- 117 125)
[+] Found 9 issues in script (common linux file: no): /etc/rc.d/init.d/dibbler.sh (-rw-r--r-- 117 125)
[+] Found 12 issues in script (common linux file: no): /etc/rc.d/init.d/discovery.sh (-rw-r--r-- 117 125)
[+] Found 4 issues in script (common linux file: yes): /etc/rc.d/init.d/firewall.sh (-rw-r--r-- 117 125)
[+] Found 2 issues in script (common linux file: no): /etc/rc.d/init.d/getters.sh (-rw-r--r-- 117 125)
[+] Found 9 issues in script (common linux file: yes): /etc/rc.d/init.d/ifplugd (-rw-r--r-- 117 125)
[+] Found 7 issues in script (common linux file: no): /etc/rc.d/init.d/logd-deprecated.sh (-rw-r--r-- 117 125)
[+] Found 23 issues in script (common linux file: no): /etc/rc.d/init.d/lighttpd_ssl.sh (-rw-r--r-- 117 125)
[+] Found 32 issues in script (common linux file: no): /etc/rc.d/init.d/lighttpd.sh (-rw-r--r-- 117 125)
[+] Found 2 issues in script (common linux file: no): /etc/rc.d/init.d/managerReset.sh (-rw-r--r-- 117 125)
[+] Found 7 issues in script (common linux file: no): /etc/rc.d/init.d/mDNSResponder.sh (-rw-r--r-- 117 125)
[+] Found 7 issues in script (common linux file: no): /etc/rc.d/init.d/mdnsd.sh (-rw-r--r-- 117 125)
[+] Found 9 issues in script (common linux file: no): /etc/rc.d/init.d/motion_detection_bgm.sh (-rw-r--r-- 117 125)
[+] Found 3 issues in script (common linux file: no): /etc/rc.d/init.d/myDlinkEvent.sh (-rw-r--r-- 117 125)
[+] Found 2 issues in script (common linux file: no): /etc/rc.d/init.d/network_services.sh (-rw-r--r-- 117 125)
[+] Found 2 issues in script (common linux file: no): /etc/rc.d/init.d/network_services_ipv6.sh (-rw-r--r-- 117 125)
[+] Found 7 issues in script (common linux file: no): /etc/rc.d/init.d/ntpd.sh (-rw-r--r-- 117 125)
[+] Found 6 issues in script (common linux file: no): /etc/rc.d/init.d/rdnssd.sh (-rw-r--r-- 117 125)
[+] Found 5 issues in script (common linux file: no): /etc/rc.d/init.d/rtspd.sh (-rw-r--r-- 117 125)
[+] Found 2 issues in script (common linux file: no): /etc/rc.d/init.d/trservices.sh (-rw-r--r-- 117 125)
[+] Found 2 issues in script (common linux file: no): /etc/rc.d/init.d/services.sh (-rw-r--r-- 117 125)
[+] Found 4 issues in script (common linux file: no): /etc/rc.d/init.d/tz_dst.sh (-rw-r--r-- 117 125)
[+] Found 7 issues in script (common linux file: no): /etc/rc.d/init.d/watchDog.sh (-rw-r--r-- 117 125)
[+] Found 5 issues in script (common linux file: no): /etc/rc.d/init.d/wifiAutoReconnect.sh (-rw-r--r-- 117 125)
[+] Found 1 issues in script (common linux file: no): /etc/rc.d/init.d/xmldb.sh (-rw-r--r-- 117 125)
[+] Found 3 issues in script (common linux file: yes): /etc/rc.d/rc.local (-rw-r--r-- 117 125)
[+] Found 4 issues in script (common linux file: no): /etc/rc.d/rc.sysextra (-rw-r--r-- 117 125)
[+] Found 2 issues in script (common linux file: yes): /etc/rc.d/rcS (-rw-r--r-- 117 125)
[+] Found 8 issues in script (common linux file: no): /etc/rc.d/rcS.d/S22bluetoothd.sh (-rw-r--r-- 117 125)
[+] Found 12 issues in script (common linux file: no): /etc/rc.d/rc.sysinit (-rw-r--r-- 117 125)
[+] Found 1 issues in script (common linux file: yes): /sbin/agent (-rw-r--r-- 117 125)
[+] Found 429 issues in script (common linux file: no): /etc/rc.d/init.d/network_mfg.sh (-rw-r--r-- 117 125)
[+] Found 4 issues in script (common linux file: no): /sbin/automount.sh (-rw-r--r-- 117 125)
[+] Found 1 issues in script (common linux file: no): /sbin/fw_decrypt.sh (-rw-r--r-- 117 125)
[+] Found 2 issues in script (common linux file: no): /sbin/fw_sign_verify.sh (-rw-r--r-- 117 125)
[+] Found 2 issues in script (common linux file: no): /sbin/init_ble_device.sh (-rw-r--r-- 117 125)
[+] Found 2 issues in script (common linux file: yes): /sbin/reboot (-rw-r--r-- 117 125)
[+] Found 11 issues in script (common linux file: yes): /sbin/fwupdate (-rw-r--r-- 117 125)
[+] Found 6 issues in script (common linux file: no): /sbin/subscriptionManager.sh (-rw-r--r-- 117 125)
[+] Found 15 issues in script (common linux file: no): /sbin/udhcpc.sh (-rw-r--r-- 117 125)
[+] Found 8 issues in script (common linux file: no): /sbin/wpsApCheck.sh (-rw-r--r-- 117 125)
[+] Found 6 issues in script (common linux file: no): /sbin/write_mac_rtl8723bu.sh (-rw-r--r-- 117 125)
[+] Found 3 issues in script (common linux file: no): /usr/bin/efuseBuff2PIB.sh (-rw-r--r-- 117 125)
[+] Found 1 issues in script (common linux file: no): /usr/bin/nfshost.sh (-rw-r--r-- 117 125)
[+] Found 11 issues in script (common linux file: no): /usr/bin/readAllFiles.sh (-rw-r--r-- 117 125)
[+] Found 5 issues in script (common linux file: no): /usr/bin/setupAudio (-rw-r--r-- 117 125)
[+] Found 1 issues in script (common linux file: yes): /usr/sbin/poff (-rw-r--r-- 117 125)
[+] Found 3 issues in script (common linux file: yes): /usr/sbin/pon (-rw-r--r-- 117 125)


==> Summary of shell issues (shellcheck)

[+] Found 807 issues in 84 shell scripts


    [+] SC2068 (error): Double quote array expansions to avoid re-splitting elements.
    [+] SC2261 (error): Multiple redirections compete for stdout. Use cat, tee, or pass filenames instead.
    [+] SC1079 (info): This is actually an end quote, but due to next char it looks suspect.
    [+] SC2002 (style): Useless cat. Consider 'cmd < file | ..' or 'cmd file | ..' instead.
    [+] SC2006 (style): Use $(...) notation instead of legacy backticks `...`.
    [+] SC2015 (info): Note that A && B || C is not if-then-else. C may run when A is true.
    [+] SC2016 (info): Expressions don't expand in single quotes, use double quotes for that.
    [+] SC2086 (info): Double quote to prevent globbing and word splitting.
    [+] SC2129 (style): Consider using { cmd1; cmd2; } >> file instead of individual redirects.
    [+] SC2161 (style): Instead of '[ 1 ]', use 'true'.
    [+] SC2181 (style): Check exit code directly with e.g. 'if mycmd;', not indirectly with $?.
    [+] SC2236 (style): Use -n instead of ! -z.
    [+] SC2317 (info): Command appears to be unreachable. Check usage (or ignore if invoked indirectly).
    [+] SC1078 (warning): Did you forget to close this double quoted string?
    [+] SC1090 (warning): ShellCheck can't follow non-constant source. Use a directive to specify location.
    [+] SC2046 (warning): Quote this to prevent word splitting.
    [+] SC2048 (warning): Use "$@" (with quotes) to prevent whitespace problems.
    [+] SC2050 (warning): This expression is constant. Did you forget the $ on a variable?
    [+] SC2091 (warning): Remove surrounding $() to avoid executing output (or use eval if intentional).
    [+] SC2092 (warning): Remove backticks to avoid executing output (or use eval if intentional).
    [+] SC2140 (warning): Word is of the form "A"B"C" (B indicated). Did you mean "ABC" or "A\"B\"C"?
    [+] SC2155 (warning): Declare and assign separately to avoid masking return values.
    [+] SC2166 (warning): Prefer [ p ] && [ q ] as [ p -a q ] is not well defined.
    [+] SC3014 (warning): In POSIX sh, == in place of = is undefined.
    [+] SC3018 (warning): In POSIX sh, ++ is undefined.
    [+] SC3037 (warning): In POSIX sh, echo flags are undefined.

==> Check scripts with semgrep



==> Summary of shell issues (semgrep)

[+] Found 574 issues in 58 shell scripts


==> Check shell scripts for eval usage

[+] Found eval usage in mydlink_watchdog.sh
[+] Found eval usage in tools_leveloftrust.cgi
[+] Found eval usage in avcd.sh
[+] Found eval usage in discovery.sh
[+] Found eval usage in firewall.sh
[+] Found eval usage in ifplugd
[+] Found eval usage in lighttpd.sh
[+] Found eval usage in lighttpd_ssl.sh
[+] Found eval usage in network_mfg.sh
[+] Found eval usage in ntpd.sh
[+] Found eval usage in fw_decrypt.sh
[+] Found eval usage in fwupdate
[+] Found eval usage in udhcpc.sh
[+] Found eval usage in setupAudio