Как вы можете предотвратить атаки Man в браузере?
читал о нападениях MitB, и некоторые вещи беспокоят меня об этом.
с WIKI:
использование надежных инструментов аутентификации просто создает повышенный уровень неуместной уверенности со стороны как клиента, так и банка в том, что транзакция безопасна.
Одним из наиболее эффективных методов борьбы с атакой MitB является процесс проверки транзакций вне диапазона (OOB). Это преодолевает Троян MitB путем проверки реквизитов транзакции, полученных хостом (банком), пользователю (клиенту) по каналу, отличному от браузера
поэтому, если я правильно понял, что единственный реальный безопасный метод-это метод подтверждения без браузера. (как телефонный звонок или какой-то другой внешний инструмент)
будет ли электронная почта считаться транзакцией OOB? Или MitB может отправить поддельное письмо?
есть ли способ предотвратить MitB только с помощью кода?
EDIT: я спрашиваю это потому, что наша местная банковская система использует физическая система keygen для которого вы должны нажать, чтобы получить номер, а затем ввести этот номер в поле в форме транзакции.
Я понятия не имею, считается ли это безопасным, так как похоже, что атака MitB просто делает его похожим на все, что вы сделали, безопасно и правильно, но на самом деле произошло то, что данные формы были изменены при отправке и теперь переводятся на какой-то другой банковский счет. Так и будет иметь доступ к этому номеру кейген.
5 ответов
вообще говоря, если ваша машина заражена, то вы уязвимы независимо от того, что.
физический токен или токен " вне диапазона "предназначен для решения проблемы" идентичности " и дает банку более высокую уверенность в том, что человек, входящий в систему, - это человек, о котором они говорят. Такой механизм обычно включает использование метода "одноразового кода", так что даже если кто-то записывает разговор с банком, токен не может быть использован повторно. Однако, если вредоносное ПО перехват в режиме реального времени, то они могут злонамеренно контролировать счет после того, как вы успешно вошли в систему, но часто банки требуют новый " код " каждый раз, когда вы пытаетесь сделать что-то вроде перевода денег со счета. Таким образом, вредоносная программа должна ждать вас, чтобы сделать это законно, а затем изменить запрос. Однако большинство вредоносных программ не в режиме реального времени и отправить данные на 3rd партии для сбора и последующего использования. Использование этих методов "одноразового токена" успешно защитит от этого после обработки данных входа в систему, потому что записанные данные не могут быть использованы позже для входа в систему.
чтобы ответить на ваш вопрос, нет никакой возможности защититься от этого только в коде. Все, что вы делаете, может быть специально обработано в части вредоносного ПО.
будет ли электронная почта считаться транзакцией OOB?
учитывая распространенность услуг веб-почты, таких как GMail, я бы сказал, Нет. Даже если цель такой атаки не используя веб-почту, злоумышленник, который контролирует браузер цели, может запустить поддельное электронное письмо, как вы предлагаете.
на статья, которая является предметом (и на которую ссылается) эта статья Википедии, Шаг 1 в "методе атаки" указывается как:
- троянец заражает программное обеспечение компьютера, ОС или приложения.
ответ на ваш вопрос поэтому "нет": как только O/S заражен, вредоносное ПО может (теоретически, по крайней мере) перехватывать вашу электронную почту.
в стороне, какой-то клиент платформы (например, даже мобильные телефоны, не говоря уже о выделенных точках продаж) менее подвержены инфекции, чем другие.
Я полагаю, вы можете использовать критические части информации о транзакции как часть вторичного или третичного шага проверки транзакции. То есть, если бы я думал, что сказал банковскому счету #12345, и он услышал #54321, потому что данные были фальсифицированы этим типом атаки, вторичная проверка не прошла бы проверку шифрования. Было бы также возможно, чтобы банк откликнулся на что-то, что было труднее изменить, например, изображение, содержащее соответствующее информация.
дело в том, что эти типы обсуждений всегда могут усложняться. Электронная почта недействительна вне диапазона, потому что я должен представить, что у меня есть руткит ... если я остановлю это, я должен представить, что моя ОС на самом деле является гостевой ОС, работающей на злой виртуальной машине ... если я остановлю это, я думаю, что я должен представить, что это матрица, и я не могу доверять всему, чтобы защитить мою карту visa с 200 долларами доступного кредита. :)
Это моя точка зрения для человека в браузере. Человек в браузере как будто:
- жертва встает, покидает свой компьютер и перемещается спиной к компьютеру, поэтому он не может касаться клавиатуры, перемещать мышь или даже видеть экран.
- хакер сидит за компьютером жертвы.
- если жертва хочет работать со своим компьютером, он должны попросите хакера сделать это за него. Если он хочет увидеть результат, он ... --8-->должны попросите хакера прочитать данные на мониторе.
- хакер делает все возможное, чтобы убедить пользователя, что он делает то, что он просит, и повторяет то, что он морей. Но постарайтесь извлечь выгоду из этой ситуации без пощады !
Как простой пример:
- потерпевший задать хакер для заполнения данных формы сделки передать 500 долларов США для мам.
- вместо хакера может тип передача 10000USD в Jack. (Данные формы подделки перед отправкой)
- система может отображаться, я передал 10000USD Джеку, но хакер говорит, что 500USD передал Джеку. (Результат вскрытия HTML)
- жертва просит увидеть баланс своего счета, чтобы убедиться, что перевод сделан.
- хакер может сказать, что баланс счета в правильном (это можно сделать, например, удалив последнюю строку таблица баланса и изменение суммы баланса в HTML)
Что касается электронной почты:
- вы ждете письмо, и попросить хакера у меня есть подтверждение из банка.
- как вы не можете видеть монитор, он сказал Да ты. (Технически он может легко генерировать поддельное электронное письмо). (даже если вы сидите на другом чистом компьютере, поддельное письмо может быть отправлено вам снова)
генерация изображения не может предотвратить атака.
- вы задать хакер, Мой банк должен показать мне изображение, которое должно отображать информацию о передаче, вы могли бы его увидеть, что он говорит.
- хакер ответ: Да, я вижу это, он говорит: "Вы передаете 500USD маме "(изображение может быть легко создано JavaScript или хакер может указать url изображения на сервер, который генерирует динамическое изображение с соответствующими данными, чтобы обмануть пользователя)
очень опасная ситуация может произойти, как человек в браузере изменить поток сайта. В этом случае даже система OTP или kegen не может предотвратить атаку. Например:
- вы спрашиваете хакера, что вы хотите увидеть свой баланс
- хакер идет на страницу передачи счета, и заполнить форму передачи счета для передачи 10000USD Джек (но вы не знаете, что он делает вообще, вы просто ждете) он приходит на страницу, которая просит его ключ. Это ключ вы которую ты должен ему дать.
- Теперь, хакер говорит : Ну, банк спросите меня если вы хотите видеть свой баланс вы должны ввести ключ.
- вы думаете, Ну ключ для баланса кажется странным, но в любом случае давайте дадим этот ключ, я доверяю этому парню !!
- хакер переключиться обратно в форму передачи и использовать ключ, чтобы сделать передачу.
Так как вы можете видеть, что нет серверного решения для человека в браузере вы может:
- используйте внеполосное решение для информирования пользователя о критической информации. (Это как если бы вы взяли мобильный телефон в руке, и хотя ваша спина по-прежнему к компьютеру, но конфиденциальная информация отправляется на доверенное устройство, и вы можете увидеть важную информацию)
- используйте закаленный браузер, чтобы убедиться, что никто не может изменить его поведение. (Садитесь за компьютер:))
хорошие образцы чего можно сделать MITB можно найти at: http://www.tidos-group.com/blog/2010/12/09/man-in-the-browser-the-power-of-javascript-at-the-example-of-carberp/