Уплыў
Скампраметаваныя API дазваляюць зламыснікам абыходзіць карыстальніцкія інтэрфейсы і ўзаемадзейнічаць непасрэдна з бэкэнд-базамі дадзеных і службамі [S1]. Гэта можа прывесці да несанкцыянаванага крадзяжу даных, захопу ўліковага запісу з дапамогай грубай сілы або недаступнасці сэрвісу з-за вычарпання рэсурсаў [S3][S5].
Першапрычына
Асноўная першапрычына - уздзеянне ўнутранай логікі праз канчатковыя кропкі, якія не маюць дастатковай праверкі і абароны [S1]. Распрацоўшчыкі часта мяркуюць, што калі функцыя не бачная ў карыстальніцкім інтэрфейсе, яна бяспечная, што прыводзіць да парушэнняў кантролю доступу [S2] і дазвольных палітык CORS, якія давяраюць занадта вялікай колькасці крыніц [S4].
Асноўны кантрольны спіс бяспекі API
- Захоўваць строгі кантроль доступу: кожная канчатковая кропка павінна правяраць, што запытальнік мае адпаведныя дазволы для канкрэтнага рэсурсу, да якога звяртаюцца [S2].
- Укараніць абмежаванне хуткасці: Абараніце ад аўтаматызаваных злоўжыванняў і DoS-атак, абмяжоўваючы колькасць запытаў, якія кліент можа зрабіць на працягу пэўнага перыяду часу [S3].
- Правільна наладзьце CORS: пазбягайце выкарыстання падстаноўных знакаў (
*) для аўтэнтыфікаваных канчатковых кропак. Яўна вызначце дазволеныя крыніцы для прадухілення ўцечкі даных паміж сайтамі [S4]. - Аўдыт бачнасці канчатковых кропак: рэгулярна сканіруйце «схаваныя» або незадакументаваныя канчатковыя кропкі, якія могуць раскрыць канфідэнцыйную функцыянальнасць [S1].
Як FixVibe правярае гэта
FixVibe цяпер ахоплівае гэты кантрольны спіс праз некалькі жывых праверак. Зонды з актыўным строем правяраюць абмежаванне хуткасці канчатковых кропак аўтэнтыфікацыі, CORS, CSRF, ін'екцыю SQL, недахопы патоку аўтэнтыфікацыі і іншыя праблемы, звязаныя з API, толькі пасля праверкі. Пасіўныя праверкі правяраюць загалоўкі бяспекі, публічную дакументацыю API і ўздзеянне OpenAPI, а таксама сакрэты ў кліенцкіх пакетах. Сканіраванне РЭПО дадае аналіз рызыкі на ўзроўні кода на прадмет небяспечнага CORS, неапрацаванай інтэрпаляцыі SQL, слабых сакрэтаў JWT, выкарыстання JWT толькі для дэкадавання, прабелаў у подпісах вэб-хука і праблем з залежнасцямі.
