Mae APIau yn feinwe cysylltiol meddalwedd fodern, gan bweru apiau symudol, microservices, ac integreiddiadau trydydd parti. Oherwydd eu bod yn datgelu rhesymeg cymhwysiad a data yn uniongyrchol, mae APIau wedi dod yn darged ffefrynnol i ymosodwyr. Diogelwch API yw'r ddisgyblaeth o ddylunio, profi, a diffyn yr rhyngwynebau hyn yn erbyn camddefnyddio.
Beth sy'n Gwneud APIau yn Wahanol
Nid yw APIau, yn wahanol i dudalennau gwe traddodiadol, yn cyfathrebu trwy fformat data strwythuredig fel JSON neu XML, yn aml gyda goruchwyliaeth ddynol fechan. Mae hyn yn golygu:
- Arwynebedd ymosod uwch fesul endpoint — pob llwybr API yw ei hun fini-gymhwysiad gyda'i awdurdodiad ei hun, dilysu, a rhesymeg fusnes.
- Ymddiriedaeth peiriant-i-beiriant — yn aml mae gwasanaethau'n tybio bod cais gyda tocyn dilys yn ddilys, a dim ond os yw'n ddilys, gan ddefnyddio ymosodwyr hyn trwy ddwyn tocyn neu ail-chwarae.
- Newid cyflym — mae APIau'n esblygu'n gyflym, ac mae endpoints "cysgod" heb eu dogfennu neu ddilëedig yn aml yn llithro trwy adolygiadau diogelwch.
Categoriau Ninnwe Cyffredin
Mae OWASP API Security Top 10 yn dal y materion mwyaf cyffredin a welir mewn systemau cynhyrchiant:
- Awdurdodiad Lefel Gwrthrych Wedi'i Dorri (BOLA) — gall defnyddiwr gael mynediad at ddata defnyddiwr arall trwy newid ID yn y cais yn unig, oherwydd bod y gweinydd yn methu â gwirio perchenogaeth.
- Dilysu Wedi'i Dorri — trin tocyn wan, dynodwyr sesiwn rhagweladwy, neu gyfradd gyfyngiad ar goll ar endpoints mewngofnodi.
- Datgelu Data Gormodol — APIau'n dychwelyd gwrthrychau cronfa ddata llawn ac yn dibynnu ar y cleient i hidlo meysydd sensitif.
- Diffyg Adnoddau a Chyfyngiad Cyfraddau — dim tirlunio yn caniatáu i ymosodwyr orfodi-drais manylion mynediad neu ddihysbyddu adnoddau cefn.
- Awdurdodiad Lefel Swyddogaeth Wedi'i Dorri — defnyddwyr rheolaidd yn cyrraedd endpoints dim ond i weinyddion oherwydd bod sheciau rôl ar goll neu'n anghyson.
- Aseiniad Torfol — derbyn meysydd a gyflenwir gan gleient (fel
isAdmin) yn uniongyrchol i fodelau cronfa ddata heb hidlo. - Camdrefniant Diogelwch — negeseuon gwall manwl, endpoints dadgilo datguddio, neu bennawd diogelwch ar goll.
- Chwistrellio — mewnbwn heb ei ddiheintio yn cyrraedd SQL, NoSQL, neu ddehonglwyr gorchymyn trwy baramedrau API.
Hanfodion Dilysu a Hawdurdodiad
Mae Dilysu yn cadarnhau pwy sy'n galw'r API; mae hawdurdodiad yn cadarnhau beth y maent yn cael ei wneud. Mae diogelwch API cryf yn ei gwneud yn ofynnol bod y ddwy haen i'w gorfodi'n annibynnol, ar bob cais:
- Defnyddiwch brotocolau safonol y diwydiant fel OAuth 2.0 neu OpenID Connect yn hytrach na chynlluniau tocyn cyfaddas.
- Dilyswch JWTs yn iawn — gwiriwch lofnod, deiliad, cyhoeddwr, a hawliau cynulleidfa; peidiwch byth â thrystio tocyn heb ei lofnodi neu
alg: none. - Gorfodi sheciau lefel gwrthrych ochr y gweinydd: rhaid i bob cais sy'n cyfeirio at ID adnodd wirio bod yr alwedwyr mewn gwirionedd yn berchen nac yn hawliau i'r adnodd hwnnw.
- Cymhwyso'r egwyddor o'r prif fraint i allweddi API a chyfrifon gwasanaeth, eu sgôp yn gul yn hytrach na chaniatáu mynediad eang.
Dilysu Mewnbwn a Rheolaeth Allbwn
Triniwch bob paramedr API — gan gynnwys pennawd, llinyn ymholi, a meysydd JSON nythu — fel mewnbwn anymddiriedol:
- Dilyswch mathau data, hyd, a fformatau gan ddefnyddio dilysu sgema (e.e., JSON Schema neu ddilyswyr OpenAPI-seiliedig).
- Defnyddiwch setiau caniatáu ar gyfer meysydd disgwyliedig yn ystod dadgodio i atal ymosodiadau aseiniad torfol.
- Dychwelwch dim ond y meysydd y mae cleient yn ei angen yn gyfreithlon; osgowch dympio gwrthrychau mewnol cyflawn mewn ymatebion.
- Safonoli ymatebion gwall er mwyn na phan'd ddatgelu olion pentwr, llwybr mewnol, na manylion cronfa ddata.
Cyfyngiad Cyfraddau, Monitro, a Cofnodi
Hyd yn oed APIau sydd wedi'u dilysu'n dda angen amddiffyniad yn erbyn patrymau camddefnyddio:
- Gweithredu cyfyngiad cyfraddau fesul defnyddiwr a fesul IP i bylu ymgais borfwylio a sgrapbywio.
- Digwyddiadau dilysu logi, methiannau hawdurdodiad, a phatrymau mynediad anoddefgar ar gyfer dadansoddiad diweddarach.
- Monitro am anomalïau fel codiad sydyn mewn ceisiadau i endpoints sensitif neu fynediad o ddaearyddiaethau annisgwyl.
- Cynhaliaeth ystodlen API union — ni allwch chi diogelwch yr hyn na wyddoch ei fod yn bodoli, felly traciwch ac ymddeol endpoints tywyll neu depreciated.
Dulliau Profi Ymarferol
Diogelwch APIau yw'r broses parhaus, nid archwiliad un-tro:
- Ymgorffori offer penodol API (fel casgliad Postman wedi'i baru â sganiwr diogelwch) i mewn i piplenni CI/CD.
- Cymhwyso profi llaw ar gyfer diffygion hawdurdodiad, gan nad oes sganiwr awtomatig yn aml yn colli BOLA a materion rhesymeg fusnes.
- Cadw dogfennaeth API (OpenAPI/Swagger specs) wedi'i gydamseinio â gweithrediad gwirioneddol i osgoi mannau dall yn ystod profi.
- Adolygu integreiddiadau API trydydd parti gyda'r un gofal â'ch cod eich hun, oherwydd gall API partner wedi'i droseddu dod yn fector ymosod.
Meddyliau Cau
Mae diogelwch API yn cymysgu egwyddorion diogelwch cymhwysiad gwe clasurol â heriau penodol cyfathrebu peiriant-i-beiriant ar raddfa. Cael hawdurdodiad yn iawn, dilysu pob mewnbwn, a chynnal gweledigaeth i'ch arwynebedd API yw sail amddiffyniad caled.
Arolygu segmentau Korra Studio cysylltiedig ar ddiogelwch cymhwysiad gwe a dyluniad dilysu i adeiladu dealltwriaeth ddyfnach, ymarferol o'r cysyniadau hyn.