គន្លឹះសុវត្ថិភាព Cloud មានប្រយោជន៍លុះត្រាតែពួកវាដោះស្រាយចន្លោះប្រហោងពិតប្រាកដដែលអ្នកវាយប្រហារកេងប្រវ័ញ្ច៖ ធុង S3 សាធារណៈដែលគ្មាននរណាម្នាក់កត់សម្គាល់ អ្នករត់ CI ជាមួយ wildcard AWS ការអនុញ្ញាត ការសម្ងាត់ដែលលេចធ្លាយនៅក្នុងកំណត់ហេតុសាងសង់ ឬការពឹងផ្អែកដែលមានគំនិតអាក្រក់ដែលបានដំឡើងដោយស្ងាត់ៗក្នុងអំឡុងពេល pipeline ដំណើរការ។ ឧប្បត្តិហេតុសុវត្ថិភាពពពកភាគច្រើនមិនបណ្តាលមកពីការគំរាមកំហែងដែលមិនស្គាល់នោះទេ។ ពួកវាបណ្តាលមកពីចំណុចខ្សោយដែលគេស្គាល់ ដែលមិនដែលត្រូវបានអនុវត្ត ផ្តល់អាទិភាព ឬជួសជុល។
ការណែនាំនេះគ្របដណ្តប់លើគន្លឹះសុវត្ថិភាពលើពពកជាក់ស្តែងចំនួន 20 ដែលរៀបចំតាមស្រទាប់៖ អត្តសញ្ញាណ ទិន្នន័យ ហេដ្ឋារចនាសម្ព័ន្ធ ខ្សែសង្វាក់ផ្គត់ផ្គង់កម្មវិធី CI/CD pipelineការរកឃើញ និងការឆ្លើយតបទៅនឹងឧប្បត្តិហេតុ។ មិនថាអ្នកកំពុងពង្រឹងគណនី cloud តែមួយ ឬធានាសុវត្ថិភាពក្រុមច្រើននោះទេ DevSecOps pipelineការគ្រប់គ្រងទាំងនេះជួយទប់ស្កាត់ការរំលោភបំពានដែលកើតឡើងពិតប្រាកដ។
ហេតុអ្វីបានជាសុវត្ថិភាព Cloud នៅតែបរាជ័យទោះបីជាមានគន្លឹះសុវត្ថិភាព Cloud ជាច្រើនក៏ដោយ
សុវត្ថិភាពលើពពក គឺជាសំណុំនៃការគ្រប់គ្រង គោលការណ៍ និងឧបករណ៍ដែលការពារទិន្នន័យ កម្មវិធី និងហេដ្ឋារចនាសម្ព័ន្ធដែលដំណើរការក្នុងបរិស្ថានលើពពក។ វាគ្របដណ្តប់លើអត្តសញ្ញាណ បណ្តាញ ទិន្នន័យ កូដកម្មវិធី ភាពអាស្រ័យ ការកំណត់រចនាសម្ព័ន្ធ និងការបង្កើត។ pipelines.
មូលហេតុដែលវាបន្តបរាជ័យសម្រាប់ក្រុមដែលមានភាពចាស់ទុំ មិនមែនដោយសារតែខ្វះចំណេះដឹងនោះទេ។ វាគឺជាបញ្ហារចនាសម្ព័ន្ធបីយ៉ាង៖
- ល្បឿនធៀបនឹងសុវត្ថិភាព។ Pipelines ផ្លាស់ទីលឿន។ ការគ្រប់គ្រងដែលបន្ថែមការកកិតត្រូវបានបិទ។ ក្រុមដែលទទួលបានសុវត្ថិភាពពពកត្រឹមត្រូវមិនបន្ថែមច្រកទ្វារទេ ពួកគេធ្វើស្វ័យប្រវត្តិកម្មការអនុវត្តដោយផ្ទាល់ទៅក្នុងលំហូរការងារ។
- ការបំបែកឧបករណ៍។ ការស្កេនអាថ៌កំបាំងនៅក្នុងឧបករណ៍មួយ, SCA នៅក្នុងមួយផ្សេងទៀត IaC ក្នុងមួយភាគបី។ គ្មានទស្សនៈរួមមានន័យថាគម្លាតធ្លាក់ចុះរវាងស្រទាប់គ្របដណ្តប់ ហើយការរកឃើញមិនដែលមានទំនាក់ទំនងជាមួយហានិភ័យពិតប្រាកដនោះទេ។
- អស់កម្លាំងពេលភ្ញាក់ពីដំណេក។ ម៉ាស៊ីនស្កេនដែលរកឃើញ CVE រាប់រយក្នុងមួយថ្ងៃ បណ្តុះបណ្តាលវិស្វករឱ្យមិនអើពើនឹងការរកឃើញ រួមទាំងការរកឃើញសំខាន់ៗផងដែរ។ ការកំណត់អាទិភាពមិនមែនជាជម្រើសទេ វាជាអ្វីដែលកំណត់ថាតើសុវត្ថិភាពពិតជាដំណើរការឬអត់។
គន្លឹះសុវត្ថិភាព Cloud ខាងក្រោមត្រូវបានរចនាឡើងដើម្បីបិទចន្លោះប្រហោងទាំងនោះតាមរបៀបជាក់ស្តែង។ ជំនួសឱ្យការចាត់ទុកសុវត្ថិភាព Cloud ជាបញ្ហាពេលដំណើរការតែប៉ុណ្ណោះ ពួកវាគ្របដណ្តប់លើផ្លូវចែកចាយពេញលេញពីកូដទៅ Cloud។
គន្លឹះសុវត្ថិភាព Cloud ចំនួន ២០៖
គន្លឹះសុវត្ថិភាពលើ Cloud សម្រាប់ការគ្រប់គ្រងអត្តសញ្ញាណ និងការចូលប្រើ
១. បើកការផ្ទៀងផ្ទាត់ពហុកត្តាគ្រប់ទីកន្លែង
MFA នៅតែជាការគ្រប់គ្រង ROI ខ្ពស់បំផុតតែមួយគត់នៅក្នុងសុវត្ថិភាព cloud។ វាបញ្ឈប់ការវាយប្រហារលួចព័ត៌មានសម្ងាត់ដោយមិនគិតពីមូលហេតុ ហើយអ្នកវាយប្រហារក៏ដឹងដែរ។ គណនីណាមួយដែលគ្មាន MFA គឺជាគោលដៅងាយរងគ្រោះ។
អនុវត្ត MFA សម្រាប់អត្តសញ្ញាណមនុស្សគ្រប់រូបនៅក្នុងបរិស្ថានពពករបស់អ្នក៖ គណនីអ្នកអភិវឌ្ឍន៍ កុងសូលអ្នកគ្រប់គ្រង វិបផតថលអ្នកផ្តល់សេវាពពក CI/CD dashboardស. ប្រើ MFA (សោរផ្នែករឹង សោរសម្ងាត់) ដែលធន់នឹងការបន្លំសម្រាប់គណនីដែលមានសិទ្ធិ។ លេខកូដដែលផ្អែកលើពេលវេលាតាមរយៈកម្មវិធីផ្ទៀងផ្ទាត់គឺជាកម្រិតអប្បបរមា។
២. អនុវត្តសិទ្ធិតិចតួចបំផុត ជាពិសេសចំពោះអត្តសញ្ញាណដែលមិនមែនជាមនុស្ស
គោលការណ៍នៃសិទ្ធិតិចតួចបំផុត ត្រូវបានយល់យ៉ាងច្បាស់សម្រាប់មនុស្ស។ ផ្នែកដែលក្រុមតែងតែខកខានគឺអត្តសញ្ញាណមិនមែនមនុស្ស៖ CI/CD គណនីសេវាកម្ម, អនុគមន៍ Lambda, បន្ទុកការងារកុងតឺន័រ, កម្មវិធីដំណើរការ GitHub Actions។
អត្តសញ្ញាណទាំងនេះប្រមូលបានការអនុញ្ញាត wildcard ពីព្រោះពួកវាត្រូវបានកំណត់រចនាសម្ព័ន្ធម្តង ហើយមិនដែលពិនិត្យមើលឡើងវិញឡើយ។ ពួកវាក៏ជាអ្វីដែលអ្នកវាយប្រហារកំណត់គោលដៅនៅក្នុងការវាយប្រហារខ្សែសង្វាក់ផ្គត់ផ្គង់ផងដែរ ពីព្រោះពួកគេអាចចូលប្រើអាថ៌កំបាំង ឃ្លាំង ធនធានផលិតកម្ម និងប្រព័ន្ធខាងក្រោម។
ធ្វើសវនកម្មសិទ្ធិគណនីសេវាកម្មរៀងរាល់ត្រីមាស។ លុបអ្វីដែលមិនត្រូវបានប្រើប្រាស់ក្នុងរយៈពេល 90 ថ្ងៃ។
៣. ជំនួសលិខិតសម្គាល់ដែលមានអាយុកាលយូរអង្វែងជាមួយនឹងថូខឹនដែលមានអាយុកាលខ្លី
សោ API ឋិតិវន្ត និងថូខឹនដែលមានអាយុកាលយូរអង្វែង គឺជាមូលហេតុមួយក្នុងចំណោមមូលហេតុទូទៅបំផុតនៃការបំពានលើពពក។ ពួកវាទទួលបាន commitបានបញ្ជូនទៅ repos លេចធ្លាយនៅក្នុងកំណត់ហេតុ CI ចម្លងទៅក្នុង Slack ហើយភ្លេចនៅក្នុង .NS ឯកសារ បន្ទាប់មកមានសុពលភាពរយៈពេលច្រើនខែ ឬច្រើនឆ្នាំ។
ជំនួសពួកវាដោយលិខិតបញ្ជាក់អាយុកាលខ្លីតាមដែលអាចធ្វើទៅបាន៖ AWS STS ទទួលយកតួនាទី, សហព័ន្ធអត្តសញ្ញាណបន្ទុកការងារ GCP, សកម្មភាព GitHub OIDCនៅពេលដែលព័ត៌មានសម្ងាត់ឋិតិវន្តមិនអាចជៀសវាងបាន សូមរក្សាទុកវានៅក្នុងកម្មវិធីគ្រប់គ្រងការសម្ងាត់ (Vault, AWS Secrets Manager, Azure Key Vault) ហើយបង្វិលដោយស្វ័យប្រវត្តិ។
៤. អនុវត្តការចូលប្រើទាន់ពេលវេលាសម្រាប់សិទ្ធិពិសេស
ការចូលប្រើប្រាស់ជាអ្នកគ្រប់គ្រងអចិន្ត្រៃយ៍គឺជាហានិភ័យអចិន្ត្រៃយ៍។ ការអនុញ្ញាតកម្រិតខ្ពស់ជាអចិន្ត្រៃយ៍មានន័យថាអត្តសញ្ញាណដែលត្រូវបានលួចចូលមួយគឺគ្រប់គ្រាន់ដើម្បីឈានដល់ការផលិត។
ប្រព័ន្ធចូលប្រើ JIT (AWS IAM Identity Center, GCP Privileged Access Manager, Okta Access Requests) ផ្តល់សិទ្ធិចូលប្រើកម្រិតខ្ពស់តាមតម្រូវការ មានកំណត់ពេលវេលា និងមានកំណត់ហេតុសវនកម្មពេញលេញ។ អ្នកអភិវឌ្ឍន៍ទទួលបានអ្វីដែលពួកគេត្រូវការនៅពេលដែលពួកគេត្រូវការវា។ អ្នកវាយប្រហាររកមិនឃើញគោលដៅអចិន្ត្រៃយ៍ទេ។
៥. អនុវត្តការជឿទុកចិត្តសូន្យនៅទូទាំងការទំនាក់ទំនងពីសេវាកម្មមួយទៅសេវាកម្មមួយ
គំរូបរិវេណបែបប្រពៃណីសន្មតថាអ្វីៗទាំងអស់នៅក្នុងបណ្តាញត្រូវបានទុកចិត្ត។ បរិស្ថានដើមលើពពកជាមួយមីក្រូសេវាកម្ម កុងតឺន័រ និងបន្ទុកការងារថាមវន្តធ្វើឱ្យការសន្មតនោះមានគ្រោះថ្នាក់។
សូន្យទុកចិត្ត មានន័យថា សំណើនីមួយៗត្រូវបានផ្ទៀងផ្ទាត់ និងអនុញ្ញាត ដោយមិនគិតពីប្រភពដើមរបស់វាឡើយ។ អនុវត្តការផ្ទៀងផ្ទាត់សេវាកម្មទៅសេវាកម្ម (mTLS, អត្តសញ្ញាណសំណាញ់សេវាកម្ម) អនុវត្តគោលការណ៍បណ្តាញនៅកម្រិតបន្ទុកការងារ និងចាត់ទុកចរាចរណ៍ផ្ទៃក្នុងថាមិនគួរឱ្យទុកចិត្តតាមលំនាំដើម។
គន្លឹះសុវត្ថិភាពលើ Cloud សម្រាប់ការការពារទិន្នន័យ
៦. អ៊ិនគ្រីបអ្វីៗគ្រប់យ៉ាង រួមទាំងចរាចរណ៍ផ្ទៃក្នុង
ការអ៊ិនគ្រីបនៅពេលសម្រាក (AES-256, KMS ដែលគ្រប់គ្រង) ឥឡូវនេះ standard ការហ្វឹកហាត់។ គម្លាតដែលក្រុមភាគច្រើនមានគឺ ការអ៊ិនគ្រីបកំពុងដំណើរការសម្រាប់ចរាចរណ៍ផ្ទៃក្នុង.
នៅក្នុង VPC ដែលមាន microservices និងការទំនាក់ទំនងពីកុងតឺន័រទៅកុងតឺន័រ ចរាចរណ៍ដែលនៅ "ខាងក្នុង" មិនមានសុវត្ថិភាពដោយធម្មជាតិទេ។ អនុវត្ត Mutual TLS (mTLS) សម្រាប់ការទំនាក់ទំនងសេវាកម្មផ្ទៃក្នុង។ ប្រើ service mesh (Istio, Linkerd) ឬស្រទាប់បណ្តាញ zero-trust ដើម្បីអនុវត្តវាដោយស្វ័យប្រវត្តិ ជាជាងពឹងផ្អែកលើក្រុមនីមួយៗដើម្បីកំណត់រចនាសម្ព័ន្ធវាឱ្យបានត្រឹមត្រូវ។
៧. រកឃើញ និងដោះស្រាយអាថ៌កំបាំងដែលបានលាតត្រដាងមុនពេលវារីករាលដាល
អាថ៌កំបាំងមួយ commitការដាក់ឯកសារទៅក្នុងឃ្លាំងមិននៅជាសម្ងាត់ទេ។ GitHub ធ្វើលិបិក្រមឃ្លាំងសាធារណៈក្នុងរយៈពេលប៉ុន្មានវិនាទី។ ឃ្លាំងខាងក្នុងមិនមានភាពស៊ាំទេ នៅពេលដែលអាថ៌កំបាំងមួយស្ថិតនៅក្នុងប្រវត្តិ git វាអាចចូលប្រើប្រាស់បានសម្រាប់អ្នកដែលមានសិទ្ធិចូលប្រើប្រាស់ឃ្លាំងឥឡូវនេះ ឬនៅពេលអនាគត។
ស្រទាប់ការពារមានសារៈសំខាន់ (pre-commit hooks, កម្មវិធីជំនួយ IDE) ប៉ុន្តែមិនគ្រប់គ្រាន់ទេ។ អ្នកត្រូវការការស្កេនជាបន្តបន្ទាប់នៅទូទាំងឃ្លាំងទាំងអស់ រួមទាំងប្រវត្តិផងដែរ។ commits, CI/CD កំណត់ហេតុ, IaC ឯកសារ និងរូបភាពកុងតឺន័រ។ នៅពេលដែលរកឃើញអាថ៌កំបាំង ការឆ្លើយតបត្រូវតែភ្លាមៗ៖ ដកហូត បង្វិល និងវាយតម្លៃថាតើវាត្រូវបានចូលប្រើរវាងការបង្ហាញ និងការរកឃើញឬអត់។
៨. ចាត់ថ្នាក់ទិន្នន័យ និងអនុវត្តការគ្រប់គ្រងដោយផ្អែកលើភាពរសើប
មិនមែនទិន្នន័យទាំងអស់នៅក្នុងបរិស្ថានពពករបស់អ្នកមានហានិភ័យដូចគ្នាទេ ប្រសិនបើត្រូវបានលាតត្រដាង។ ការចាត់ទុកអ្វីៗគ្រប់យ៉ាងដូចគ្នាមានន័យថា ការវិនិយោគលើសកម្រិតលើការគ្រប់គ្រងទិន្នន័យដែលមានហានិភ័យទាប និងការការពារទិន្នន័យដែលពិតជាសំខាន់មិនគ្រប់ជ្រុងជ្រោយ។
ចាត់ថ្នាក់ទិន្នន័យតាមភាពរសើប (សាធារណៈ ផ្ទៃក្នុង សម្ងាត់ មានកម្រិត)។ អនុវត្តការគ្រប់គ្រងការចូលប្រើ ការអ៊ិនគ្រីប standardនិងតម្រូវការកត់ត្រាសវនកម្មទៅកម្រិតនីមួយៗ។ ធ្វើចំណាត់ថ្នាក់ដោយស្វ័យប្រវត្តិតាមដែលអាចធ្វើទៅបាន ការដាក់ស្លាកដោយដៃមិនមានមាត្រដ្ឋានទេ។
សុវត្ថិភាពហេដ្ឋារចនាសម្ព័ន្ធ និងការកំណត់រចនាសម្ព័ន្ធ
9. ស្កេន IaC នៅលើរាល់ Commitមិនមែនគ្រាន់តែមុនពេលដាក់ពង្រាយនោះទេ
ហេដ្ឋារចនាសម្ព័ន្ធជាកូដ គឺជាកន្លែងដែលការកំណត់រចនាសម្ព័ន្ធមិនត្រឹមត្រូវត្រូវបានបង្កើតឡើង មិនមែននៅក្នុងផលិតកម្មទេ។ ធុង S3 សាធារណៈ ក្រុមសុវត្ថិភាពបើកចំហ ឬតួនាទី IAM ជាមួយ *:* ការអនុញ្ញាតមិនលេចឡើងដោយចៃដន្យទេ។ វាចាប់ផ្តើមជាបន្ទាត់មួយនៅក្នុងឯកសារ Terraform ឬ Kubernetes manifest ដែលគ្មាននរណាម្នាក់បានសម្គាល់។
IaC ការស្កេនត្រូវតែដំណើរការលើរាល់ pull requestជាមួយនឹងការរកឃើញដែលបានលេចឡើងនៅក្នុងលំហូរការងារពិនិត្យកូដ។ ស្កេន Terraform, Kubernetes manifests, CloudFormation, Helm charts, Dockerfiles និង CI/CD ការកំណត់រចនាសម្ព័ន្ធ។
ស៊ីហ្គេនី IaC Security ស្កេនគ្រប់ទម្រង់ដែលគាំទ្រនៅលើរាល់ commitផ្គូផ្គងការរកឃើញទៅនឹងធនធានជាក់លាក់ និងរួមបញ្ចូលជាមួយលំហូរការងារ PR របស់អ្នក ដូច្នេះអ្នកអភិវឌ្ឍន៍ទទួលបានមតិកែលម្អនៅកន្លែងដែលពួកគេធ្វើការ មិនមែននៅក្នុងកន្លែងដាច់ដោយឡែកនោះទេ។ dashboard ពួកគេមិនដែលបើកទេ។ ចាប់ផ្តើមការសាកល្បងឥតគិតថ្លៃ →
១០. ចាត់ទុកគោលនយោបាយសន្តិសុខដូចជាក្រម
ការពិនិត្យសុវត្ថិភាពដោយដៃមិនមានមាត្រដ្ឋានទេ។ គោលការណ៍ដូចដែលកូដធ្វើ។
ប្រើឧបករណ៍ដូចជា OPA (Open Policy Agent) ឬ Kyverno ដើម្បីបង្ហាញច្បាប់សុវត្ថិភាពជាកូដដែលមានកំណែ និងអាចសាកល្បងបាន។ អនុវត្តពួកវានៅ pipeline កម្រិត ដូច្នេះការដាក់ពង្រាយ Kubernetes ជាមួយ ឯកសិទ្ធិ៖ ពិត ឬកុងតឺន័រដែលដំណើរការជា root នឹងធ្វើឱ្យការសាងសង់បរាជ័យដោយស្វ័យប្រវត្តិ រាល់ពេល។ នៅពេលដែលគោលការណ៍ស្ថិតនៅក្នុងកូដ ពួកវាត្រូវបានពិនិត្យ និងកែលម្អដូចជាវត្ថុបុរាណវិស្វកម្មណាមួយ។ នៅពេលដែលពួកវាស្ថិតនៅក្នុងឯកសារ ពួកវារសាត់បាត់ទៅ។
១១. អនុវត្តបន្ទាត់មូលដ្ឋាននៃការកំណត់រចនាសម្ព័ន្ធដែលមានសុវត្ថិភាព និងតាមដានការរសាត់បាត់
ការកំណត់រចនាសម្ព័ន្ធលំនាំដើមត្រូវបានធ្វើឱ្យប្រសើរឡើងសម្រាប់ភាពងាយស្រួល មិនមែនសុវត្ថិភាពទេ។ សេវាកម្ម Cloud, ពេលវេលាដំណើរការកុងតឺន័រ និងចង្កោម Kubernetes ដែលបានគ្រប់គ្រង ភ្ជាប់មកជាមួយការកំណត់ដែលងាយស្រួលប្រើ និងងាយស្រួលក្នុងការកេងចំណេញ។
ចាប់ផ្ដើមពី CIS ស្តង់ដារសម្រាប់អ្នកផ្តល់សេវាពពក ពេលដំណើរការកុងតឺន័រ និងប្រព័ន្ធប្រតិបត្តិការរបស់អ្នក។ អ៊ិនកូដពួកវាជាគោលការណ៍ជាកូដ ដើម្បីឱ្យពួកវាត្រូវបានអនុវត្តដោយស្វ័យប្រវត្តិ។ ត្រួតពិនិត្យជាបន្តបន្ទាប់សម្រាប់ការរសាត់ ការអនុលោមតាមការកំណត់រចនាសម្ព័ន្ធកាលពីសប្តាហ៍មុន អាចនឹងមិនអនុលោមតាមថ្ងៃនេះទេ បន្ទាប់ពីការផ្លាស់ប្តូររហ័សដែលត្រូវបានជំរុញក្រោមសម្ពាធ។
១២. បំបែកបណ្តាញ និងកំណត់ចលនាចំហៀង
ស្ថាបត្យកម្មបណ្តាញរាបស្មើមានន័យថា នៅពេលដែលអ្នកវាយប្រហារធ្វើឱ្យខូចដល់បន្ទុកការងារមួយ ពួកគេអាចទៅដល់អ្វីៗផ្សេងទៀត។ ការបែងចែកបណ្តាញមានកាំនៃការផ្ទុះ។
ប្រើប្រាស់ VPC, subnets និងក្រុមសុវត្ថិភាព ដើម្បីបង្កើតតំបន់ដាច់ដោយឡែកតាមមុខងារ និងភាពរសើប។ កំណត់ចរាចរណ៍ពីកើតទៅលិចរវាងសេវាកម្មនានាទៅតែអ្វីដែលត្រូវការប៉ុណ្ណោះ។ អនុវត្តការច្រោះច្រកចេញ បន្ទុកការងារដែលរងការសម្របសម្រួលភាគច្រើនត្រូវទៅដល់ម៉ាស៊ីនមេដែលគ្រប់គ្រងដោយអ្នកវាយប្រហារ ហើយការគ្រប់គ្រងច្រកចេញគឺជាឱកាសដ៏ល្អបំផុតមួយរបស់អ្នកដើម្បីរកឃើញ ឬការពារវា។
គន្លឹះសុវត្ថិភាពលើ Cloud សម្រាប់ខ្សែសង្វាក់ផ្គត់ផ្គង់កម្មវិធី
គន្លឹះសុវត្ថិភាព Cloud ដ៏សំខាន់បំផុតមួយចំនួនលែងចាប់ផ្តើមនៅក្នុងកុងសូលអ្នកផ្តល់សេវា Cloud ទៀតហើយ។ ពួកវាចាប់ផ្តើមមុននេះ នៅក្នុងខ្សែសង្វាក់ផ្គត់ផ្គង់កម្មវិធី។ ភាពអាស្រ័យ CI/CD លំហូរការងារ អាថ៌កំបាំង ស្គ្រីបបង្កើត និងវត្ថុបុរាណ សុទ្ធតែអាចបង្កហានិភ័យដល់ប្រព័ន្ធ Cloud មុនពេលដាក់ពង្រាយ។
១៣. ស្កេនរាល់ Dependency មុនពេលវាចូលទៅក្នុង Build របស់អ្នក
កញ្ចប់ប្រភពបើកចំហគឺជាវ៉ិចទ័រចូលប្រើដំបូងទូទៅបំផុតនៅក្នុងការវាយប្រហារខ្សែសង្វាក់ផ្គត់ផ្គង់ទំនើប។ យុទ្ធនាការ Shai-Hulud ឆ្នាំ 2024 បានធ្វើឱ្យខូចកញ្ចប់ npm ចំនួន 830+។ ទ្វារខាងក្រោយ XZ Utils ស្ទើរតែធ្វើឱ្យខូចការផ្ទៀងផ្ទាត់ SSH នៅទូទាំងប្រព័ន្ធ Linux រាប់លាន។ ក្នុងករណីទាំងពីរ កូដព្យាបាទបានមកដល់តាមរយៈដំណើរការដំឡើងការពឹងផ្អែកធម្មតា។
Basic SCA (ការវិភាគសមាសភាពកម្មវិធី) បញ្ជី CVE ឆៅ មិនគ្រប់គ្រាន់ទេ។ អ្វីដែលអ្នកពិតជាត្រូវការ៖
- ការវិភាគលទ្ធភាពទៅដល់តើមុខងារងាយរងគ្រោះពិតជាត្រូវបានហៅនៅក្នុងកូដរបស់អ្នកមែនទេ?
- ការរកឃើញមេរោគ: តើកញ្ចប់នេះបង្ហាញឥរិយាបថព្យាបាទ ស្គ្រីបមិនច្បាស់លាស់ ការហៅទូរស័ព្ទបណ្តាញដែលមិននឹកស្មានដល់ វដ្តជីវិតដែរឬទេ? hooks ដែលដំឡើង runtimes ខាងក្រៅ?
- ការដាក់ពិន្ទុ EPSSតើប្រូបាប៊ីលីតេដែល CVE នេះត្រូវបានកេងប្រវ័ញ្ចយ៉ាងសកម្មនៅក្នុងធម្មជាតិនាពេលបច្ចុប្បន្ននេះ មិនត្រឹមតែតាមទ្រឹស្ដីទេឬ?
14. ចាក់សោ CI/CD Pipelines
CI/CD ប្រព័ន្ធនានាមានសិទ្ធិចូលប្រើអាថ៌កំបាំង លិខិតសម្គាល់លើពពក និងបរិយាកាសផលិតកម្ម។ ជាធម្មតា ពួកវាក៏មិនសូវមានភាពរឹងមាំជាងប្រព័ន្ធផលិតកម្មដែលពួកគេដាក់ពង្រាយនោះទេ។
ការគ្រប់គ្រងដើម្បីអនុវត្ត៖
- តម្រូវឱ្យមានការពិនិត្យមើលកូដសម្រាប់ការផ្លាស់ប្ដូរណាមួយចំពោះ pipeline ឯកសារកំណត់រចនាសម្ព័ន្ធ (.github/workflows/, ឯកសារ Jenkinsល។ )
- ដាក់កម្រិតអ្នករត់ដែលបង្ហោះដោយខ្លួនឯងទៅកាន់ឃ្លាំងដែលត្រូវបានអនុម័ត ការចូលប្រើអ្នករត់ដែលមិនបានពិនិត្យគឺជាផ្លូវផ្ទាល់ទៅកាន់ការលួចព័ត៌មានសម្ងាត់។
- កុំបញ្ជូនអាថ៌កំបាំងជាអថេរបរិស្ថានអត្ថបទធម្មតាឲ្យសោះ។ សូមប្រើការរួមបញ្ចូលកម្មវិធីគ្រប់គ្រងអាថ៌កំបាំង
- សវនកម្ម pipeline កំណត់ហេតុសម្រាប់ពាក្យបញ្ជាដែលមិនបានរំពឹងទុក ការហៅទូរស័ព្ទបណ្តាញមិនធម្មតា ឬការប្រតិបត្តិនៅម៉ោងដែលមិនបានរំពឹងទុក
ស៊ីហ្គេនី CI/CD Security អនុវត្ត guardrails ដោយផ្ទាល់នៅក្នុងរបស់អ្នក។ pipeline ទប់ស្កាត់ការបង្កើតដែលមិនមានសុវត្ថិភាព ការរកឃើញលំហូរការងារដែលបានចាក់ចូល និងធានា pipeline ភាពសុចរិតនៅគ្រប់ដំណាក់កាល។ កក់ការបង្ហាញ →
១៥. ផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវនៃការសាងសង់ និងចុះហត្ថលេខាលើវត្ថុបុរាណ
ប្រសិនបើអ្នកវាយប្រហារអាចចាក់កូដចូលទៅក្នុងស្គ្រីបសាងសង់ កែប្រែវត្ថុបុរាណបន្ទាប់ពីការចងក្រង ឬធ្វើឱ្យខូចដល់កម្មវិធីដំណើរការ CI ពួកគេជាម្ចាស់ខ្សែសង្វាក់ផ្គត់ផ្គង់កម្មវិធីរបស់អ្នក ដោយមិនគិតពីថាតើកូដប្រភពរបស់អ្នកស្អាតប៉ុណ្ណានោះទេ។
អនុវត្តការគ្រប់គ្រងសុចរិតភាពនៃការបង្កើត៖
- ភ្ជាប់កំណែអាស្រ័យ និងរូបភាពមូលដ្ឋានទាំងអស់ទៅនឹងសេចក្តីសង្ខេបពិតប្រាកដ មិនមែនស្លាកទេ
- ចុះហត្ថលេខាលើវត្ថុបុរាណសាងសង់ និងផ្ទៀងផ្ទាត់ហត្ថលេខាមុនពេលដាក់ពង្រាយ
- តាមដានការផ្លាស់ប្តូរដែលមិននឹកស្មានដល់ចំពោះ CI/CD ឯកសារលំហូរការងារ លំហូរការងារដែលបានចាក់បញ្ចូល គឺជាសូចនាករសំខាន់នៅក្នុងការវាយប្រហារដូចជា Shai-Hulud
- អនុវត្តការបញ្ជាក់ SLSA ដើម្បីបញ្ជាក់ជាកូដនីយកម្មអំពីអ្វីដែលត្រូវបានបង្កើតឡើង ពីប្រភពអ្វី និងដោយអ្វី pipeline
ការរកឃើញការគំរាមកំហែង និងការឆ្លើយតបឧប្បត្តិហេតុ
១៦. ធ្វើមជ្ឈិមនីយកម្មការកត់ត្រា និងបង្កើតភាពមើលឃើញនៅទូទាំង Stack ទាំងមូល
អ្នកមិនអាចរកឃើញអ្វីដែលអ្នកមើលមិនឃើញនោះទេ។ ការត្រួតពិនិត្យសុវត្ថិភាពពពកភាគច្រើនផ្តោតលើពេលវេលាដំណើរការ, CloudTrail, កំណត់ហេតុលំហូរ VPC និង GuardDuty។ នោះចាំបាច់ ប៉ុន្តែមិនគ្រប់គ្រាន់ទេ។
ការវាយប្រហារដូចជា Shai-Hulud និង SolarWinds ទទួលបានជោគជ័យមួយផ្នែកដោយសារតែការសម្របសម្រួលបានកើតឡើងនៅក្នុងការសាងសង់។ pipelineយូរមុនពេលដែលអ្វីមួយឈានដល់ការត្រួតពិនិត្យផលិតកម្ម។ ភាពមើលឃើញពេញលេញតម្រូវឱ្យមានការគ្របដណ្តប់លើការផ្លាស់ប្តូរកូដប្រភព ស្រទាប់សាងសង់ និងស្រទាប់សិប្បនិម្មិត ពេលដំណើរការលើពពក និងសកម្មភាព API។
១៧. ផ្តល់អាទិភាពដល់ការរកឃើញតាមលទ្ធភាពនៃការកេងប្រវ័ញ្ច មិនមែនគ្រាន់តែភាពធ្ងន់ធ្ងរនោះទេ
ម៉ាស៊ីនស្កេនដែលផលិតការរកឃើញចំនួន ៥០០ ក្នុងមួយសប្តាហ៍ បណ្តុះបណ្តាលក្រុមនានាឱ្យមិនអើពើនឹងការរកឃើញ រួមទាំងការរកឃើញសំខាន់ៗផងដែរ។ ការផ្តល់អាទិភាពគឺជាអ្វីដែលបំបែកកម្មវិធីសុវត្ថិភាពដែលដំណើរការពីកម្មវិធីដែលមាននៅលើក្រដាស។
ការកំណត់អាទិភាពប្រកបដោយប្រសិទ្ធភាពរួមបញ្ចូលគ្នា៖ លទ្ធភាពទៅដល់ (តើកូដងាយរងគ្រោះត្រូវបានប្រតិបត្តិមែនទេ?) ការប៉ះពាល់ (តើសេវាកម្មនេះប្រឈមមុខនឹងអ៊ីនធឺណិតមែនទេ?) ពិន្ទុ EPSS (ប្រូបាប៊ីលីតេនៃការកេងប្រវ័ញ្ចសកម្ម) និងបរិបទអាជីវកម្ម (ផលិតកម្មទល់នឹងបរិស្ថានអភិវឌ្ឍន៍)។
Xygeni ASPM នាំមកនូវការរកឃើញទាំងអស់ SAST, SCA, IaC, អាថ៌កំបាំង និង pipeline security ទៅជាទិដ្ឋភាពហានិភ័យរួម ជាមួយនឹងការកំណត់អាទិភាពតាមបរិបទដែលប្រាប់ក្រុមរបស់អ្នកយ៉ាងច្បាស់អំពីអ្វីដែលត្រូវជួសជុលជាមុនសិន។ កក់ការបង្ហាញ →
១៨. បង្កើតមូលដ្ឋាននៃអាកប្បកិរិយា និងការជូនដំណឹងអំពីគម្លាត
ហត្ថលេខាដែលគេស្គាល់ថាអាក្រក់ចាប់យកការគំរាមកំហែងដែលគេស្គាល់។ ការរកឃើញភាពមិនប្រក្រតីនៃអាកប្បកិរិយាចាប់យកការគំរាមកំហែងដែលគេស្គាល់ ថ្ងៃសូន្យ គំរូការវាយប្រហារថ្មី និងការគំរាមកំហែងពីខាងក្នុង។
សម្រាប់របស់អ្នក CI/CD ជាពិសេសបរិស្ថាន បង្កើតមូលដ្ឋានសម្រាប់រយៈពេលសាងសង់ធម្មតា គំរូដំឡើងកញ្ចប់ធម្មតា គោលដៅបណ្តាញដែលរំពឹងទុកក្នុងអំឡុងពេលសាងសង់ និង standard លំនាំចូលប្រើអាថ៌កំបាំង។ គម្លាតពីខ្សែបន្ទាត់មូលដ្ឋានទាំងនេះគឺជាសញ្ញាព្រមានដំបូងបំផុតរបស់អ្នក ហើយជាស្រទាប់ដែលក្រុមភាគច្រើនមិនមានភាពមើលឃើញអ្វីទាំងអស់។
១៩. កំណត់សៀវភៅប្រតិបត្តិការសម្រាប់សេណារីយ៉ូឧប្បត្តិហេតុជាក់លាក់លើពពក
ផែនការឆ្លើយតបឧប្បត្តិហេតុទូទៅមិនគិតគូរពីសេណារីយ៉ូជាក់លាក់លើពពកទេ៖ កញ្ចប់ដែលរងការសម្របសម្រួលដែលបានដំឡើងរួចហើយនៅលើសេវាកម្មចំនួន ៤០ កម្មវិធីដំណើរការ CI ដែលមានព័ត៌មានសម្ងាត់ត្រូវបានលួចដោយស្គ្រីបដំឡើងជាមុនដែលមានគំនិតអាក្រក់ និងវត្ថុបុរាណសាងសង់ដែលអាចត្រូវបានកែប្រែក្នុងរយៈពេល ៧២ ម៉ោងចុងក្រោយ។
បង្កើតសៀវភៅដំណើរការជាក់លាក់សម្រាប់៖ ការពឹងផ្អែកដែលរងការគំរាមកំហែង pipeline ការលួចព័ត៌មានសម្ងាត់ ការបង្ហាញទិន្នន័យដែលបង្កឡើងដោយការកំណត់រចនាសម្ព័ន្ធមិនត្រឹមត្រូវ និងការចាក់បញ្ចូលដំណើរការការងារ CI ដែលមានគំនិតអាក្រក់។ សៀវភៅណែនាំនីមួយៗគួរតែកំណត់ថាអ្នកណាជាម្ចាស់ការឆ្លើយតប អ្វីដែលត្រូវបានលុបចោលភ្លាមៗ និងកោសល្យវិច្ច័យអ្វីខ្លះដែលត្រូវការដើម្បីកំណត់កាំនៃការផ្ទុះ។
២០. រត់ឧបករណ៍ហាត់ប្រាណលើតុcises, យ៉ាងហោចណាស់ពីរដងក្នុងមួយឆ្នាំ
សៀវភៅណែនាំដំណើរការដែលមិនទាន់ត្រូវបានសាកល្បងគឺជាសម្មតិកម្មមួយ។cisវាបង្ហាញពីចន្លោះប្រហោងនៅក្នុងផែនការឆ្លើយតបរបស់អ្នកមុនពេលអ្នកវាយប្រហារធ្វើ។ គោលដៅមិនមែនធ្វើតាមសៀវភៅណែនាំឲ្យបានល្អឥតខ្ចោះនោះទេ វាគឺដើម្បីស្វែងរកអ្វីដែលខ្វះខាត។
រត់យ៉ាងហោចណាស់ពីរលំហាត់cises ក្នុងមួយឆ្នាំ ដោយក្លែងធ្វើប្រភេទសេណារីយ៉ូផ្សេងៗគ្នា៖ ការសម្របសម្រួលខ្សែសង្វាក់ផ្គត់ផ្គង់ ការបំពានទិន្នន័យដែលបង្កឡើងដោយការកំណត់រចនាសម្ព័ន្ធមិនត្រឹមត្រូវ អ្នកដំណើរការ CI ដែលសម្របសម្រួល។ រួមបញ្ចូលក្រុមដែលនឹងឆ្លើយតបពិតប្រាកដ សន្តិសុខ DevOps និងអ្នកអភិវឌ្ឍន៍ដែលប្រចាំការ។
បញ្ជីត្រួតពិនិត្យគន្លឹះសុវត្ថិភាព Cloud៖ ឯកសារយោងរហ័ស
| ស្រទាប់ | ការគ្រប់គ្រងគន្លឹះ |
|---|---|
| អត្តសញ្ញាណ | MFA គ្រប់ទីកន្លែង ឯកសិទ្ធិតិចបំផុត លិខិតបញ្ជាក់រយៈពេលខ្លី ការចូលប្រើ JIT |
| ទិន្នន័យ | អ៊ិនគ្រីបនៅពេលសម្រាក និងកំពុងឆ្លងកាត់ ការស្កេនសម្ងាត់ និងការដកហូតដោយស្វ័យប្រវត្តិ ការចាត់ថ្នាក់ទិន្នន័យ |
| ហេដ្ឋារចនាសម្ព័ន្ធ | IaC ការស្កេនបើក commit, គោលការណ៍ជាកូដ, CIS ការអនុវត្តមូលដ្ឋាន ការបែងចែកបណ្តាញ |
| ខ្សែសង្វាក់ផ្គត់ផ្គង់ | SCA ជាមួយនឹងលទ្ធភាពទៅដល់ និងការរកឃើញមេរោគ CI/CD ការឡើងរឹង ការបង្កើតភាពសុចរិត និង SLSA |
| ការរកឃើញ | ការកត់ត្រាកណ្តាល ការកំណត់អាទិភាពដោយផ្អែកលើ EPSS ការរកឃើញភាពមិនប្រក្រតីនៃអាកប្បកិរិយា |
| ការឆ្លើយតប | សៀវភៅរត់ជាក់លាក់លើ Cloud, ការហាត់ប្រាណលើតុcises, ការវាយតម្លៃកាំផ្ទុះដែលបានកត់ត្រាទុក |
របៀបដែល Xygeni ជួយអនុវត្តគន្លឹះសុវត្ថិភាព Cloud នៅទូទាំង Full Stack
គន្លឹះសុវត្ថិភាពលើ Cloud ដំណើរការបានលុះត្រាតែក្រុមអាចអនុវត្តវាឱ្យជាប់លាប់ពេញមួយវដ្តជីវិតនៃការចែកចាយកម្មវិធី។ ឧបករណ៍ភាគច្រើនគ្របដណ្តប់លើស្រទាប់មួយ៖ ពេលដំណើរការ កូដ ភាពអាស្រ័យ អាថ៌កំបាំង ឬ CI/CDប៉ុន្តែការវាយប្រហារពិតប្រាកដផ្លាស់ទីឆ្លងកាត់ស្រទាប់ជាច្រើន។
Xygeni ភ្ជាប់ស្រទាប់ទាំងនេះជាមួយនឹងការរកឃើញ ការផ្តល់អាទិភាព និងការកែតម្រូវរួមបញ្ចូលគ្នាពីការជំរុញ git ដំបូងរហូតដល់ផលិតកម្ម។
| ស្រទាប់ | សមត្ថភាព Xygeni | អ្វីដែលវារារាំង |
|---|---|---|
| ប្រភពកូដ | SAST + ការកែលម្អ AI | ការចាក់បញ្ចូល ការបរាជ័យក្នុងការអនុញ្ញាត ការរចនាមិនមានសុវត្ថិភាព |
| ភាពអាស្រ័យ | SCA + ការរកឃើញមេរោគ + EPSS | ការសម្របសម្រួលខ្សែសង្វាក់ផ្គត់ផ្គង់ កញ្ចប់ងាយរងគ្រោះ |
| សម្ងាត់ | សុវត្ថិភាពសម្ងាត់ + ការលុបចោលដោយស្វ័យប្រវត្តិ | ការលាតត្រដាងព័ត៌មានសម្គាល់ខ្លួន ហានិភ័យនៃសញ្ញាសម្ងាត់រយៈពេលវែង |
| IaC កំណត់រចនាសម្ព័ន្ធ | IaC Security | ការកំណត់រចនាសម្ព័ន្ធមិនត្រឹមត្រូវមុនពេលពួកគេឈានដល់ការផលិត |
| CI/CD Pipeline | CI/CD សុវត្ថិភាព + ការរកឃើញភាពមិនប្រក្រតី | Pipeline ការចាក់, ការសម្របសម្រួលអ្នករត់ |
| សាងសង់វត្ថុបុរាណ | Build Security + SLSA provenance | វត្ថុបុរាណដែលត្រូវបានក្លែងបន្លំ ការចេញផ្សាយដែលមិនបានចុះហត្ថលេខា |
| ឥរិយាបថហានិភ័យ | ASPM | ទិដ្ឋភាពបង្រួបបង្រួម ការផ្តល់អាទិភាពឆ្លងស្រទាប់ |
លទ្ធផល៖ ក្រុមសន្តិសុខទទួលបានសញ្ញាជំនួសឱ្យសំឡេងរំខាន។ អ្នកអភិវឌ្ឍន៍ទទួលបានមតិកែលម្អនៅកន្លែងដែលពួកគេធ្វើការ មិនមែននៅក្នុងឧបករណ៍ដាច់ដោយឡែកដែលពួកគេមិនដែលបើកនោះទេ។ ហើយសុវត្ថិភាពក្លាយជាផ្នែកមួយនៃដំណើរការចែកចាយ មិនមែនជាច្រកទ្វារដែលធ្វើឱ្យវាយឺតនោះទេ។
គំនិតចុងក្រោយ
គន្លឹះសុវត្ថិភាព Cloud ងាយស្រួលរាយបញ្ជី ប៉ុន្តែពិបាកអនុវត្តជាង។ ក្រុមដែលកាត់បន្ថយហានិភ័យ Cloud ពិតប្រាកដមិនពឹងផ្អែកលើការពិនិត្យដោយដៃ ឧបករណ៍ដែលរាយប៉ាយ ឬការកំណត់អាទិភាពតែភាពធ្ងន់ធ្ងរនោះទេ។ ផ្ទុយទៅវិញ ពួកគេធ្វើស្វ័យប្រវត្តិកម្មការគ្រប់គ្រងសុវត្ថិភាពនៅខាងក្នុង។ pipelines, ផ្តល់អាទិភាពតាមលទ្ធភាពកេងប្រវ័ញ្ច និងចាត់ទុកខ្សែសង្វាក់ផ្គត់ផ្គង់កម្មវិធីទាំងមូលជាផ្នែកមួយនៃផ្ទៃវាយប្រហារលើពពក។
នោះមានន័យថា ធានាសុវត្ថិភាពលើសពីហេដ្ឋារចនាសម្ព័ន្ធពេលដំណើរការ។ វាមានន័យថា ការពារកូដប្រភព ភាពអាស្រ័យ អាថ៌កំបាំង IaC, CI/CD លំហូរការងារ ការបង្កើតវត្ថុបុរាណ និងឥរិយាបថហានិភ័យនៃកម្មវិធីរួមគ្នា។
ប្រសិនបើឧបករណ៍បច្ចុប្បន្នរបស់អ្នកទុកចន្លោះរវាងស្រទាប់ទាំងនោះ Xygeni ជួយបិទពួកវាជាមួយនឹងការរកឃើញ ការកំណត់អាទិភាព និងការកែតម្រូវរួមបញ្ចូលគ្នានៅទូទាំងផ្លូវពេញលេញពីកូដទៅពពក។
???? ចាប់ផ្តើមការសាកល្បងឥតគិតថ្លៃរយៈពេល ៧ ថ្ងៃរបស់អ្នក មិនត្រូវការកាតឥណទានទេ លទ្ធផលស្កេនក្នុងរយៈពេលប៉ុន្មាននាទី
???? កក់ការបង្ហាញ ហើយមើលពីរបៀបដែល Xygeni ភ្ជាប់ទៅពពកជាក់លាក់របស់អ្នក និង pipeline ការដំឡើង
អំពីអ្នកនិពន្ធ
សហស្ថាបនិក និង CTO
Fatima Said មានជំនាញខាងខ្លឹមសារដែលផ្តោតលើអ្នកអភិវឌ្ឍន៍ជាចម្បងសម្រាប់ AppSec, DevSecOps និង software supply chain securityនាងប្រែក្លាយសញ្ញាសុវត្ថិភាពស្មុគស្មាញទៅជាការណែនាំច្បាស់លាស់ និងអាចអនុវត្តបាន ដែលជួយក្រុមនានាឱ្យកំណត់អាទិភាពបានលឿនជាងមុន កាត់បន្ថយសំឡេងរំខាន និងបញ្ជូនលេខកូដដែលមានសុវត្ថិភាពជាងមុន។




