Workaround for 7350topless

Not touching logic or the (IMO ridiculous) behavior of this script. Just meant as a quick&dirty workaround for the specific sed/symlink attack vector. Check https://github.com/stealth/7350topless for details.
This commit is contained in:
ThomasKaiser 2021-05-23 13:51:04 +02:00 committed by GitHub
parent b65d1caecb
commit f0f10a5b68
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -5,6 +5,9 @@
. /etc/armbian-release
TempFile"$(mktemp /tmp/${0##*/}.XXXXXX || exit 1)"
trap "rm \"${TempFile}\" ; exit 0" 0 1 2 3 15
for homedir in $(awk -F'[:]' '{if ($3 >= 1000 && $3 != 65534 || $3 == 0) print $6}' /etc/passwd); do
unset FIELDS FIELD_PARA
@ -21,8 +24,9 @@ for homedir in $(awk -F'[:]' '{if ($3 >= 1000 && $3 != 65534 || $3 == 0) print $
FIELDS+="${type^}$i ${type^}${i}stat "
FIELD_PARA+="2 2 "
sed -i "s/^${type}${i}_alias=.*/${type}${i}_alias=$INTERFAC/" "${homedir}"/.config/htop/htoprc
sed "s/^${type}${i}_alias=.*/${type}${i}_alias=$INTERFAC/" "${homedir}"/.config/htop/htoprc >"${TempFile}"
cat "${TempFile}" >"${homedir}"/.config/htop/htoprc
((i=i+1))
done
done
@ -32,13 +36,17 @@ for homedir in $(awk -F'[:]' '{if ($3 >= 1000 && $3 != 65534 || $3 == 0) print $
echo "$FIELDS $FIELD_PARA"
sed -i "s/right_meters.*$/& $FIELDS/" "${homedir}"/.config/htop/htoprc
sed -i "s/right_meter_modes.*$/& $FIELD_PARA/" "${homedir}"/.config/htop/htoprc
sed "s/right_meters.*$/& $FIELDS/" "${homedir}"/.config/htop/htoprc >"${TempFile}"
cat "${TempFile}" >"${homedir}"/.config/htop/htoprc
sed "s/right_meter_modes.*$/& $FIELD_PARA/" "${homedir}"/.config/htop/htoprc >"${TempFile}"
cat "${TempFile}" >"${homedir}"/.config/htop/htoprc
# enable GPU where this works
if [[ $LINUXFAMILY == meson64 || $LINUXFAMILY == odroidxu4 ]]; then
sed -i "s/left_meters.*$/& GpuTemp/" "${homedir}"/.config/htop/htoprc
sed -i "s/left_meter_modes.*$/& 2/" "${homedir}"/.config/htop/htoprc
sed "s/left_meters.*$/& GpuTemp/" "${homedir}"/.config/htop/htoprc >"${TempFile}"
cat "${TempFile}" >"${homedir}"/.config/htop/htoprc
sed "s/left_meter_modes.*$/& 2/" "${homedir}"/.config/htop/htoprc >"${TempFile}"
cat "${TempFile}" >"${homedir}"/.config/htop/htoprc
fi
done