PaaS-környezetek védelme

Ez a cikk az alábbi információkhoz nyújt segítséget:

  • Az alkalmazások felhőbeli üzemeltetésének biztonsági előnyeinek megismerése
  • A szolgáltatásként nyújtott platform (PaaS) és más felhőszolgáltatási modellek biztonsági előnyeinek értékelése
  • A biztonság fókuszának módosítása hálózatközpontúról identitásközpontú szegélyhálózati biztonsági megközelítésre
  • Általános PaaS-biztonsági ajánlott eljárásokra vonatkozó javaslatok implementálása

Az Azure-beli biztonságos alkalmazások fejlesztése általános útmutató a szoftverfejlesztési életciklus minden fázisában a felhőbeli alkalmazások fejlesztésekor megfontolandó biztonsági kérdésekhez és vezérlőkhöz.

Felhőbiztonsági előnyök

Fontos megérteni az Ön és a Microsoft közötti felelősségmegosztást. A helyszínen a teljes verem a tulajdonosa, de amikor a felhőbe lép, bizonyos felelősségi körök átkerülnek a Microsoft.

A felhőben való használata biztonsági előnyökkel jár. Helyszíni környezetben a szervezetek valószínűleg nem megfelelő felelősségekkel és korlátozott erőforrásokkal rendelkeznek a biztonságba való befektetéshez, ami olyan környezetet hoz létre, amelyben a támadók minden rétegben kihasználhatják a biztonsági réseket.

A szervezetek a felhőalapú biztonsági képességek és a felhőintelligencia használatával javíthatják fenyegetésészlelési és reagálási idejüket. Ha a felelősségeket a felhőszolgáltatóra helyezi át, a szervezetek nagyobb biztonsági lefedettséget érhetnek el, ami lehetővé teszi számukra, hogy a biztonsági erőforrásokat és a költségvetést más üzleti prioritásokra csoportosítsák át.

A PaaS felhőszolgáltatási modell biztonsági előnyei

Tekintsük át az Azure PaaS-környezet és a helyszíni környezet biztonsági előnyeit.

A PaaS biztonsági előnyei

A verem alján kezdődően a fizikai infrastruktúra Microsoft csökkenti a gyakori kockázatokat és felelősségeket. Mivel a Microsoft felhőt a Microsoft folyamatosan figyeli, nehéz támadni. A támadóknak nincs értelme célként követni a Microsoft felhőt. Hacsak a támadó nem rendelkezik sok pénzzel és erőforrással, a támadó valószínűleg továbblép egy másik célpontra.

A verem közepén nincs különbség a PaaS-környezet és a helyszíni környezet között. Az alkalmazásrétegben, valamint a fiók- és hozzáférés-kezelési rétegben hasonló kockázatokkal kell számolnia. A cikk következő lépéseit ismertető szakaszban bemutatjuk azokat az ajánlott eljárásokat, amelyek segítségével kiküszöbölheti vagy minimalizálhatja ezeket a kockázatokat.

A verem tetején, az adatszabályozással és a tartalomvédelemmel egy olyan kockázatot vállal, amelyet a kulcskezeléssel mérsékelhet. (A kulcskezelést az ajánlott eljárások ismertetik.) Bár a kulcskezelés további felelősség, a PaaS üzemelő példányainak olyan területei vannak, amelyeket már nem kell kezelnie, hogy erőforrásokat helyezhesse át a kulcskezelésre.

Az Azure platform emellett erős DDoS-védelmet biztosít különböző hálózatalapú technológiák használatával. A hálózatalapú DDoS-védelmi módszerek minden típusa azonban kapcsolatonkénti és adatközpontonkénti korláttal rendelkezik. A nagy DDoS-támadások hatásának elkerülése érdekében kihasználhatja az Azure alapvető felhőalapú képességét, amely lehetővé teszi a gyors és automatikus felskálázást a DDoS-támadások elleni védelem érdekében. Az ajánlott eljárásokról szóló cikkekben részletesebben is bemutatjuk, hogyan teheti ezt meg.

A Felhőhöz készült Defender szemléletének modernizálása

A PaaS üzemelő példányai áttűnnek a biztonság általános megközelítésében. A szükséges teendőkről át kell irányítania mindent, hogy megossza a felelősséget Microsoft.

