W dzisiejszych czasach gdzie postęp technologiczny i coraz to nowe łatki i udoskonalenia są na porządku dziennym, większość z nas zakłada pewnie, że usługi, z których korzystam na co dzień są oparte o najnowsze technologie. A co byś powiedział gdybyś usłyszał, że twój bank nadal działa w oparciu o kod z 1959 roku. Zastanów się nad tym… Obsługuje on każdą transakcję, którą wykonujesz. I tak, był on wykorzystywany także przez hackerów.
Język COBOL został stworzony w 1960 roku przez Grace Hopper. Prawie dekadę przed tym jak powstał internet. Zanim ludzie wylądowali na Księżycu. Zanim większość Twoich dziadków miała telewizor.
Dzisiaj, w 2025 roku:
- 43% systemów bankowych nadal działa w oparciu o COBOL (Reuters)
- 95% transakcji bankomatowych przechodzi przez kod COBOL
- 220 miliardów linii kodu COBOL nadal jest w użyciu na całym świecie
- 3 biliony dolarów transakcji przetwarzanych codziennie
Oto, jakie podatności bezpieczeństwa generuje:
- Aplikacje COBOL często mają ochronę hasłem, ale prawie ŻADNA nie ma ochrony przed atakami brute force
- Nowoczesne narzędzia bezpieczeństwa nie potrafią skanować kodu COBOL
- Starsze systemy nie obsługują uwierzytelniania wieloskładnikowego
- Znane luki w zabezpieczeniach pozostają otwarte, ponieważ testowanie poprawek trwa miesiące
Banki i instytucje finansowe, w których potwierdzono naruszenia bezpieczeństwa systemów mainframe/COBOL:
- ICBC (listopad 2023 r.) – największy bank na świecie. Oprogramowanie ransomware LockBit zaatakowało podstawową infrastrukturę.
- Nordea Bank (Szwecja) – bezpośrednio zhakowano mainframe IBM.
- TSB Bank (2018) – zmuszony do migracji z systemu COBOL. Podczas awarii stracił 49,1 mln funtów w wyniku oszustwa. Klienci widzieli konta INNYCH osób.
- Anthem (2015) – naruszenie bezpieczeństwa IBM z/OS z aplikacjami COBOL. Straty wyniosły ponad 260 mln dolarów.
To tylko te przypadki, które trafiły do wiadomości publicznej, a przecież nie każdy atak zostaje zgłoszony.
Banki nie informują o tym, kiedy wykorzystywany jest ich kod z 1959 roku. Te, o których wiemy? To tylko wierzchołek góry lodowej.
CVE-2023-4501 pojawił się we wrześniu 2023 roku. Wynik CVSS 9,8 (krytyczny).
Oto, co robi:
→ Omijanie uwierzytelniania w serwerach COBOL dla przedsiębiorstw → Dane uwierzytelniające użytkownika i hasło stają się NIESKUTECZNE → Atakujący mogą zalogować się bez ważnych danych uwierzytelniających → Wpływa na Visual COBOL, COBOL Server, Enterprise Developer, Enterprise Server
To nie jest błąd z lat 90. To jest rok 2023.
A to nie wszystko. CVE-2012-0918 i CVE-2012-4274 uzyskały wynik CVSS 10,0. Maksymalny poziom zagrożenia. Zdalne wykonanie kodu w produktach Hitachi COBOL. „Wykonanie dowolnego kodu za pomocą nieznanych wektorów ataku”.
Ludzie, którzy rozumieją te systemy? Mają tyle lat co COBOL.
Średni wiek programisty COBOL to: 58–60 lat. 65% pracowników zajmujących się komputerami mainframe przejdzie na emeryturę w ciągu dwóch lat. 70% uniwersytetów nie prowadzi już zajęć z języka COBOL. Znalezienie i zatrudnienie kompetentnego eksperta COBOL zajmuje od 90 do 180 dni.
Banki są świadome tego ryzyka. Commonwealth Bank of Australia wydał 750 milionów dolarów w ciągu 5 lat, próbując zmodernizować swoje systemy.
W związku z powyższym nadal poprawiają i łatają kod z 1959 roku. Mając nadzieję, że nic się nie zepsuje. Twoje pieniądze są obsługiwane przez kod starszy niż program kosmiczny.
Hakerzy, którzy go rozumieją, nie przechodzą na emeryturę.
Powyższy stan rzeczy powinien stać się przyczynkiem do szerszego dyskursu na temat bezpieczeństwa. Bezpieczeństwa, o którym nie powinniśmy rozmawiać tylko w kontekście najnowszych rozwiązań ale też i fundamentów będących podwaliną dla działania wielu z naszych podstawowych usług.
Tekst w oparciu o research: Jolanda de Koff