Description
Nefteprodukttekhnika BUK TS-G Gas Station Automation System 2.9.1 through 2.10.2 on Linux contains an Improper Authentication vulnerability (CWE-287) in the system configuration module. The /php/ajax-login.php endpoint returns userid=1 (administrator) in response to any HTTP POST request that supplies arbitrary credentials (e.g., action=dologin&login=<any_value>&pwd=<any_value>), and subsequent privileged endpoints under /php/ajax-main.php and /modules/* do not validate a server-side session. A remote unauthenticated attacker can invoke any administrative action exposed by the configuration module, including reading and modifying user rules, fuel tank gauges, fuel dispensers, relays, cash registers, bank terminals, fuel cards, price and customer displays, cash collection, and pricing rules.
An unauthenticated remote attacker reaches the BUK-TS Configuration Module login page, submits any password, and uses an HTTP-intercepting proxy to insert a userid field into the login response. The attacker is then granted full administrative access to the gas-station configuration interface, including control over fuel dispensers, tanks, relays, cash registers, and payment terminals.
Problem types
CWE-287 Improper Authentication
CWE-306 Missing Authentication for Critical Function
Product status
2.9.1 (semver)
Credits
Qahramon Choriyev (ciprobe)
References
github.com/ciprobe/bukts_auth_bypass (BUK_TS_KILLER - Proof-of-concept exploit for the BUK TS-G authentication bypass)
bukts.ru/repo-bukts-current (Nefteprodukttekhnika BUK TS-G - Vendor distribution)
cwe.mitre.org/data/definitions/287.html (CWE-287: Improper Authentication)
cwe.mitre.org/data/definitions/306.html (CWE-306: Missing Authentication for Critical Function)