Продукты «Хакера»

  • Ежеквартальный «Хакер» #3

    Ежеквартальный «Хакер» #3

    Лучшие статьи квартала на бумаге

    2 000 ₽

    Заказать журнал
  • Годовая подписка на Xakep.ru

    Годовая подписка на Xakep.ru

    Полный доступ к статьям и архиву выпусков

    6 000 ₽ в год

    Подписаться
  • «Пентест WEB» для начинающих

    «Пентест WEB» для начинающих

    Совместный курс «Хакера» и лаборатории «Хаксет»

    7 000 ₽

    Купить курс
  • Спецвыпуск «Хакера» #4

    Спецвыпуск «Хакера» #4

    Лучшие статьи за 2021–2022 годы на бумаге

    2 000 ₽

    Заказать журнал

PFinger – замена GNU Finger демона. В программе обнаружена уязвимость форматной строки, которая может использоваться удаленно для выполнения произвольного кода.

Уязвимость форматной строки возникает из-за опасного вызова syslog () в функции log() в
log.c: syslog(level, syslog_mem);

Единственный способ для атакующего эксплуатировать эту уязвимость, это установить DNS имя fingering хоста, содержащее спецификации формата. 

h_ent = gethostbyaddr((char *)&remaddr.sin_addr, sizeof(remaddr.sin_addr), AF_INET);
if (h_ent)
conn.hostname = strdup(h_ent->h_name);
else
conn.hostname = "(remote)";
log(LOG_INFO, "Connection from %s (%s)",conn.hostname,inet_ntoa(remaddr.sin_addr));

Этот код ищет имя домена fingering хоста, и регистрирует информацию подключения. Это единственное место, где пользователь управляет регистрируемыми данными. Для успешной эксплуатации, нападающий должен или управлять собственным DNS сервером, или подделать DNS ответ. Это делает эксплуатацию более трудной, но ни в коем случае невозможной.

Уязвимость обнаружена в PFinger 0.7.8.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии