SlickStack sigurnosno upozorenje

Ova stranica sažima sigurnosne zabrinutosti u vezi SlickStacka i zašto njegov zadani dizajn može izložiti poslužitelje izvršavanju udaljenog koda i napadima čovjek-u-sredini. Također pruža korake za ublažavanje i sigurnije alternative.

Sažetak

  • Česta udaljena preuzimanja zakazana kao root putem crona
  • Provjera SSL-a se zaobilazi korištenjem --no-check-certificate
  • Nema kontrolnih suma/potpisa na preuzetim skriptama
  • Vlasništvo root korisnika i dozvole primijenjene na dohvaćene skripte

Dokazi: Cron i dozvole

Cron preuzimanja (svakih 3 sata i 47 minuta)

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

Vlasništvo root korisnika i restriktivne dozvole (ponovljeno primijenjeno)

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

Ovaj obrazac omogućava proizvoljno izvršavanje koda s udaljene domene i povećava rizik od MITM napada zaobilaženjem provjere certifikata.

Vidi također commit u kojem su cron URL-ovi prebačeni s GitHub CDN-a na slick.fyi: diff commita.

Smjernice za ublažavanje

  1. Onemogućite SlickStack cron zadatke i uklonite dohvaćene skripte iz cron direktorija.
  2. Revizija zbog preostalih referenci na slick.fyi i povlačenja udaljenih skripti; zamijeniti verzioniranim, provjerenim artefaktima s kontrolnom zbrojem ili ih u potpunosti ukloniti.
  3. Promijenite vjerodajnice i ključeve ako je SlickStack pokrenut s root privilegijama na vašim sustavima.
  4. Obnovite pogođene poslužitelje kad je izvedivo kako biste osigurali čisto stanje.

Sigurnije alternative

Razmotrite WordOps ili druge alate koji izbjegavaju udaljeno izvođenje kao root i koji omogućuju reviziju te pružaju verzionirana izdanja s kontrolnim zbrojevima i potpisima.

Reference