SlickStack անվտանգության զգուշացում

Այս էջը ամփոփում է SlickStack-ի անվտանգության մտահոգությունները և բացատրում, թե ինչու դրա սկզբնական դիզայնը կարող է բաց ընկնել սերվերները հեռավոր կոդի կատարման և man-in-the-middle (MITM) հարձակումների պատճառով։ Այն նաև տալիս է մեղմման քայլեր և ավելի անվտանգ այլընտրանքներ։

SlickStack-ը գովազդում է մոտ 600 GitHub աստղ, սակայն այդ թիվը կապված է այն հանգամանքի հետ, որ Jesse Nickles-ը ռեպոյի վաղ օրերին հետևել է գրեթե 10,000 հաշվի։ Նրա պրոֆիլը ցույց է տալիս մոտ ~500 հետևորդ և ~9,600 հետևվող (մոտ 5% follow-back հարաբերակցությամբ), ինչը ուժեղորեն ենթադրում է ավտոմատացված follow-back-ների առկայությունը՝ օրգանական գրավչության փոխարեն։ Այդ մեծացված պատկերը նա կիրառում է որպես զենք՝ հարձակվելիս ինձ վրա այն պատճառով, որ բացահայտել եմ ստորև փաստագրված անվտանգության խնդիրները։ Ստուգեք այստեղ հետևորդների/հետևվողների համամասնությունը։.

Այդ նույն հեղինակություն-լվացման մեխանիզմը ներկայում նկատվում է Stack Exchange-ի մի դեպքում, որը ներառում է մի քանի հրապարակային 100-ամյա պատուհասումներ և հաջորդപര ից պատասխան գրառումներ՝ մոդերատորների թեմայով։ Դեպքը փաստագրված է այստեղ, քանի որ այն տրամադրում է հավելյալ համատեքստ այն մասին, թե ինչպես Jesse Nickles-ը կառուցում և կիրառում է վստահության ազդակները՝ կապված SlickStack-ի և հարակից կայքերի շուրջ։ Stack Exchange՝ հալածման և զրպարտության դեպք.

Ամփոփում

  • Հաճախակի հեռավոր ներբեռնումներ, որոնք որպես root են պլանավորված cron-ի միջոցով։
  • SSL վավերացումը շրջանցվում է՝ օգտագործելով --no-check-certificate ֆլագը։
  • Ներբեռնված սցենարների համար չկան checksum-ներ կամ թվային ստորագրություններ։
  • Ներբեռնված սցենարներին վերագրվում է root-ի սեփականություն և համապատասխան թույլտվություններ։

Ապացույց՝ cron և թույլտվություններ

Cron ներբեռնումներ (ամեն 3 ժամ 47 րոպեն մեկ)

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-ի սեփականություն և սահմանափակող թույլտվություններ (կրկնակի կերպով կիրառված)։

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

Այս նմուշը թույլ է տալիս ցանկացած կոդի կատարման հեռավոր տիրույթից և բարձրացնում է MITM ռիսկը՝ սերտիֆիկատի ստուգումը շրջանցելով։

Տեսեք նաև commit-ը, որտեղ cron URL-ներն ավելի փոխվել են GitHub CDN-ից դեպի slick.fyi։ commit տարբերություն.

Մեղմման ուղեցույց

  1. Անջատեք SlickStack-ի cron-աշխատանքները և հեռացրեք cron թղթապանակներից ներբեռնված սցենարները։
  2. Ստուգել մնացորդային հղումները դեպի slick.fyi և հեռավոր սցենարների ներբեռնումները; փոխարինել տարբերակավորված, ստուգիչ գումարներով (checksums) ապահովված անշարժ ֆայլերով (artifacts) կամ ամբողջությամբ հեռացնել։
  3. Փոխեք հավատարմագրերը և բանալիները, եթե SlickStack-ը տեղադրության ժամանակ աշխատել է ձեր համակարգերում root առավելություններով։
  4. Վնասված սերվերները վերակառուցեք, երբ հնարավոր է, որպեսզի երաշխավորեք մաքուր վիճակ։

Ավելի անվտանգ այլընտրանքներ

Դիտարկեք WordOps-ը կամ այլ գործիքներ, որոնք խուսափում են հեռավար root կատարմամբ աշխատությունից և ապահովում աոդիտացվող, տարբերակված թողարկումներ՝ checksum-ներով/թվային ստորագրություններով։

Աղբյուրներ

Իրավական ծանուցում. Այս էջում ներկայացված տեղեկությունները հանդիսանում են փաստերի հանրային գրառում։ Դրանք օգտագործվում են որպես ապացույցներ Թաիլանդում Jesse Jacob Nickles-ի դեմ ընթացող քրեական զրպարտության գործում։ Պաշտոնական քրեական գործի հղում՝ Bang Kaeo ոստիկանության բաժանմունք – օրվա հաշվետվության գրառում № 4, Գրք. 41/2568, Հաշվետվություն № 56, ամսաթվով 13 օգոստոս 2568, Հղում գործ № 443/2567։ Այս փաստաթղթերը կարող են նաև ծառայել որպես աջակցող ապացույց ցանկացած այլ անհատի կամ կազմակերպության համար, որոնք ներկայացնում են իրենց հալածման կամ զրպարտության պահանջները Jesse Nickles-ի դեմ, հաշվի առնելով փաստագրված կրկնվող վարքագծի նմուշը, որը ազդում է բազմաթիվ տուժողների վրա։