Skip to content
KitploitKITPLOIT
ИнструментыБлог
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
netbsd_hfs — NetBSD hfs overflow | Kitploit
Инструменты/GitHubGitHub/fuzzrf/netbsd_hfs
Privilege EscalationVulnerability AnalysisExploitationBinary Exploitation
GitHubfuzzrf/netbsd_hfs

netbsd_hfs

NetBSD hfs overflow

Репозиторий
23 лет назадЕщё не проверено

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

NetBSD hfs локальное переполнение

Детали ошибки:

root@kitploit:~
size_t
hfslib_reada_node_offsets(void* in_bytes, uint16_t* out_offset_array)
{
        void*           ptr;

        if (in_bytes == NULL || out_offset_array == NULL)
                return 0;

        ptr = in_bytes;

        /*
         * The offset for record 0 (which is the very last offset in the node) is
         * always equal to 14, the size of the node descriptor. So, once we hit
         * offset=14, we know this is the last offset. In this way, we don't need
         * to know the number of records beforehand.
         */
        out_offset_array--;
        do {
                out_offset_array++;
                *out_offset_array = be16tohp(&ptr);
        } while (*out_offset_array != (uint16_t)14);

        return ((uint8_t*)ptr - (uint8_t*)in_bytes);
}

Цикл while не имеет проверок диапазона, поэтому мы можем переполнить массив out_offset_array.

Как тестировать:

root@kitploit:~
1. enable user mounts
# sysctl -w vfs.generic.usermount=1


2. mount test.img
Скачать инструмент