Robocode w wersjach do 1.9.3.5 umożliwia zdalnym atakującym wywołanie nieautoryzowanej interakcji z zewnętrznym serwisem DNS bez jakiejkolwiek autoryzacji. Podatność jest krytyczna, ponieważ nie wymaga uwierzytelnienia ani interakcji użytkownika, a atakujący może ją wykorzystać do wykonania zapytań DNS do kontrolowanej przez siebie infrastruktury.
▸ Pokaż oryginał (EN)
Robocode through 1.9.3.5 allows remote attackers to cause external service interaction (DNS), as demonstrated by a query for a unique subdomain name within an attacker-controlled DNS zone, because of a .openStream call within java.net.URL.
Podatność wynika z braku odpowiednich kontroli dostępu (CWE-862) przy wywołaniu metody .openStream() na obiekcie java.net.URL w kodzie Robocode. Atakujący może dostarczyć spreparowany URL wskazujący na unikalną subdomenę w strefie DNS kontrolowanej przez siebie, co powoduje wykonanie zapytania DNS przez aplikację. W ten sposób możliwe jest wywołanie zewnętrznej interakcji sieciowej (DNS lookup) bez żadnej weryfikacji uprawnień.
Atakujący może wymusić na serwerze wykonanie zapytań DNS do kontrolowanej przez siebie infrastruktury, co umożliwia wykrywanie wewnętrznych zasobów sieciowych, potwierdzanie obecności podatnej instalacji oraz potencjalnie dalsze ataki klasy SSRF. Wysoka ocena CVSS (9.8) wskazuje również na potencjalne ryzyko naruszenia poufności, integralności i dostępności danych.
Należy zaktualizować Robocode do wersji zawierającej poprawkę wprowadzoną w commit 836c84635e982e74f2f2771b2c8640c3a34221bd dostępnym w repozytorium GitHub projektu. Szczegóły patcha dostępne są pod adresem wskazanym w referencjach producenta.
Robocode w wersjach do 1.9.3.5 włącznie.
Podatność została zgłoszona w systemie śledzenia błędów projektu na SourceForge (bugs/406). Poprawka została wdrożona poprzez konkretny commit w repozytorium GitHub projektu robo-code/robocode.
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HRobocode
APPRobocode≤ 1.9.3.5
Powiązane podatności
Path Traversal w Robocode CacheCleaner — usuwanie dowolnych plików
Robocode: podatność race condition przy tworzeniu plików tymczasowych (RCE)
Integer overflow w klasie Buffer Robocode umożliwiający RCE
Robocode before 1.6.0 allows user-assisted remote attackers to "access the internals of the Robocode game" via...
The Event Dispatch Thread in Robocode before 1.5.1 allows remote attackers to execute arbitrary Java code by u...