A PaaS és a hagyományos helyszíni üzemelő példányok között egy másik jelentős különbség az elsődleges biztonsági szegélyt meghatározó új nézet. Korábban az elsődleges helyszíni biztonsági szegély az Ön hálózata volt, és a legtöbb helyszíni biztonsági terv a hálózatot használja elsődleges biztonsági kimutatásként. PaaS-üzemelő példányok esetén jobban szolgálja, ha az identitást tekinti elsődleges biztonsági szegélynek.

Identitásszabályzat elfogadása elsődleges biztonsági szegélyként

A felhőalapú számítástechnika öt alapvető jellemzője közül az egyik a széles körű hálózati hozzáférés, ami kevésbé relevánsabbá teszi a hálózatközpontú gondolkodást. A felhőalapú számítástechnika nagy részének az a célja, hogy a felhasználók helytől függetlenül hozzáférhessenek az erőforrásokhoz. A felhasználók többsége számára a tartózkodási helyük valahol az interneten lesz.

Az alábbi ábra bemutatja, hogyan változott a biztonsági szegélyhálózat a hálózati szegélyhálózatról az identitás szegélyére. A biztonság kevésbé lesz a hálózat védelméről és az adatok védelméről, valamint az alkalmazások és a felhasználók biztonságának kezeléséről. A legfontosabb különbség az, hogy a biztonságot közelebb szeretné helyezni a vállalat számára fontoshoz.

Identitás új biztonsági szegélyként

Az Azure PaaS-szolgáltatások (például a webes szerepkörök és a Azure SQL) kezdetben kevés vagy semmilyen hagyományos szegélyvédelmet nem biztosítottak. A rendszer úgy értelmezte, hogy az elem célja az internet (webes szerepkör) elérése, és hogy a hitelesítés biztosítja az új szegélyhálózatot (például BLOB vagy Azure SQL).

A modern biztonsági gyakorlatok azt feltételezik, hogy a támadó áttörte a hálózati szegélyt. Ezért a modern védelmi gyakorlatok átkerültek az identitásba. A szervezeteknek identitásalapú biztonsági szegélyt kell létrehozniuk erős hitelesítéssel és engedélyezési higiéniával (ajánlott eljárások).

A hálózat peremhálózatának alapelvei és mintái évtizedek óta elérhetők. Ezzel szemben az iparág viszonylag kevesebb tapasztalattal rendelkezik az identitás elsődleges biztonsági szegélyként való használatával kapcsolatban. Ezzel együtt elég tapasztalatot gyűjtöttünk ahhoz, hogy általános javaslatokat nyújtsunk, amelyek bizonyítottak a területen, és szinte minden PaaS-szolgáltatásra vonatkoznak.

Az alábbiakban az identitás kerületének kezelésére vonatkozó ajánlott eljárásokat követjük.

Ajánlott eljárás: Biztonságossá teheti a kulcsokat és a hitelesítő adatokat a PaaS-környezet biztonságossá tételéhez.
Részletek: A kulcsok és a hitelesítő adatok elvesztése gyakori probléma. Használhat központosított megoldást, ahol a kulcsok és titkos kódok hardveres biztonsági modulokban (HSM-ek) tárolhatók. Az Azure Key Vault a hitelesítési kulcsok, a tárfiókkulcsok, az adattitkosítási kulcsok, a .pfx-fájlok és a jelszavak HSM által védett kulcsok használatával történő titkosításával védi a kulcsokat és a titkos kulcsokat.

Ajánlott eljárás: Ne helyezzen el hitelesítő adatokat és egyéb titkos kódokat a forráskódban vagy a GitHubon.
Részletek: A kulcsok és a hitelesítő adatok elvesztésénél az egyetlen rosszabb dolog, ha egy jogosulatlan fél hozzáférést szerez hozzájuk. A támadók a robottechnológiák segítségével megkereshetik a kódtárakban, például a GitHubon tárolt kulcsokat és titkos kulcsokat. Ne helyezzen kulcsokat és titkos kódokat ezekben a nyilvános kódtárakban.

Ajánlott eljárás: A virtuális gépek felügyeleti felületeinek védelme hibrid PaaS- és IaaS-szolgáltatásokon egy olyan felügyeleti felület használatával, amely lehetővé teszi a virtuális gépek közvetlen távoli felügyeletét.
Részletek: Távoli felügyeleti protokollok, például SSH, RDP és PowerShell-távelérés használhatók. Általában azt javasoljuk, hogy ne engedélyezze a virtuális gépek közvetlen távoli elérését az internetről.

