Как я нашёл RCE-уязвимость в Google и получил $90 000
I Found a $90k Remote Code Execution Vulnerability in Google

Исследователь обнаружил, что cookie сессии на developers.google.com содержала OAuth client_secret в открытом виде. Этот же секрет использовался как ключ подписи Flask, что позволяло подделывать сессии и через pickle.loads выполнять произвольный код на серверах Google. Уязвимость затрагивала firebase.google.com, developer.android.com и другие. Google выплатила $90 000 и исправила проблему.
Публичный ключ подписи плюс этот сток — это неаутентифицированный RCE.
- option_greek
как такое вообще проходит ревью кода и дизайна. этот код написан ИИ (багованный код). мало того, что ключ, которым подписывается cookie, лежал внутри самой cookie, так ещё и используется pickle, от которого даже веса моделей отказываются. я немного ошеломлён тем, насколько нубоский характер у этой первопричины.
- stonyrubbish
Есть какие-нибудь советы для начинающих баг-хантеров? У тебя есть какой-то метод, позволяющий находить такие уязвимости, или это просто огромный прошлый опыт?
- EdwardDiego
Смелый выбор — настойчиво использовать местоимение «я» вместо «Claude»: это не ты разобрался, это Claude разобрался, а потом Claude же, очевидно, и написал этот пост.
О, может, именно поэтому «Claude» заменили на «я» — потому что Claude писал этот пост от первого лица.
- consumer451
Извините за мета, но дискурс во многих комментариях кажется мне безумным.
«Это сделал Claude, а не ты» — это что, значит, что у людей вообще нет субъектности, когда они используют LLM? Это такой аргумент?
Может, нормой должно быть указывать LLM и инструмент, который использовался, вроде «я использовал ___ чтобы помочь найти RCE», но я могу понять аргументы против этого в некоторых случаях.
edit: Огромный тред с этим сейчас зафлагили, так что некоторые пользователи могут его не увидеть.
- iJohnDoe
Если бы это была Microsoft, они бы выдали купон на скидку 10% на индейку ко Дню благодарения, который можно погасить только в 2030 году и только в марте, покупать только за наличные, без права передачи.