Ҳар pull request ки нуқтаи ниҳоиро илова мекунад ё тағйир медиҳад, сатҳи ҳамлаи API-и шуморо тағйир медиҳад. Аксари абзорҳои амниятии API то он даме, ки он нуқтаи ниҳоиро фаъол созанд ва аллакай трафикро қабул кунанд, пай намебаранд. То он вақт, ислоҳ дигар тағироти яксатра дар баррасии код нест, яъне сӯҳбати вокуниш ба ҳодиса аст.
Амнияти API амалияи ёфтан ва пӯшидани хатарҳо дар он аст, ки чӣ гуна барнома нуқтаҳои ниҳоии худро ошкор мекунад: кӣ метавонад ба онҳо занг занад, кадом маълумотро бармегардонад ва оё онҳо он чизеро, ки дар ҳуҷҷатҳо гуфта шудааст, иҷро мекунанд.
Аксари абзорҳое, ки барои ин мушкилот сохта шудаанд, API-ро дар вақти иҷро, аз берун, ба мисли ҳамлагар, месанҷанд. Ин равиш кор мекунад, аммо он танҳо пас аз ҷойгиркунии API кор мекунад. Ксигенӣ роҳи қаблиро интихоб мекунад: он рамзи сарчашма ва мушаххасоти API-и шуморо пеш аз он ки як дархост ба нуқтаи ниҳоӣ расад, мехонад.
Чор роҳи санҷиши API ва ҷавобҳои ҳар яки онҳо
Аксари барномаҳои калонсол беш аз яке аз инҳоро иҷро мекунанд:
- Санҷиши статикӣ рамзи сарчашма ва мушаххасоти API-ро пеш аз ҷойгиркунӣ таҳлил мекунад. Он ба саволи "мо нав чиро фош кардем?" ҷавоб медиҳад. Ин равишест, ки ин мақола ба он тамаркуз мекунад.
- Санҷиши динамикӣ (DAST) трафики воқеиро ба API-и иҷрошаванда мефиристад ва мушоҳида мекунад, ки чӣ гуна он посух медиҳад. Он ба "чӣ дар айни замон воқеан дастрас ва истифодашаванда аст?" ҷавоб медиҳад.
- Хӯриш вуруди нодуруст ё ғайричашмдоштро ба нуқтаҳои ниҳоӣ барои садамаҳои сатҳӣ ва нокомиҳои канори система мепартояд. Он ба "кадом вайронкуниҳо дар вақти вуруд мо интизор набудем?" ҷавоб медиҳад.
- Санҷиши воридшавии дастӣ Барои ёфтани камбудиҳои мантиқӣ, ки абзорҳои автоматӣ аз даст медиҳанд, доварии инсонӣ илова мекунад. Он ба "ҳамлагари оқил чӣ чизро бо ҳам мепайвандад?" ҷавоб медиҳад.
Ҳеҷ яке аз инҳо дигаронро иваз намекунад. Онҳо ба саволҳои гуногун дар нуқтаҳои гуногуни давраи ҳаёт ҷавоб медиҳанд ва фосилаи аксари барномаҳо дар аввал аст.
Чаро аксари абзорҳои амниятии API хатарро хеле дер мебинанд
Санҷиши амнияти API-и Runtime трафикро ба барномаи зинда мефиристад ва мушоҳида мекунад, ки чӣ гуна он вокуниш нишон медиҳад. Ин як қабати қонунӣ ва зарурӣ аст. Он инчунин, аз рӯи сохтор, як нишондиҳандаи ақибмонда аст: нуқтаи ниҳоӣ бояд вуҷуд дошта бошад, ҷойгир карда шавад ва дастрас бошад, то он даме ки сканери Runtime дар бораи он чизе бигӯяд. Ҳар чизе, ки он пайдо мекунад, аллакай барои муддати тӯлонӣ фош карда шуда буд, новобаста аз он ки сканкунӣ чӣ қадар вақтро сарф кард.
Дар зери ин мушкили вақт як фосилаи дуюм вуҷуд дорад. Асбобҳои иҷро вақти кор танҳо он чизеро, ки медонанд, санҷида метавонанд. Агар нуқтаи ниҳоӣ ҳеҷ гоҳ сабт нашуда бошад ё мушаххасоти OpenAPI ҳангоми фиристодани масири нав кӯҳна шуда бошад, сканери иҷро вақти кор ҳеҷ роҳе барои фаҳмидани он ки он дар он ҷост, надорад. Он харитаро месанҷад, на қаламравро.
Санҷиши амниятии API-и статикӣ ҳарду фосиларо бо интиқол додани чек ба ҷое, ки нуқтаи ниҳоӣ муайян карда мешавад, пеш аз ҷойгиркунӣ, пӯшонад. pull request ки нуқтаи ниҳоиро муаррифӣ мекунад, ин аст pull request ки хатари онро ошкор мекунад.
Амнияти API-и статикӣ дар асл чӣ маъно дорад
Xygeni инвентаризатсияи API-и шуморо аз ду манбаъ месозад: рамзи сарчашмаи барномаи шумо ва мушаххасоти API-и шумо, аз ҷумла OpenAPI ва Swagger.
Феҳристи танҳо махсус нуқтаҳои ниҳоиро нишон медиҳад, ки касе бояд сабт кунад. Феҳристи танҳо рамзӣ нишон медиҳад, ки чӣ вуҷуд дорад, аммо на ҳатман чӣ гуна истифода бурдани он пешбинӣ шудааст. Хондани ҳарду ба шумо тасвири пурра медиҳад: нуқтаҳои ниҳоие, ки дастаҳои шумо сабт кардаанд ва онҳое, ки ҳеҷ кас нанавиштааст.
Ин инвентаризатсия асоси ҳама чизи дигар аст:
- Шумораи умумии API-ҳои кашфшуда ва дороиҳои зери хатар нисбат ба сатҳи асосӣ чен карда шудаанд
- Нуқтаҳои ниҳоӣ аз рӯи усули HTTP тақсим карда шудаанд
- Масъалаҳо аз рӯи хизматрасонӣ гурӯҳбандӣ шудаанд
- Ҳар як нуқтаи ниҳоӣ бо усул, роҳ, хидмат, модул, ҳолати аутентификатсия ва холҳои хатари худ
Роҳбарони муҳандисии шумо шакли сатҳи API-и шуморо бе кушодани як чипта мебинанд.
Ҳар як нуқтаи ниҳоии Xygeni бо усул, ҳолати аутентификатсия ва холҳои хатар, ки аз рамз ва мушаххасот якҷоя сохта шудаанд, ёфт.
Production note Панели Triage-и AI-ро аз ҳама гуна скриншоти амнияти API буред.
Ба 10 беҳтарини амнияти API OWASP муқоиса карда шудааст
Натиҷаҳо чаҳорчӯбаеро, ки гурӯҳҳои амниятии шумо ва аудиторҳои шумо аллакай истифода мебаранд, инъикос мекунанд. Xygeni хатарро дар саросари амнияти API OWASP муайян мекунад. 10-тои беҳтарин (2023):
| OWASP | хатар | Дар амал чӣ маъно дорад |
|---|---|---|
API1 | Авторизатсияи сатҳи объекти шикаста | Нуқтаи ниҳоӣ маълумоти ба корбар ё иҷорагири дигар тааллуқдоштаро бармегардонад ё тағйир медиҳад |
API2 | Нуқтаҳои ниҳоии тасдиқнашуда | Масир бе ягон тасдиқ дастрас аст |
API3 | Фошшавии аз ҳад зиёди маълумот | Ҷавоб майдонҳои бештареро аз он чизе, ки зангзананда лозим аст ё бояд бубинад, бармегардонад |
API3 | Супориши оммавӣ | Нуқтаи ниҳоӣ майдонҳоеро қабул ва татбиқ мекунад, ки ҳеҷ гоҳ барои қабул карданашон пешбинӣ нашуда буд |
API3 / API10 | Маълумоти ҳассос дар посухҳо | PII, PCI ё PHI аз нуқтаи ниҳоӣ ба муштарӣ мерасад, ки набояд онро фиристад |
API4 | Маҳдудиятҳои нархномаҳои гумшуда | Нуқтаи ниҳоӣ аз сӯиистифода ё зангҳои бераҳмона муҳофизат надорад |
API5 | Иҷозати сатҳи функсияи вайроншуда | Нуқтаи ниҳоӣ амали имтиёзнокро бидуни санҷиши иҷозати зангзананда иҷро мекунад |
API7 | SSRF | API-ро метавон фиреб дод, то аз номи ҳамлагар дархостҳо пешниҳод кунад |
API8 | Танзимоти нодурусти JWT | Тасдиқи токен, имзо ё мӯҳлати анҷоми он нодуруст танзим шудааст |
API8 | Конфигуратсияи нодурусти CORS | Қоидаҳои байни пайдоишҳо ба қадри кофӣ иҷозатдиҳандаанд, ки истифодашаванда бошанд. |
API9 | Нуқтаҳои ниҳоии зомби ва ятим | Масирҳои кӯҳнашуда ё фаромӯшшуда, ки то ҳол дастрасанд ва масирҳое, ки касе ба онҳо тааллуқ надорад |
Як категория қасдан вуҷуд надорад. API6, Дастрасии номаҳдуд ба ҷараёнҳои ҳассоси тиҷорат, фаҳмидани он чизеро талаб мекунад, ки раванди тиҷорат бояд иҷозат диҳад ва ҳеҷ як таҳлилгари статикӣ инро боэътимод муайян намекунад. Ҳар як фурӯшандае, ки баръакс иддао мекунад, ба шумо қуттии қайдкуниро мефурӯшад. Ин категория бо моделсозии таҳдид ва озмоишгарони воридшавии шумо боқӣ мемонад.
На ҳар як хулоса яксон аст: ҳассосияти маълумот ва омезиши заҳролуд
Рӯйхати якхелаи бозёфтҳо нуқтаи ниҳоии санҷиши саломатии тасдиқнашуда ва нуқтаи ниҳоии тасдиқнашудаеро, ки сабтҳои муштариёнро бармегардонад, якхела баррасӣ мекунад. Инҳо мушкили якхела нестанд ва модели афзалиятдиҳӣ, ки онҳоро баҳо медиҳад, ба таври якхела ба дастаҳои шумо таълим медиҳад, ки рӯйхатро нодида гиранд.
Xygeni маълумотеро, ки ҳар як нуқтаи ниҳоӣ коркард мекунад, тасниф мекунад ва PII, PCI ва PHI-ро дар параметрҳои дархост ва дар посухҳо қайд мекунад ва онҳоро бо ҳолати аутентификатсияи нуқтаи ниҳоӣ ҷуфт мекунад.
Он инчунин бозёфтҳоеро, ки дар як нуқтаи ниҳоӣ қарор мегиранд ва ҳангоми мураккаб шуданашон шиддатро зиёд мекунанд, бо ҳам алоқаманд мекунад. Ихроҷи PII дар посух худ як бозёфти ҷиддӣ аст. Ҳамон ихроҷ дар нуқтаи ниҳоӣ, ки аутентификатсияро талаб намекунад, хеле муҳим аст ва платформа онро ба ҳамин тарз баҳо медиҳад, ба ҷои он ки пайвастшавиро барои касе дастӣ пай барад.
Нуқтаҳои ниҳоии зомби ва ятим: Тағйирот байни рамз ва мушаххасот
Азбаски Xygeni рамзи шумо ва мушаххасоти API-и шуморо паҳлӯ ба паҳлӯ мехонад, он мебинад, ки онҳо дар куҷо бо ҳам мувофиқат намекунанд. Ин тафовут ҳамчун се намунаи шинохташаванда зоҳир мешавад:
- Нуқтаҳои ниҳоии беҳуҷҷат. Онҳо дар рамз зиндагӣ мекунанд ва ҳеҷ гоҳ ба мушаххасот илова карда нашудаанд.
- Нуқтаҳои ниҳоии зомби. Онҳо ҳамчун кӯҳнашуда ё аз истифода баромада қайд карда шудаанд ва то ҳол дастрасанд.
- Нуқтаҳои ниҳоии ятим. Дар дастаи кунунӣ касе онҳоро надорад.
Ҳеҷ яке аз инҳо дар инвентаризатсияи танҳо махсусият мавҷуд нест, зеро махсусият маҳз ҳамон чизест, ки онҳоро намедиҳад.
Далелҳое, ки шумо метавонед бар онҳо амал кунед, на чипта барои тафтишот
Ҳар як ёфта ба коркардкунандаи масъули дақиқ ишора мекунад: файл, синф, усул ва сатри мушаххасе, ки камбудиро ба вуҷуд овардааст ва рамзи вайронкунанда дар паҳлӯи он нишон дода шудааст. Ҳар яки онҳо инчунин дараҷаи вазнинии худ, категорияи OWASP API Security Top 10, CWE, ҳолати аутентификатсияи нуқтаи ниҳоӣ ва таснифи ҳассосияти маълумоти дахлдорро дар бар мегирад.
Бозёфти номгузории нуқтаи ниҳоӣ таҳиягарро водор мекунад, ки пеш аз он ки онҳо ҳатто ба ислоҳи чизе шурӯъ кунанд, пойгоҳи рамзро ҷустуҷӯ кунад. Бозёфти номгузории сатр онҳоро фавран ба ислоҳ мегузорад.
Натиҷаҳо ҳамчун JSON, CSV, Markdown ва SARIF 2.1.0 содир карда мешаванд, аз ин рӯ онҳо дар ... ҷойгир мешаванд.ools дастаҳои шумо аллакай кор мекунанд.
Коркардкунанда, хат ва рамзе, ки фошкуниро муаррифӣ кард. Чиптае барои тафтиш нест.
Чаро ин дар як платформа зиндагӣ мекунад, на дар консоли дигар
Xygeni дар баробари API Security кор мекунад SAST, SCA, Амнияти махфӣ, IaC ва ДАСТ дар дохили як платформаи ягона, ки тавассути он алоқаманд аст ASPM, ба ҷои интиқоли он ҳамчун асбоби алоҳида бо асбоби худ login ва рӯйхати қафомондаи худ.
Ин муҳим аст, зеро бозёфтҳои статикӣ ва бозёфтҳои вақти иҷро ба саволҳои гуногун дар бораи як нуқтаи ниҳоӣ ҷавоб медиҳанд ва онҳо якҷоя нисбат ба алоҳида муфидтаранд. Static ба шумо мегӯяд, ки нуқтаи ниҳоӣ пеш аз фиристодан хатарнок аст. DAST тасдиқ мекунад, ки чӣ воқеан дастрас ва истифодашаванда аст, пас аз кор кардан.
Тақсим кардани он ба ду консол ва хатари ҳамбаста ба ду рӯйхати ба таъхир афтода бо ҳам алоқаманд табдил меёбад. Ҳеҷ кас онҳоро бо ҳам мувофиқ намекунад ва нуқтаи ниҳоӣ, ки ҳам ҳуҷҷатгузорӣ ва ҳам тасдиқнашуда аст, дар ҳеҷ кадоме аз навбатҳо намеистад.
Сатҳи воқеии ҳамлаи API-и худро бубинед. Амнияти API ҳамчун дастрас аст Enterprise илова ба платформаи Xygeni ва сканкунӣ бар зидди анборҳои худи шумо дар дохили инфрасохтори худи шумо кор мекунад.
Саволҳои зиёд такрормешуда
Оё он метавонад бигӯяд, ки кадом нуқтаҳои ниҳоӣ маълумоти махфиро коркард мекунанд?
Бале. Xygeni PII, PCI ва PHI-ро дар параметрҳо ва посухҳои нуқтаҳои ниҳоӣ қайд мекунад ва ин таснифотро барои рейтинги натиҷаҳо аз рӯи таъсири воқеӣ истифода мебарад.
Оё он метавонад дар ҳар як pull request?
Бале. Сканкунии афзоянда танҳо нуқтаҳои ниҳоии тағйирёфтаро таҳлил мекунад ва манифести тавлидшуда метавонад сканкунии минбаъдаи DAST-ро ба ҳамон нуқтаҳои ниҳоии дигар равона кунад, аз ин рӯ, санҷиши статикӣ ва вақти иҷро бо он чизе, ки воқеан тағир ёфтааст, ҳамоҳанг боқӣ мемонад.
Оё рамзи ман муҳити маро тарк мекунад?
Не. Сканҳо дар инфрасохтори худи шумо кор мекунанд. Танҳо натиҷаҳо боргузорӣ мешаванд, ҳангоми интиқол ва ҳангоми истироҳат ҳифз карда мешаванд.
Чӣ тавр ман метавонам амнияти API-ро ба даст орам?
Амнияти API ҳамчун дастрас аст Enterprise илова. PoC-ро дархост кунед ва он бо шумо фаро гирифта мешавад.