Ha lehetséges, használjon alternatív megközelítéseket, például virtuális magánhálózatokat egy Azure-beli virtuális hálózatban. Ha nem állnak rendelkezésre alternatív módszerek, győződjön meg arról, hogy összetett jelszót és kétfaktoros hitelesítést (például Azure AD Multi-Factor Authenticationt) használ.

Ajánlott eljárás: Használjon erős hitelesítési és engedélyezési platformokat.
Részletek: Használjon összevont identitásokat Azure AD egyéni felhasználói tárolók helyett. Összevont identitások használata esetén kihasználja a platformalapú megközelítést, és delegálja az engedélyezett identitások kezelését a partnereknek. Az összevont identitás megközelítése különösen fontos az alkalmazottak leállásakor, és ezt az információt több identitás- és engedélyezési rendszeren keresztül kell tükrözni.

Egyéni kód helyett használjon platform által biztosított hitelesítési és engedélyezési mechanizmusokat. Ennek az az oka, hogy az egyéni hitelesítési kód fejlesztése hibalehetőséget jelenthet. A fejlesztők többsége nem biztonsági szakértő, és nem valószínű, hogy tisztában van a hitelesítés és engedélyezés finomságával és legújabb fejlesztésével. A kereskedelmi kódot (például Microsoft) gyakran széles körben ellenőrzik.

Használjon kétfaktoros hitelesítést. A kétfaktoros hitelesítés a hitelesítés és engedélyezés jelenlegi szabványa, mivel elkerüli a felhasználónév és a jelszó típusú hitelesítéssel járó biztonsági hiányosságokat. Az Azure felügyeleti (portál-/távoli PowerShell-) felületekhez és az ügyféloldali szolgáltatásokhoz való hozzáférést úgy kell megtervezni és konfigurálni, hogy Azure AD Multi-Factor Authenticationt használják.

Használjon szabványos hitelesítési protokollokat, például az OAuth2-t és a Kerberost. Ezeket a protokollokat alaposan átvizsgálják, és valószínűleg a platformkódtárak részeként implementálják őket hitelesítés és engedélyezés céljából.

Fenyegetésmodellezés használata az alkalmazás tervezése során

A Microsoft Biztonsági fejlesztési életciklus azt határozza meg, hogy a csapatoknak a tervezési fázisban részt kell vennie egy fenyegetésmodellezés nevű folyamatban. A folyamat megkönnyítése érdekében Microsoft létrehozta az SDL-Threat Modeling Tool. Az alkalmazásterv modellezése és a STRIDE-fenyegetések minden megbízhatósági határon való számbavétele már a korai lépések során észlelheti a tervezési hibákat.

Az alábbi táblázat felsorolja a STRIDE-fenyegetéseket, és példákat ad az Azure-funkciókat használó kockázatcsökkentésekre. Ezek a kockázatcsökkentések nem működnek minden helyzetben.

Fenyegetés Biztonsági tulajdonság Lehetséges Azure-platformmegoldások
Identitáshamisítás Hitelesítés HTTPS-kapcsolatok megkövetelése.
Illetéktelen adatmódosítás Integritás TLS-/SSL-tanúsítványok ellenőrzése.
Letagadhatóság Letagadhatatlanság Engedélyezze az Azure monitorozását és diagnosztikát.
Információfelfedés Titkosság Inaktív bizalmas adatok titkosítása szolgáltatástanúsítványok használatával.
Szolgáltatásmegtagadás Rendelkezésre állás A szolgáltatásmegtagadási feltételek teljesítménymetrikáinak monitorozása. Kapcsolatszűrők implementálása.
Jogosultsági szint emelése Engedélyezés Használja a Privileged Identity Management.

Fejlesztés Azure App Service

Azure App Service egy PaaS-ajánlat, amellyel webes és mobilalkalmazásokat hozhat létre bármely platformhoz vagy eszközhöz, és bárhol, a felhőben vagy a helyszínen csatlakozhat az adatokhoz. App Service tartalmazza azokat a webes és mobil képességeket, amelyeket korábban külön az Azure Websites és az Azure Mobile Services szolgáltatásként szállítottak. Ezenkívül új lehetőségek is elérhetők az üzleti folyamatok automatizálásához és felhőalapú API-k üzemeltetéséhez. Egyetlen integrált szolgáltatásként a App Service számos lehetőséget kínál a webes, mobil és integrációs forgatókönyvekre.

Az alábbi ajánlott eljárások App Service használatához.

