Kliník A og Kliník B deila einum kóðagrunni, tveimur undirlénum og blöndu af gestum frá skrifstofunni og í gegnum VPN. Netkerfisteymi hafa tilhneigingu til að stilla inngangana tvo hvor í sínu lagi, og það er í lagi, svo framarlega sem forritið gerir það ekki. Prófanirnar hér að neðan eiga heima í forritinu og ættu að hegða sér eins óháð því hvaða hurð beiðnin notaði.

Í fyrsta lagi: hýsilnafnið nefnir aðeins leigjanda

Leystu umbeðið hýsilnafn gegn vörpun sem stjórnandinn heldur við, og hafnaðu öllu óþekktu. Notaðu staðfesta hýsilgildi rammans í stað hráa haussins, svo fölsuð Host geti ekki sprautað inn leitarleiti. Árangursrík samsvörun segir kóðanum hvaða leigjandastillingu og vörumerkingu eigi að hlaða. Hún segir ekkert um hvort kallandinn megi sjá gögn þess leigjanda. Haltu þeirri seinni spurningu í sérstakri aðgerð með sérstaki inntaki.

Sameiginleg hjálparaðgerð sem skilar bæði samhengi og heimild úr einni hýsilnafsleit er byrjun gallans.

Í öðru lagi: aðild kemur frá lotunni

Finndu virka aðild auðkennda notandans og berðu þær saman við leigjandann úr fyrstu prófuninni. Notandi sem tilheyrir báðum kliníkum má skipta, en skiptingin á að vera skýr aðgerð sem skráð er í samhengi beiðninnar, ekki ályktun úr URL. Notanda sem tilheyrir einni kliník og biður um hina er hafnað, þar á meðal fyrir niðurhal og API-köll.

Prófaðu neikvæða tilfellið með því að breyta færslukenni og leigjandafæribreytu. Ef önnur breytingin skilar gögnum er umfangið lesið úr beiðninni frekar en úr staðfestri aðild.

Umfang vafrakaka og eins innskráningar ákvarða hvar hægt er að kynna reikning. Þau ákvarða ekki hvað sá reikningur má lesa.

Í þriðja lagi: netið sannar ekkert um manneskjuna

VPN-hlið auðkennir göng, og opinber leyfislisti auðkennir fangabil. Hvorugt auðkennir manneskju. NAT þjappar mörgum notendum saman í eitt upprunafang, og skrifstofubil gerir það sama fyrir alla í byggingunni. Meðhöndlaðu hvort tveggja sem flutningsstaðreyndir og haltu heimildum í forritinu, eða í samþættingu sem fullyrðir sjálfsmynd með skýrum hætti og er endurskoðuð sem slík.

DNS er þriðja flutningsstaðreyndin. Einkasvar krefst einkaleiðar, og opinber framendi krefst studdrar upprunaleiðar. Ekkert þeirra ber heimild.

Ein setning á vegginn: netið ákvarðar hvernig beiðni berst, og forritið ákvarðar hvað hún má lesa.

Í fjórða lagi: keyrðu fylkið á báðum inngöngum

Notaðu stýrða reikninga til að prófa A hjá A, B hjá B, A hjá B, óþekkt hýsilnafn og auðkenndan reikning án aðildar. Sá fjórði og sá fimmti ættu að mistakast lokað og aldrei falla aftur í sjálfgefinn leigjanda. Keyrðu sama fylki líka í gegnum VPN-innganginn, með einni lotukrukkunni fyrir hvern reikning:

curl -s -o /dev/null -w '%{http_code}' -b jar.txt https://clinic-b.example.com/records/42
curl -s -o /dev/null -w '%{http_code}' -b jar.txt https://clinic-a.example.com/records/42

Breyttu svo færslu á leyfislistanum og keyrðu aftur. Niðurstaða sem færist þýðir að netstýring er að taka heimildarákvörðun.

Endurtaktu fylkið eftir hverja breytingu á framendanum, því önnur kóðaleið sem sleppir prófuninni er algengasta leiðin sem þessi mörk veðrast. Vænt niðurstaða er leiðinleg: hver inngangur gefur sömu svör.

Tengdir greinar