Hōʻailona CTF - hōʻailona csrf kūpono ʻole - google ctf

Nā Hōʻailona CTF, nā hewa CSRF, a me nā mea huna i hoʻokahe ʻia

ʻO nā mea a nā mea hoʻomohala e pono ai ke ʻike ma mua o ko lākou hoʻomaka ʻana

Ke komo mau nei nā hewa AppSec i ka hana ʻana, ʻoiai ke hūnā ʻia i ka ʻike maka. Inā he hōʻailona CTF i koe, he hōʻailona CSRF pono ʻole, a i ʻole nā ​​mea huna i kanu ʻia i loko o nā pūʻolo open-source, he ʻoiaʻiʻo nā pilikia. Manaʻo pinepine nā mea hoʻomohala he mea ʻino ʻole kēia mau pilikia i nā wahi hoʻomohala, akā makemake nā mea hoʻouka i nā hua haʻahaʻa. Eia nā mea e pono ai ʻoe e ʻike ma mua o ka hoʻomaka ʻana.

Hoʻōki i ka hoʻouna ʻana i nā mea huna: No ke aha he pilikia palekana kahi hōʻailona CTF

Inā ua waiho ʻoe i kahi hōʻailona Google CTF a i ʻole kahi mea huna hoʻopunipuni i loko o kahi waihona me ka manaʻo "no ka hoʻāʻo wale nō," ʻaʻole ʻoe hoʻokahi. Akā, ʻaʻole ia he palekana. Hōʻike nā hiʻohiʻona lehulehu pehea i hoʻohana ʻia ai nā hōʻailona i hōʻike ʻia, ʻoiai mai nā pilikia palekana, i nā uhaki honua maoli.

He mea weliweli nā mea huna i waiho ʻia i loko o ke code:

  • Hoʻopau pinepine lākou i nā log kūkulu a i ʻole nā ​​​​kiʻi Docker.
  • Hoʻohana hou ʻia lākou ma nā wahi āpau ma mua o kou manaʻo.
  • Hiki ke hoʻohana ʻia kahi hōʻailona CTF i ka wā i hui pū ʻia me ka ʻike repo a i ʻole nā ​​​​mea hana CI.

ʻO ka hihia ma ke kumu: Ua hoʻokuʻu ʻia nā hōʻoia hoʻāʻo e kahi GitHub Action i loko o nā log lehulehu ma muli o ka hoʻopuka verbose. ʻAʻole ia he mea huna hana, akā ua hāʻawi ia i nā mea hoʻouka i kahi palapala hoʻolālā.

Hōʻailona CSRF kūpono ʻole: He mea haki polokalamu mālie

ʻO ka Cross-Site Request Forgery (CSRF) kahi hoʻouka kaua e hoʻopunipuni i ka polokalamu kele pūnaewele o ka mea hoʻohana e hana i nā noi i makemake ʻole ʻia i kahi polokalamu pūnaewele kahi i hōʻoia ʻia ai lākou. Hana pinepine ka pale ʻana o CSRF ma ka hana ʻana i kahi hōʻailona e pono e hoʻouna ʻia me kekahi noi e hoʻololi ana i ka mokuʻāina (e like me nā hoʻouna palapala a i ʻole nā ​​​​kāhea API). Inā nalowale a hewa paha ka hōʻailona, ​​​​ua ālai ʻia ke noi.

I nā polokalamu hou, ʻoiai nā polokalamu ʻaoʻao hoʻokahi (SPAs) a i ʻole nā ​​​​backends API-first, hiki i kēia hoʻonohonoho ke hāʻule mālie a lilo paha i mea ʻole inā ʻaʻole i hoʻokō pono ʻia.

He aha ka mea e uhaki ai i ka pale ʻana o ka CSRF i kēia lā:

  • Nā ʻano kuki SameSite i hoʻonohonoho hewa ʻia.
  • Ua māhele ʻia nā kahe ʻae ma waena o nā kikowaena a i ʻole nā ​​​​microservices.
  • ʻO ka nele o ka hoʻohou hou ʻana o ka hōʻailona ma hope login nā loli moku'āina.

ʻAʻole pono ʻoe i kahi palapala ʻino e uhaki i ka CSRF. ʻO ka mea wale nō e pono ai, ʻo ia ka lawelawe ʻana i ka hālāwai maikaʻi ʻole. Ua hāʻule kekahi polokalamu i ka hōʻoia hou ʻana i kāna kuki SameSite ma hope o login, e ʻae ana i nā mismatch hōʻailona e hala me ka ʻike ʻole ʻia a hiki i ka mea hoʻohana ke paʻi i kahi ala i pale ʻia.

