Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book

Coinbase wypłaciło ~1000000 PLN bug bounty. Dziecinna luka w logice biznesowej

19 lutego 2022, 13:00 | W biegu | 0 komentarzy

Ostatnio donosiliśmy o dość złożonej podatności („mogł wytworzyć dowolną liczbę fałszywych ETH (L2). Wybrał bug bounty w wysokości 8000000 zł”), teraz coś prostszego:

Sytuacja na Coinbase wyglądała tak:

  • Użytkownik ma konto A, na którym posiada 100 SHIB (1 SHIB = 0.0001 PLN :), oraz drugie konto B, na którym posiada 0 BTC
  • Użytkownik uruchamia funkcję API, która ma sprzedać BTC i kupić za to USD. Ale przecież nie mamy żadnych BTC! No więc chwilę przed wysłaniem żądania HTTP do funkcji API, zmieniamy konto źródłowe (z tego BTC) na konto SHIB (tam jest 100 SHIBów).
  • W tym miejscu (tzn. pkt powyżej ;-) jest istota błędu. Sprawdzana była liczba waluty na koncie, z którego ma być zrobiony ~przelew, ale nie było sprawdzane czy waluta na tym koncie, jest tą, którą sprzedajemy.

Bug został załatany w kilka godzin, a Coinbase dodaje, że posiada mechanizmy, które zablokowałyby masowe wykorzystanie tego buga (np. tak żeby obrobić całą giełdę).

Przyznano też bug bounty w kwocie $250 000.

~Michał Sajdak

Spodobał Ci się wpis? Podziel się nim ze znajomymi:



Komentarze

Odpowiedz