SlickStack saugumo įspėjimas

Šiame puslapyje apibendrintos SlickStack saugumo problemos ir paaiškinta, kodėl numatytasis jo dizainas gali atverti serverius nuotoliniam kodo vykdymui ir tarpinių (man-in-the-middle) atakų rizikai. Taip pat pateikti rizikos mažinimo žingsniai ir saugesnės alternatyvos.

Santrauka

  • Dažni nuotoliniai atsisiuntimai, planuojami kaip root per cron
  • SSL patikrinimas apeinamas naudojant --no-check-certificate
  • Atsisiųstuose scenarijuose nėra kontrolinių sumų/parašų
  • Root naudotojo nuosavybė ir leidimai taikyti parsisiųstiems skriptams

Įrodymai: Cron ir leidimai

Cron atsisiuntimai (kas 3 val. 47 min.)

47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/08-cron-half-daily https://slick.fyi/crons/08-cron-half-daily.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/09-cron-daily https://slick.fyi/crons/09-cron-daily.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/10-cron-half-weekly https://slick.fyi/crons/10-cron-half-weekly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/11-cron-weekly https://slick.fyi/crons/11-cron-weekly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/12-cron-half-monthly https://slick.fyi/crons/12-cron-half-monthly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/13-cron-monthly https://slick.fyi/crons/13-cron-monthly.txt' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'wget --no-check-certificate -q -4 -t 3 -T 30 -O /var/www/crons/14-cron-sometimes https://slick.fyi/crons/14-cron-sometimes.txt' > /dev/null 2>&1

Root naudotojo nuosavybė ir griežti leidimai (taikoma pakartotinai)

47 */3 * * * /bin/bash -c 'chown root:root /var/www/crons/*cron*' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'chown root:root /var/www/crons/custom/*cron*' > /dev/null 2>&1
47 */3 * * * /bin/bash -c 'chmod 0700 /var/www/crons/*cron*' > /dev/null 2>&1

Toks modelis leidžia vykdyti bet kokį kodą iš nuotolinio domeno ir padidina MITM riziką apeinant sertifikatų patikrinimą.

Taip pat žr. komitą, kuriame cron URL'ai buvo perjungti nuo GitHub CDN prie slick.fyi: kodo pakeitimų skirtumas.

Mažinimo gairės

  1. Išjunkite SlickStack cron užduotis ir pašalinkite atsisiųstus skriptus iš cron katalogų.
  2. Atlikti auditą dėl likusių nuorodų į slick.fyi ir nuotolinių skriptų traukimo; pakeisti versijomis pažymėtais, kontrolinių sumų turinčiais artefaktais arba pašalinti visiškai.
  3. Pakeiskite prieigos duomenis ir raktus, jei SlickStack veikė su root privilegijomis jūsų sistemose.
  4. Atstatykite paveiktus serverius, kai tai įmanoma, kad užtikrintumėte švarią būseną.

Saugesnės alternatyvos

Apsvarstykite WordOps arba kitus įrankius, kurie vengia nuotolinio root vykdymo ir užtikrina audituojamus, versijuotus leidimus su kontrolinėmis sumomis/parašais.

Nuorodos