CamHack — программное обеспечение для тестирования IP камер на безопасность
Приветствую.
Сегодня я бы хотел поведать о моем творении, сделанного кривыми моими кривыми руками, а конкретно о такой софтине как «CamHack». Сразу скажу, что софтина имеет консольный интерфейс.
Интерфейс:
Для чего она? Как можно понять, для тестирования IP камер на безопасность. Сразу стоит отметить, софтина не использует какие либо уязвимости в ПО, все гораздо проще, присутствуют два основных вектора атак: bruteforce и parse. Однако все этим не ограничивается, также на борту имеются две вспомогательные функции: сканер портов и спамер (DoS). Прежде чем начать обзор функционала, стоит сразу привести весь список команд, их не так много:
/info — Классика жанра, выводит информацию о всех доступных командах
/brute — Он же дед bruteforce, один из векторов атак.
/parse — Попытка авторизации под дефолтными данными, а именно: login: admin; password: 12345
/scan — Сканер портов
/dos — Тот самый «спамер»
Bruteforce: Великий и ужасный
Для того чтобы начать этот вектор атаки — достаточно ввести одноименную команду '/brute' (вписываем без одинарных кавычек). В процессе будут запрошены IP адрес цели, порт, полный путь к словарям (для тех кто забыл как выглядит полный путь: 'C:Program Filesloginlist.txt'). Если все данные указаны верно и хост доступен — начинается перебор логинов и паролей. В случае успешной авторизации — софт оповестит вас. Так как почему-то именно сегодня, скриншоты решили помракобесить — приведу пример вывода в текстовой форме:
Авторизация удалась, данные для входа:
Nickname: 127.0.0.1
Address: 127.0.0.1
Port: 8000
User name: admin
Password: 12345
Вывод данных оптимизирован под iVMS-4200.
Что за зверь такой? Parse?
Как говорилось выше, сея режим пытается войти в учетную запись под дефолтными данными. Для тех кто не сильно внимательно читал начало статьи, повторю, что мы имеем ввиду под дефолтными(стандартными) данными:
login:admin
password:12345
Этот режим был встроен для того, чтобы быстро понять, хватило ли админу мозгов/фантазии сменить данные учетной записи или все стандартно. Многие скажут: «Но ведь есть bruteforce, зачем нужен parse?» — для того чтобы, еще раз повторюсь, быстро понять, сменили ли данные учетной записи. Если у вас словари из овер 5к логинов и паролей, где логин 'admin' на овер 3813 строчке, там же и пароль '12345', то будет затрачено много времени. Впрочем, давайте все же приступим.
Вводим '/parse' в консоли, IP адрес, порт — ожидаем. В случае успешной авторизации, выйдет что-то вроде этого:
Nickname: 127.0.0.1
Address: 127.0.0.1
Port: 8000
User name: admin
Password: 12345
Вывод схож с выводом bruteforce режима.
В случае безуспешной попытки авторизации — программа экстренно завершит свою работу (Да, разрабы почему-то забыли, что нужно отлавливать ошибки о_О)
Стучимся во все двери. Сканер портов
Сразу отмечу, сканер портов сканирует лишь определенные порты, а именно: 80, 443, 554, 8000, 8080, 8200, 10554, 37777. Почему именно эти? Потому что именно они чаще всего используются IP камерами (или я ошибаюсь?). Вписываем '/scan' в консоль, IP адрес цели и ждем.
Пример вывода(IPшник замазал, а то и по шапке получить можно):
DoS или заставляем админа проснуться
Думаю что сегодня повалить что либо DoS атакой это на грани фантастики (или нет?) однако валить что-либо с друзьями «веселее». Чтобы начать трясти админа за виртуальное плечо — вводим '/dos'. Затертый до дыр процесс, запрос данных: IP адрес, порт, кол-во запросов.
Сразу отмечу, софт спамит HTTP запросами. Здесь никакого вывода не имеется, лишь уведомления об успешной отправке запроса или о том что запрос отправить не получилось.
Думаю, на этом все.
Автор: мистер Олимпия
а где сам-то софт или это типо картинки посмотреть