ʻO ka mea nui, ʻo ka ʻike ʻia ʻana o kahi leka hōʻailona CSRF pono ʻole ʻaʻole ia he pilikia liʻiliʻi wale nō ma ka ʻaoʻao mua; hiki iā ia ke hōʻike i kahi nāwaliwali maoli i ke kahe o ka hālāwai a i ʻole ka hoʻokele hōʻailona. He pilikia ākea ia i nā ʻōnaehana hana, ʻaʻole wale kahi mea e hōʻike ʻia ana i nā wahi CTF a i ʻole ka hoʻāʻo dev.

Nā Leaka Malu i loko Pipelines: No ke aha CI/CD ʻO kāu ʻili hoʻouka mua kēia - CTF Token

Kou CI pipeline hana i nā mea āpau: code, configs, tests, and logs. ʻO ia hoʻi kahi e hōʻike pinepine ʻia ai nā mea huna.

Nā wahi leaka maʻamau:

  • Nā mea huna paʻa in .NS waihona.
  • Nā palapala hoʻonohonoho kikoʻī (e laʻa, npm hoʻokomo) ke kākau inoa ʻana i nā hōʻailona i hoʻokomo ʻia.
  • Nā mea holo i hoʻonohonoho hewa ʻia a i ʻole nā ​​​​hana ʻaoʻao ʻekolu e komo ana i nā palapala hōʻoia.

Ua hoʻokomo kekahi mea hoʻomohala i kahi Hōʻailona CTF no ka debugging. Ua ola ia i ʻekolu mau hui ʻana, ua pau i loko o nā log, a ua ʻike ʻia e nā scanners automated ma hope o ka helu ʻia ʻana e nā ʻenekini huli.

Nā mana i ʻōlelo ʻia:

  • Nā kulekele hāʻule koke no .NS nā mea huna i loko commits.
  • Ua hoʻā ʻia ka hoʻomaʻemaʻe log ma ka paʻamau.
  • Nā mīkini nānā manawa maoli e like me Gitleaks, TruffleHog, a i ʻole ka ʻike huna ʻana o GitHub maoli.

Hiki i nā mea hilinaʻi ke leaka pū kekahi: Nā pilikia o ka Open Source a me nā pūʻolo ʻaoʻao ʻekolu

Nā pūʻolo kumu wehe ʻaʻole palekana i nā mea huna. Loaʻa i kekahi mau kī maoli i hoʻokomo hewa ʻia. He mea hou CTF Google ua hoʻohālikelike ka pilikia i kēia vector pololei, e hōʻike ana pehea e hiki ai i nā pūʻolo manaʻo maikaʻi ke hoʻolauna i ka pilikia.

Nā hiʻohiʻona ma ka nahelehele:

  • node_modules/example-creds.json aia nā hōʻailona hoʻāʻo OAuth i kūlike i ke ʻano hana.
  • .env.debug ua paʻi hewa ʻia nā faila me nā kī API i ka wā o ka hoʻomohala kūloko.
  • Nā mea hoʻāʻo hoʻāʻo ʻāpana, me nā JWT a i ʻole nā ​​​​​​palapala hōʻoia ao i manaʻo ʻia no nā wahi kūloko.
  • Nā kāʻei hoʻāʻo i koe e hoʻokomo ana i nā hōʻailona maoli a i ʻole nā ​​​​mea huna no ka hoʻonohonoho ʻana i ka hoʻāʻo maʻalahi.

ʻAʻole kēia he mau ʻokoʻa kakaikahi; hana pinepine lākou e manaʻo ʻia he ʻōnaehana. Hōʻailona pinepine ʻia nā mea huna i loko o nā pūʻolo lehulehu e nā mea hana scan a pinepine ʻole i nā loiloi code manual.

No ke aha he mea nui ai ka scan mau:

  • Nā pūʻolo ʻaoʻao ʻekolu hiki ke loli me ka ʻole o ka hoʻolaha ʻana. ʻOiai kahi hoʻonui liʻiliʻi o ka mana e hoʻolauna paha i kahi faila hou me ka ʻikepili koʻikoʻi.
  • ʻAʻole hiki ke hoʻonui ʻia ka nānā lima ʻana; ʻo nā mea hana hana ponoʻī wale nō ke ala e hopu ai i nā mea huna i hoʻokomo ʻia ma ka pālākiō.
  • E hoʻohana i nā kulekele hana ponoʻī e nānā i nā hilinaʻi ma ke ʻano recursive no nā mea huna, ʻoiai i loko node_modules, ʻikepili hoʻāʻo, a i ʻole .NS mea waiwai.

Pono nā kulekele kūkulu e mālama i nā pūʻolo lehulehu me ka nānā like ʻana me ke code kūloko, no ka mea, hoʻokahi hōʻailona CTF i hoʻokomo ʻia a i ʻole ke koena .NS ʻo ka faila wale nō ka mea e pono ai.

