Zabezpečení webových služeb

28. 3. 2007

Sdílet

Webové služby jsou velmi populární. Každé známější vývojové prostředí typu IDE má zabudovanou podporu pro jejich vývoj. Webové služby mohou třeba sloužit k tomu, že půjde zpřístupnit data a aplikační logiku leckdy i zastaralých informačních systémů, lze díky nim poskytnout funkce, které mohou být sdíleny ve víceplatformním prostředí a také partnerským organizacím umožňují přímý přístup k firemním aplikacím a datům. A vzhledem ke své podstatě, kdy webové služby popisují samy sebe, dovolují jednomu systému spolupracovat s jiným systémem pouze s minimálním zásahem člověka, nebo dokonce i bez něj.

Webové služby jsou velmi populární. Každé známější vývojové prostředí typu IDE má zabudovanou podporu pro jejich vývoj. Webové služby mohou třeba sloužit k tomu, že půjde zpřístupnit data a aplikační logiku leckdy i zastaralých informačních systémů, lze díky nim poskytnout funkce, které mohou být sdíleny ve víceplatformním prostředí a také partnerským organizacím umožňují přímý přístup k firemním aplikacím a datům. A vzhledem ke své podstatě, kdy webové služby popisují samy sebe, dovolují jednomu systému spolupracovat s jiným systémem pouze s minimálním zásahem člověka, nebo dokonce i bez něj.

Existují však i další důvody, proč jsou webové služby tak oblíbené – jde například o to, že ke své činnosti využívají důvěryhodné porty a protokoly, že lze díky nim snadno zpřístupnit back-endové systémy, webové služby také umějí přesně popsat nabízené služby a cestu, jak se k nim dostat. Na druhou stranu jsou právě kvůli těmto vlastnostem velmi lákavým cílem pro různé útoky překračující hranice firemní sítě.

„Pokud dnes prostřednictvím webových služeb zpřístupňujete systémy, o jejichž připojení k internetu jste dříve nechtěli ani slyšet (nikdy byste přeci nepřipojili mainframy k lince DSL) a zároveň neřešíte otázku jejich zabezpečení, pak spolu se službami ukazujete i jejich zranitelná místa,“ říká Alex Stamos, šéf společnosti iSec Partners, která se zabývá konzultacemi v oblasti bezpečnosti.

V této době existuje jen několik organizací, které tuto situaci zcela pochopily, což je ale částečně dáno i tím, že webové služby jsou poměrně novou záležitostí. Dokonce i společnosti, které se zabývají implementací SOA (Service Oriented Architecture) a poskytují frameworky pro vytváření, provozování a řízení služeb, málokdy rozpoznají nová bezpečnostní rizika. Koneckonců poznání, že se musíme vypořádat se zranitelností webových služeb, vyplývá z rostoucího uvědomění si toho, že bezpečnostní opatření musejí být zaměřena i na samotný kód aplikací (tedy nejen na gatewaye či firewally).

Meze důvěry

Jednou z nejčastějších výmluv, proč neuzavírat webové služby, je mylné přesvědčení, že aplikace, které jsou jejich prostřednictvím vystaveny, jsou známy pouze zaměstnancům nebo důvěryhodným partnerům. Jako příklad uveďme vývojáře webových aplikací v bance, která zpracovává platby prostřednictvím kreditních karet, jenž předpokládá, že SOAP rozhraní, které vytvořil, zůstává s výjimkou několika zákazníků, kteří dostali potřebné instrukce, jak tato služba pracuje, ostatním lidem neviditelné.

Tak to ale není,“ říká Alex Stamos z iSec Partners, který zároveň ukazuje, jak lze s jednoduchým hackerským nástrojem, který používá k testovacím účelům, identifikovat webovou službu skrytou za IP adresou a jak bez autorizace využije jejích funkcí. „Všichni propojují svoje systémy s webovými službami a málokdo si uvědomuje, jak značně jsou tyto systémy prostupné.“ Stamos odhaduje, že až 400 z 500 největších společností vyhlašovaných časopisem Fortune používá alespoň jednu B2B webovou službu. „Podle mne téměř žádná z těchto služeb nebude kompletně zabezpečena,“ varuje Stamos.

Další velmi častá příčina zranitelnosti má svůj původ v mylné domněnce, že bezpečnost je záležitost ‚toho druhého‘, tvrdí Paul Henry, viceprezident společnosti Secure Computing, jež dodává gatewaye zabezpečující webové služby, a hned poskytuje příklad: „Máte dva týmy, z nichž jeden vyvíjí front-end a druhý separátně back-end. Každý tým předpokládá, že se o bezpečnost stará ten druhý.“ Navíc většina společností vyvíjí svá vlastní řešení místo toho, aby je koupily už hotové od dodavatelů, kteří je podrobili důkladným testům.

Dále zde existuje problém s vícenásobnými průchody přes komunikační body. Zpráva webové služby totiž, než dosáhne svého cíle, putuje přes mnoho síťových prostředníků, což podkopává účinnost technologií jako SSL (Secure Socket Layer), která chrání spojení pouze ve vnějším internetu. „To, že vůbec netušíte, kudy vaše zpráva vlastně putuje, vyvolává řadu znepokojujících otázek,“ říká Rafat Alvi ze společnosti Sun Microsystems.
Pro bezpečnostní specialisty představuje další problém určitá „upovídanost“ webových služeb, které jsou navrženy tak, aby popisovaly sebe samotné, což představuje další riziko, jak dodává Danny Allan, ředitel výzkumu bezpečnosti společnosti Watchfire, která poskytuje nástroje pro testování bezpečnosti webových aplikací. „Webové služby toho často o sobě řeknou mnohem víc, než tušíte.“

 

