Sploitus

Exploit for Dnstracer-1.9-Fix

kitploit · 2026-09-01

Exploit Code

MARKDOWN36 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-J0LAMA-DNSTRACER-1.9-FIX
# Dnstracer-1.9-Исправление

### dnstracer

dnstracer определяет, откуда данный DNS-сервер получает информацию для заданного имени хоста, и прослеживает цепочку DNS-серверов до авторитетного ответа.

### Проблема

Переполнение стека на основе буфера в dnstracer до версии 1.9 позволяет злоумышленникам выполнять произвольный код через командную строку с длинным аргументом имени, который некорректно обрабатывается в вызове strcpy для argv[0].

root@kitploit:~
    
    
    /*dnstracer_broken.h*/
    #define NS_MAXDNAME	1024
    
    /*dnstracer.c*/
    strcpy(argv0, argv[0]);
    

### Исправление

Проверить, не превышает ли длина argv[0] 1024.

root@kitploit:~
    
    
    /*CVE-2017-9430 Fix*/
    if(strlen(argv[0]) >= NS_MAXDNAME)
    {
        free(server_ip);
        free(server_name);
        fprintf(stderr, "dnstracer: argument is too long %s\n", argv[0]);
        return 1;
    }