Ajánlott eljárás: Hitelesítés az Azure Active Directoryn keresztül.
Részletek: App Service biztosít egy OAuth 2.0-szolgáltatást az identitásszolgáltatójához. Az OAuth 2.0 az ügyfélfejlesztők egyszerűségére összpontosít, miközben konkrét engedélyezési folyamatokat biztosít webalkalmazásokhoz, asztali alkalmazásokhoz és mobiltelefonokhoz. Azure AD az OAuth 2.0-t használja a mobil- és webalkalmazásokhoz való hozzáférés engedélyezéséhez.

Ajánlott eljárás: Korlátozza a hozzáférést a szükséges ismeretek és a minimális jogosultsági szintű biztonsági alapelvek alapján.
Részletek: A hozzáférés korlátozása elengedhetetlen azon szervezetek számára, amelyek biztonsági szabályzatokat szeretnének kikényszeríteni az adathozzáféréshez. Az Azure RBAC használatával engedélyeket rendelhet felhasználókhoz, csoportokhoz és alkalmazásokhoz egy adott hatókörben. További információ a felhasználók alkalmazásokhoz való hozzáféréséről: Ismerkedés a hozzáférés-kezeléssel.

Ajánlott eljárás: A kulcsok védelme.
Részletek: Az Azure Key Vault segít megvédeni a felhőalkalmazások és -szolgáltatások által használt titkosítási kulcsokat és titkos kulcsokat. A Key Vault titkosíthatja a kulcsokat és titkos kulcsokat (például hitelesítési kulcsokat, tárfiókkulcsokat, adattitkosítási kulcsokat, ). PFX-fájlok és jelszavak) hardveres biztonsági modulok (HSM-ek) által védett kulcsokkal. A még nagyobb biztonság érdekében lehetőség van arra is, hogy kulcsokat importáljon és generáljon a hardveres biztonsági modulokban. További információ: Azure Key Vault. A Key Vault is használhatja a TLS-tanúsítványok automatikus megújítással történő kezelésére.

Ajánlott eljárás: A bejövő forrás IP-címek korlátozása.
Részletek: App Service Environment rendelkezik egy virtuális hálózati integrációs funkcióval, amellyel hálózati biztonsági csoportokon keresztül korlátozhatja a bejövő forrás IP-címeket. A virtuális hálózatok lehetővé teszik, hogy az Azure-erőforrásokat egy nem internetes, irányítható hálózatba helyezze, amelyhez ön szabályozza a hozzáférést. További információ: Az alkalmazás integrálása Azure-beli virtuális hálózattal.

Ajánlott eljárás: A App Service környezetek biztonsági állapotának monitorozása.
Részletek: A App Service-környezetek monitorozásához használja a Microsoft Defender for Cloudot. Amikor a Defender for Cloud azonosítja a lehetséges biztonsági réseket, javaslatokat hoz létre, amelyek végigvezetik a szükséges vezérlők konfigurálásának folyamatán.

Azure Cloud Services

Az Azure Cloud Services egy paaS-példa. A Azure App Service-hez hasonlóan ez a technológia is olyan alkalmazások támogatására lett kialakítva, amelyek méretezhetőek, megbízhatóak és olcsók. Ugyanúgy, ahogyan a App Service virtuális gépeken üzemeltetik, így az Azure Cloud Services is. A virtuális gépek azonban nagyobb mértékben szabályozhatóak. Saját szoftvereket telepíthet az Azure Cloud Services használó virtuális gépekre, és távolról is elérheti őket.

Webalkalmazási tűzfal telepítése

A webalkalmazások egyre inkább ki vannak téve rosszindulatú támadásoknak, amelyek az ismert biztonsági réseket használják ki. Az ilyen jellegű támadások között például gyakoriak az SQL-injektálásos és a webhelyek közötti, parancsprogramot alkalmazó támadások. Az ilyen támadások megakadályozása az alkalmazás kódjában kihívást jelenthet, és szigorú felügyeletet, javítást és megfigyelést igényelhet az alkalmazás topológiájának számos rétegén. A központosított webalkalmazási tűzfal egyszerűbbé teszi a biztonságfelügyeletet, és segít az alkalmazás-rendszergazdáknak a fenyegetések vagy a behatolások elleni védekezésben. Emellett a WAF-megoldás gyorsabban képes kezelni a biztonsági fenyegetéseket azáltal, hogy kijavítja az ismert biztonsági réseket egy központi helyen, ahelyett hogy az egyes webalkalmazások védelmét biztosítaná. A meglévő alkalmazásátjárókat egyszerűen át lehet alakítani webalkalmazási tűzfallal rendelkező alkalmazásátjárókká.