bitcoin_skoleni


Webové služby jsou velmi populární. Každé známější vývojové prostředí typu IDE má zabudovanou podporu pro jejich vývoj. Webové služby mohou třeba sloužit k tomu, že půjde zpřístupnit data a aplikační logiku leckdy i zastaralých informačních systémů, lze díky nim poskytnout funkce, které mohou být sdíleny ve víceplatformním prostředí a také partnerským organizacím umožňují přímý přístup k firemním aplikacím a datům. A vzhledem ke své podstatě, kdy webové služby popisují samy sebe, dovolují jednomu systému spolupracovat s jiným systémem pouze s minimálním zásahem člověka, nebo dokonce i bez něj.

Existují však i další důvody, proč jsou webové služby tak oblíbené – jde například o to, že ke své činnosti využívají důvěryhodné porty a protokoly, že lze díky nim snadno zpřístupnit back-endové systémy, webové služby také umějí přesně popsat nabízené služby a cestu, jak se k nim dostat. Na druhou stranu jsou právě kvůli těmto vlastnostem velmi lákavým cílem pro různé útoky překračující hranice firemní sítě.

„Pokud dnes prostřednictvím webových služeb zpřístupňujete systémy, o jejichž připojení k internetu jste dříve nechtěli ani slyšet (nikdy byste přeci nepřipojili mainframy k lince DSL) a zároveň neřešíte otázku jejich zabezpečení, pak spolu se službami ukazujete i jejich zranitelná místa,“ říká Alex Stamos, šéf společnosti iSec Partners, která se zabývá konzultacemi v oblasti bezpečnosti.

V této době existuje jen několik organizací, které tuto situaci zcela pochopily, což je ale částečně dáno i tím, že webové služby jsou poměrně novou záležitostí. Dokonce i společnosti, které se zabývají implementací SOA (Service Oriented Architecture) a poskytují frameworky pro vytváření, provozování a řízení služeb, málokdy rozpoznají nová bezpečnostní rizika. Koneckonců poznání, že se musíme vypořádat se zranitelností webových služeb, vyplývá z rostoucího uvědomění si toho, že bezpečnostní opatření musejí být zaměřena i na samotný kód aplikací (tedy nejen na gatewaye či firewally).

Meze důvěry

Jednou z nejčastějších výmluv, proč neuzavírat webové služby, je mylné přesvědčení, že aplikace, které jsou jejich prostřednictvím vystaveny, jsou známy pouze zaměstnancům nebo důvěryhodným partnerům. Jako příklad uveďme vývojáře webových aplikací v bance, která zpracovává platby prostřednictvím kreditních karet, jenž předpokládá, že SOAP rozhraní, které vytvořil, zůstává s výjimkou několika zákazníků, kteří dostali potřebné instrukce, jak tato služba pracuje, ostatním lidem neviditelné.

Tak to ale není,“ říká Alex Stamos z iSec Partners, který zároveň ukazuje, jak lze s jednoduchým hackerským nástrojem, který používá k testovacím účelům, identifikovat webovou službu skrytou za IP adresou a jak bez autorizace využije jejích funkcí. „Všichni propojují svoje systémy s webovými službami a málokdo si uvědomuje, jak značně jsou tyto systémy prostupné.“ Stamos odhaduje, že až 400 z 500 největších společností vyhlašovaných časopisem Fortune používá alespoň jednu B2B webovou službu. „Podle mne téměř žádná z těchto služeb nebude kompletně zabezpečena,“ varuje Stamos.

Další velmi častá příčina zranitelnosti má svůj původ v mylné domněnce, že bezpečnost je záležitost ‚toho druhého‘, tvrdí Paul Henry, viceprezident společnosti Secure Computing, jež dodává gatewaye zabezpečující webové služby, a hned poskytuje příklad: „Máte dva týmy, z nichž jeden vyvíjí front-end a druhý separátně back-end. Každý tým předpokládá, že se o bezpečnost stará ten druhý.“ Navíc většina společností vyvíjí svá vlastní řešení místo toho, aby je koupily už hotové od dodavatelů, kteří je podrobili důkladným testům.

Dále zde existuje problém s vícenásobnými průchody přes komunikační body. Zpráva webové služby totiž, než dosáhne svého cíle, putuje přes mnoho síťových prostředníků, což podkopává účinnost technologií jako SSL (Secure Socket Layer), která chrání spojení pouze ve vnějším internetu. „To, že vůbec netušíte, kudy vaše zpráva vlastně putuje, vyvolává řadu znepokojujících otázek,“ říká Rafat Alvi ze společnosti Sun Microsystems.
Pro bezpečnostní specialisty představuje další problém určitá „upovídanost“ webových služeb, které jsou navrženy tak, aby popisovaly sebe samotné, což představuje další riziko, jak dodává Danny Allan, ředitel výzkumu bezpečnosti společnosti Watchfire, která poskytuje nástroje pro testování bezpečnosti webových aplikací. „Webové služby toho často o sobě řeknou mnohem víc, než tušíte.“