Криптоџекинг: када машина рудари за неког другог
Како рударски малвер улази, зашто га је од власника рига најтеже сакрити а њега најлакше преварити, и како исправно проверити и очистити машину.
Шта је то
Криптоџекинг је када неко покреће програм за рударење на хардверу који не поседује и не плаћа. То није ретка појава: то је најчешће што малвер ради са машином када је једном преузме, јер исплата после тога не захтева да се ико више превари. Жртва је струја, а рачун стиже тихо.
Скоро увек је у питању Monero. Тај новчић се може профитабилно рударити на обичним процесорима, па неколико хиљада канцеларијских рачунара вреди имати, а његова приватност значи да се новац не може пратити. Програм је обично XMRig, обичан програм за рударење отвореног кода, са промењеним именом и конфигурацијом.
Машина која рудари за неког другог не понаша се као заражена на начин на који људи очекују. Ништа није шифровано, ниједна датотека не недостаје, не појављује се захтев за откуп. Само ради вруће, успорава, троши вентилаторе и кошта новац.
Зашто је другачије када већ рударите
Сваки општи чланак каже исто: тражите високо оптерећење процесора, тражите топлоту, тражите вентилаторе. На ригу је све троје нормално стање, па уобичајени савет не открива ништа. То што сте рудар чини Вас најбоље опремљеном особом да ово пронађе, али и најлакшом за заваравање.
Предност је у томе што имате нешто што скоро нико други нема: други, независан запис о томе шта је Ваш хардвер произвео. Ваша контролна табла базена мери се на туђем серверу, из рада који је стварно стигао. Ако риг пријављује једну хеш стопу, а контролна табла је приметно испод ње, пошто сте урачунали застареле деонице, нешто троши разлику.
Како улази
Путеви се нису много променили и ниједан не захтева софистицираног нападача.
- Крекован и пиратски софтвер. И даље највећи појединачни извор. Keygen или закрпљени инсталер за плаћену апликацију је програм који сте пристали да покренете са сопственим дозволама, а програм за рударење путује унутар архиве.
- Све што је изложено интернету без закрпе. Старе, широко познате рупе у серверском софтверу непрекидно се скенирају, а програм за рударење је омиљени терет јер уновчава машину на којој нема ничег вредног за крађу.
- USB. Новије кампање се копирају на преносиве дискове и скривају иза пречице која изгледа као икона диска, па се тако зарази и мрежа која уопште није изложена интернету.
- Слике контејнера и изградње. Основна слика преузета из јавног регистра може да носи програм за рударење, који онда рудари у сваком окружењу изграђеном из ње.
- Картица прегледача, мада много ређе него некада. Скрипте које рударе док је страница отворена биле су читава индустрија док највећи пружалац није угашен 2019. године; и даље постоје на сајтовима за стриминг и преузимање, али престају када се затвори картица.
Знаци на машини која би требало да мирује
- Никада заиста не мирује. Вентилатори остају убрзани, а кућиште топло, иако ништа није отворено.
- Процес који не можете да објасните, често назван тако да подсећа на прави системски процес. Разлика од једног знака у познатом имену је чест трик.
- Оптерећење које пада чим отворите менаџер задатака и враћа се када га затворите. То понашање је намерно и само по себи је скоро доказ.
- Заказани задатак, сервис или ставка покретања коју нико није направио.
- Одлазне везе ка хосту који не препознајете, које се понављају у сталном ритму.
Знаци на ригу који би требало да рудари
Овде питање није да ли нешто рудари, већ да ли је све што рудари Ваше.
- Контролна табла је стално испод онога што риг пријављује, више него што застареле деонице објашњавају.
- Два процеса рударења тамо где сте покренули један. На ригу са више GPU-ова вреди пребројати.
- Ваша скрипта за покретање или flight sheet садржи адресу новчаника или хост који нисте унели. Прочитајте је, немојте је само летимично погледати: адреса измењена у средини на први поглед изгледа исто.
- Картица се греје, а на Вашем базену не даје ништа, а управо тако изгледа други програм за рударење везан за један уређај.
- Рудари и када сте га зауставили. Ако заустављање сопственог програма за рударење не умири машину, ради нешто друго.
Замена новчаника, која кошта више од струје
Посебна породица малвера ради нешто горе и једноставније. Прати оставу (clipboard), и када копирате нешто што изгледа као адреса новчаника, замењује га адресом нападача, бирајући ону која почиње и завршава се истим знаковима, да би брза провера прошла. Људи су овако изгубили велике суме без икаквог рударења, а ове две ствари се често инсталирају заједно.
За рудара постоји и друга верзија исте идеје: адреса у скрипти за покретање или flight sheet-у једном се препише, и свака исплата после тога иде на друго место. Ништа се не квари. Риг рудари савршено. Новац једноставно стиже у други новчаник, а људи то обично открију тако што се запитају зашто исплата никада није стигла.
Одбрана је досадна и делотворна. Када налепите адресу било где где је то важно, проверите целу адресу, а не само крајеве, и потврдите да је адреса на Вашој контролној табли она коју сте намеравали. Ако исплате престану, а хеш стопа не, проверите адресу пре свега другог.
Како проверити, редом
- Упоредите две хеш стопе. Ону коју пријављује риг са оном на контролној табли базена, током једног дана, а не једног минута.
- Прочитајте сопствену конфигурацију. Сваку адресу новчаника и сваки хост, знак по знак, на сваком ригу.
- Зауставите свој програм за рударење и посматрајте. Машина која после тога остане заузета има нешто друго што ради.
- Излистајте шта се само покреће. Заказане задатке и сервисе на Windows-у, тајмере и cron на Linux-у, као и све што се покреће при пријави.
- Погледајте одлазне везе док је Ваш програм за рударење заустављен. Све што и даље комуницира у ритму вреди идентификовати.
- Скенирајте нечим поузданим, али се не заустављајте на чистом резултату. Програми за рударење се рутински мењају док их скенери више не препознају, и зато је овај корак последњи, а не први.
Уклањање није брисање датотеке
Ови програми су направљени да се враћају. Брисање програма док оно што га покреће преживи купује неколико минута. Уклоните заказани задатак, сервис, ставку покретања, cron линију и кључ у регистру, затим датотеку, затим поново покрените машину и проверите да се ништа није вратило.
На машини која је била важна, а нарочито на свему што је држало новчаник или приватни кључ, поновну инсталацију сматрајте поштеном опцијом. Исти приступ који је инсталирао програм за рударење могао је инсталирати било шта друго, а савремена кампања ће успут прикупити приступне податке. Промените лозинке које је та машина видела, са другог уређаја.
Како остати чист
Правила која ово заиста спречавају су досадна, и управо њих људи прескачу, јер рударење подразумева преузимање непотписаног софтвера од странаца.
- Програми за рударење долазе са сопствене странице издања пројекта и проверавате објављени контролни збир. Програм за рударење са линка на форуму, из описа видеа или из препаковане архиве је убедљиво највероватнији начин да се рударска машина зарази, управо зато што сте очекивали упозорење и одбацили га.
- Никада не покрећите крекован софтвер на машини која рудари или држи новчаник. Никада. Те две навике се не мешају.
- Закрпите све што је изложено интернету. Већина инфекција је аутоматизована и бира машине по броју верзије.
- Новчаник на који примате исплате држите одвојено од машине која рудари. Ригу је потребна само адреса, никада кључеви.
- Проверите адресу за исплату после сваке промене на ригу, и поново после свега неочекиваног што му се деси.