Nā Hana Kū'ē DevOps: Palekana CI/CD Nā Paʻamau i kēlā Unahi

Ka hoʻopaʻa ʻana i kāu pipeline ʻaʻole wale ia e pili ana i nā mea hana; e pili ana i ka hoʻonohonoho ʻana i nā kulekele hana ponoʻī a guardrails e hopu ana i nā ʻano pilikia ma mua o ko lākou hiki ʻana i ka hana. Honua maoli CI/CD olakino pono ka hoʻokō mau ʻana a me nā kūlana paʻamau maopopo e hoʻoikaika i ka pale ʻana.

Nā hana i hoʻonui ʻia no ka palekana pipelines:

  • ʻImi huna at commit manawaE nānā i nā mea a pau commita me pull requests no nā mea huna, ʻoi aku hoʻi nā faila .env, config.js, nā faila YAML, a me nā ʻano hōʻailona e like me kahi Hōʻailona CTFHoʻohui ʻakomi ʻia ka poloka ke ʻike ʻia nā hewa.
  • Hoʻokō kulekele wikiwiki ʻoleMai kali a hiki i ka pau ʻana o kahi hana CI e hāʻule ai nā kūkulu. E hoʻonohonoho i nā kulekele e hoʻopau koke i ka wā e loaʻa ai nā mea huna a i ʻole nā ​​​​​​kuhi hewa. Mālama kēia i ka manawa a pale i ke code maikaʻi ʻole mai ka holomua hou ʻana i loko o ka pipeline.
  • Ka nānā ʻana a me ka hoʻoponopono ʻana i ka logʻO nā log kahi kumu maʻamau o nā mea huna i hoʻokahe ʻia. E hoʻokō i ka holoi ʻana i nā log a i ʻole ka uhi ʻana no nā waiwai koʻikoʻi e like me Hana ʻae: nā poʻomanaʻo, nā kuki, a me nā hōʻailona API. Nā moʻolelo loiloi no nā ʻano like CTF Google nā mea hōʻike a i ʻole nā ​​​​hōʻailona kūloko.
  • Ka uhi palekana CSRF: Hoʻohui i nā hoʻokolohua hana ponoʻī e hōʻoia i nā kahe o ka hālāwai a hōʻoia i ka hana mau ʻana o nā kuki a me nā hōʻailona CSRF ma lalo o SameSite a me nā kūlana cross-origin. Hōʻailona i nā pilikia kahi e hiki ai i ka ʻōnaehana ke hoʻopuka a ʻae paha i kahi hōʻailona CSRF kūpono ʻole.
  • Hoʻoikaika ʻia ka hoʻololi hunaPono e hoʻohuli ʻia nā mea huna a me nā hōʻailona i ka wā e hui pū ʻia ai nā PR a i ʻole ke ʻike ʻia nā leaks. E hoʻokele pono i nā kahe hana hoʻohuli kī e pale aku i nā mea huna kahiko mai ka noho ʻana i nā wahi hana a i ʻole CI.
  • E pale i nā hoʻohālikelike hui ʻulaʻula ma ka dev: E pale i ka hoʻokomo ʻana i nā kauoha hoʻouka kaua paʻa a i ʻole nā ​​​​​​uku ukana i loko o nā kahe dev a i ʻole CI, ʻoiai no nā kumu hoʻāʻo. Inā e hōʻike ana i ka logic detection, e hoʻohana i ka pseudocode (e.g., // Hōʻailona Laʻana=ABC123) a e hōʻailona iā ia ma ke ʻano he wahi hana ʻole. ʻO ka hoʻohana hewa ʻana i ka syntax hoʻohana maoli, ʻoiai i nā hoʻokolohua, hiki ke hoʻihoʻi i nā log lehulehu a i ʻole i ka wā o nā loiloi.

Pono ka ʻike palekana e kālele ana i ka hoʻokō ʻana i ka hoʻomaʻemaʻe ma nā kūlana maoli: commit-ka nānā ʻana i ka manawa, ka pale ʻana i ka mea huna, a me ka hōʻoia ʻana i ka hālāwai, ʻaʻole nā ​​​​​​hoʻohālike hoʻouka hana. ʻO ka pahuhopu ka hoʻolilo ʻana i ka palekana i ʻāpana o ke kūkulu ʻana o kāu hui, ʻaʻole i kahi ʻanuʻu ma hope o ka loiloi code. Pono e hoʻokomo ʻia nā mea āpau mai ka scan token a i ka hōʻoia CSRF i loko o ka mea like. pipelinenā mea e kūkulu a hoʻāʻo i kāu code.

Ke ʻike ʻana i nā pilikia ma ka unahi: Pehea e kōkua ai ʻo Xygeni i ka hoʻokō ʻana i nā DevSecOps

Ma ke ʻano he ʻāpana o kahi DevSecOps palekana pipeline, ʻO Xygeni hana ma ke ʻano he papa hoʻokō e hoʻokele pono i nā hōʻoia palekana koʻikoʻi ma o ka CI/CD pōʻaiapuni ola. ʻAʻole kāna kuleana e pani i nā hana maikaʻi, akā, e hōʻoia i ka hoʻopili mau ʻia ʻana, ma ka nui, ma nā ʻano like ʻole.

Hoʻokele pono ʻo Xygeni i nā mana koʻikoʻi ma waena o ka pipeline, e like me:

  • Ka nānāʻana pull requests a kukulu no nā mea huna i hōʻike ʻia, me nā hōʻailona e like me ka Hōʻailona CTF a i ʻole nā ​​​​palapala hōʻoia i hūnā ʻia i loko o nā mea hana hoʻāʻo.
  • Ke ālai nei i nā hoʻolaha if .NS nā faila a i ʻole nā ​​​​​​ʻano koʻikoʻi i ʻike ʻia i loaʻa i loko commits, nā kūkulu, a i ʻole nā ​​​​mea hilinaʻi.
  • Ke hoʻokō nei i ka hoʻololi huna i hoʻokau ʻia i ka hui ʻana ke ʻike ʻia kahi mea huna, e hōʻoiaʻiʻo ana ʻaʻole e waiho ʻia nā hōʻailona kahiko a i ʻole i hoʻopilikia ʻia.
  • Ke ʻike nei i nā hoʻonohonoho hewa CSRF, me nā ʻano hoʻohālike e hiki ke hopena i kahi hōʻailona CSRF kūpono ʻole hewa, hōʻailona i nā kuhi hewa o ka hālāwai, a i ʻole nā ​​​​pilikia SameSite.
  • Hoʻohui ʻia ʻana o CI-ʻōiwi ma nā kahua like ʻole (GitHub, GitLab, Jenkins, Bitbucket), e ʻae ana i nā kulekele palekana e holo i loko o nā kahe hana e kū nei me ka ʻole o ka hoʻolohi ʻana i nā mea hoʻomohala.

ʻAʻole wale kēia mau kaohi he mea maikaʻi ke loaʻa; hoʻopiha lākou i ka hakahaka ma waena o nā loiloi manual a me ka palekana hana. Ma ka hoʻokomo ʻana i nā lula palekana pololei i loko o ka CI pipeline, hoʻemi nā hui i nā wahi makapō me ka ʻole o ka pono e hoʻololi i kā lākou mau mea hana a i ʻole nā ​​​​maʻamau.

Papa Inoa Hope Loa: Ma mua o kou hele ʻana i ke ola

Nānā Palekana Ma mua o ka Hoʻomaka ʻana He aha e hōʻoia ai
ʻAʻohe mea huna paʻa a i ʻole ke koena o ka hōʻailona CTF E hōʻoia i ka kaʻawale ʻana o nā code a me nā mōʻaukala āpau mai nā hōʻailona hoʻāʻo, nā hōʻailona CTF, a i ʻole nā ​​​​palapala hōʻoia.
Ua hōʻoia piha ʻia ka pale ʻana o ka CSRF hōʻike login/kahe no nā pilikia e like me nā hewa hōʻailona CSRF pono ʻole a i ʻole nā ​​​​pilikia SameSite.
CI/CD pipeline hoʻomaʻemaʻe Waihona ālai .env commits, e scan i nā log, a pale i ka hōʻike huna ʻana i nā ʻanuʻu kūkulu.
Ua nānā ʻia nā mea hilinaʻi a pau E nānā i nā pūʻolo ʻaoʻao ʻekolu a me nā node_modules no nā mea huna i hoʻokomo ʻia a i ʻole ka ʻikepili hoʻāʻo.
Hana ʻia ka nānā ʻana ma hope o ka hoʻolaha ʻana E nānā no ka hoʻohana pono ʻole ʻana i nā hōʻailona, ​​​​ʻoiai hoʻi nā poʻomanaʻo ʻae kolohe a i ʻole ka hoʻohana hou ʻana i nā hōʻailona.
Hoʻokō ʻia ma o nā kulekele CI (Google CTF hygiene) E hoʻopili i nā lula hana ponoʻī e ālai i nā PR a koi i ka hoʻololi inā ʻike ʻia nā mea huna.

ʻAʻole wale ka pilikia maoli o AppSec e pili ana i nā hana hoʻopunipuni. E pili ana ia i nā hewa o kēlā me kēia lā a mākou e hoʻōki ai i ka hopu ʻana. E hoʻomaka i kahi e pono ai: kāu code a me kāu pipeline.

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