A webalkalmazási tűzfal (WAF) a Application Gateway szolgáltatása, amely központosított védelmet biztosít a webalkalmazásoknak a gyakori biztonsági résekkel és biztonsági résekkel szembeni ellen. A WAF az Open Web Application Security Project (OWASP) alapvető szabálykészletének 3.0-s vagy 2.2.9-s szabályain alapul.

Az alkalmazások teljesítményének monitorozása

A monitorozás az alkalmazás teljesítményének, állapotának és rendelkezésre állásának meghatározására szolgáló adatok gyűjtésének és elemzésének feladata. A hatékony monitorozási stratégia pontos információkat nyújt az alkalmazás összetevőinek működéséről. Ez segít növelni az üzemidőt azáltal, hogy értesíti Önt a kritikus problémákról, hogy megoldhassa őket, mielőtt problémákká válnának. Emellett segít észlelni a biztonsággal kapcsolatos anomáliákat is.

A Azure-alkalmazás Insights használatával monitorozhatja az alkalmazás rendelkezésre állását, teljesítményét és használatát, függetlenül attól, hogy az a felhőben vagy a helyszínen van-e üzemeltetve. Az Application Insights használatával gyorsan azonosíthatja és diagnosztizálhatja az alkalmazás hibáit anélkül, hogy megvárja, amíg a felhasználó jelentést készít róluk. A gyűjtött információk alapján megalapozott döntéseket hozhat az alkalmazás karbantartásával és továbbfejlesztésével kapcsolatban.

Az Application Insights kiterjedt eszközkészlettel rendelkezik az általa gyűjtött adatok feldolgozásához. Az Application Insights egy általános adattárban tárolja az adatait. A Kusto lekérdezési nyelvvel kihasználhatja az olyan megosztott funkciók előnyeit, mint a riasztások, az irányítópultok és a mély elemzés.

Biztonsági behatolástesztelés végrehajtása

A biztonsági védelem ellenőrzése ugyanolyan fontos, mint bármely más funkció tesztelése. A behatolástesztelést a buildelési és üzembehelyezési folyamat standard részévé teheti. Rendszeres biztonsági tesztek és biztonságirés-vizsgálat ütemezése az üzembe helyezett alkalmazásokon, valamint a nyitott portok, végpontok és támadások figyelése.

Az Fuzz-tesztelés a programhibák (kódhibák) keresésére szolgáló módszer, ha helytelen formátumú bemeneti adatokat ad meg az adatok elemzésére és felhasználására szolgáló programillesztőknek (belépési pontoknak). Microsoft biztonsági kockázatészlelés egy felhőalapú eszköz, amellyel hibákat és egyéb biztonsági réseket kereshet a szoftverben, mielőtt üzembe helyezené az Azure-ban. Az eszköz úgy lett kialakítva, hogy a szoftver üzembe helyezése előtt észlelje a biztonsági réseket, így nem kell kijavítani a hibát, kezelni az összeomlásokat, vagy reagálni a szoftver kiadása utáni támadásra.

Következő lépések

Ebben a cikkben az Azure PaaS üzembe helyezésének biztonsági előnyeire és a felhőalkalmazások biztonsági ajánlott eljárásaira összpontosítottunk. Ezután megismerheti a PaaS-alapú webes és mobilmegoldások adott Azure-szolgáltatások használatával történő biztonságossá tételéhez ajánlott eljárásokat. Kezdjük a Azure App Service, Azure SQL Database és Azure Synapse Analytics, az Azure Storage és az Azure Cloud Services. Ahogy a más Azure-szolgáltatások ajánlott eljárásairól szóló cikkek elérhetővé válnak, a hivatkozások a következő listában jelennek meg:

A felhőalapú alkalmazások fejlesztésekor a szoftverfejlesztési életciklus minden fázisában megfontolandó biztonsági kérdésekért és vezérlőkért lásd: Biztonságos alkalmazások fejlesztése az Azure-ban .

A felhőmegoldások Azure-beli tervezése, üzembe helyezése és kezelése során használható további ajánlott biztonsági eljárásokért tekintse meg az Azure ajánlott eljárásait és mintáit .

Az alábbi források általánosabb információkat nyújtanak az Azure biztonságáról és a kapcsolódó Microsoft szolgáltatásokról: