Skip to main content

Делаем фейк PayPal на его домене или о том, что «палка» не платит за баги

By 7 декабря 20139 марта, 2016Blog

Привет %username%! Как здоровье? Да вот, есть о чем рассказать… Крик души!
Как-то летом я устроил палку-копалку, точнее поучаствовал в PayPal Bug Bounty. Все было замечательно, нашёл xss и тут-же отправил. Похваставшись перед друзьями, я уже был в надежде на оплату и фикс баги, но поддержка что-то долго не отвечала, а знакомые ребята говорили — им так и не ответили или не заплатили за их репорты. Спустя месяц наконец-таки пришёл ответ, мол, всё ништяк, мы передали инфу нашим секьюрити-инженерам… Заглядывая в будущее — скажу, что бага была пофикшена, но оплаты так и не произошло…

Если вам не интересно читать этот текст, смотреть картинки или вы плохо понимаете по русски — посмотрите видео, что в конце статьи. Остальные — давайте продолжим…

paypal xss

alert на домене alp.paypal

#1 XSS
http://alp.paypal.com/a;<script>alert(1)</script>

Награда: 0$

Шло время, я нашёл интересный файл на одном из поддоменов ad.paypal.com — который показывает все куки, а ещё она делает это без фильтрации.

paypal xss

Вторая xss (кликабельно)

Не долго думая — я отправил в поддержку, опять пришло письмо — передают инженерам, а только потом сам ответ, но на этот раз ответили быстро.

paypal cookie injection xss

Ответ на вторую xss (кликабельно)

#2 XSS
GET /jin/cookie.jsp HTTP/1.1
Host: ad.paypal.com
Cookie: a=<script>alert(1)</script>

Награда: 0$

Тысяча чертей, они правы! Ну разве поспоришь? XSS будет работать только если злоумышленник установил cookie ручками или воспользовался какой-нибудь фиксацией сессии типа CRLF + Set-cookie. И оказывается на сайте есть CRLF! https://www.paypal.com/.x%0dSet-Cookie:ololo=122;%20path=/;%20domain=.paypal.com (спасибо Black2Fan за наводку, у меня был куда более некрасивый вектор).
Отправил, опять передают инженерам, ответ.

Ответ на crlf в paypal

Ответ на CRLF (кликабельно)

Воу-воу-воу! Вы серьёзно? Далее у нас была долгая и нудная переписка, обменялись письмами более десятка раз, в завершении пришло письмо, мол, чувак — сними нам видео, хватит уже с нами спорить, мы видос глянем — а там и посмотрим, опасно это или нет.

paypal crlf

Просьба снять видео (кликабельно)

Да без проблем! Xss не так интересно, поэтому я объединил две атаки и сделал фейковую страницу paypal прямо на поддомене! Вообще можно было заюзать всплывающее окно на весь экран (типа popup) но я обошёлся фреймом. Обязательно зацените фон рабочего стола (надо было показать его полностью… 😀 ).

Хаха! Ну теперь-то они не будут говорить, что это опасно! Но не тут-то было…

paypal crlf xss video

Ответ на видео (кликабельно)

#3 CRLF
https://www.paypal.com/.x%0dSet-Cookie:ololo=122;%20path=/;%20domain=.paypal.com

Награда: 0$

Чёрт возьми. Я на экзамене? Им нужно конкретно по шагам показать, что есть уязвимость и она представляет угрозу? А я что сделал?

Если команда Paypal читает (ну всякое же бывает 😉 ) эту статью — объясните как по шагам ещё можно объяснить? Берём ссылочку, вставляем туда %0d%0a, смотрим header’ы? Я высылал скрины, высылал векторы — им нехватает!

Так что ребята — ломайте Google & Яндекс — всегда платят и быстро отвечают. А PayPal в этом плане — не серьёзная. Кто так же не получал награду, пишите в комментах — насколько я слышал — таких много.

UPD: заблокировали на хабре после поста

Join the discussion 4 комментария

  • Enigma:

    Насчет блокировки со стороны Хабра интересно =)

  • graphite:

    Меня уже 4 месяца игнорируют с XSS + CSRF в Magento (все версии — comunity, enterprise, Go), хотя потихоньку пофиксили все (по крайней мере самые серьезные точно, остальные лень проверять).

    • Мамкин хакер:

      Меня то же на одной программе с xss пофиксил в админпонели сайта.
      Потом смотрю все пофиксили

  • Я находил багу, когда можно было отправлять фишинговую ссылку+текст прямо с серверов палки неограниченному кругу лиц, аналогично было в Гугл и Яндекс. Заплатил только Яндекс)

Leave a Reply