CVE Intelligence

Vulnerabilidades do Geovision GV-I/O Box 4E

🔔 Criar alerta RSS Verificador de versão

CVEs publicadas que afetam Geovision GV-I/O Box 4E: 8 registro(s), com versões afetadas e correções.

CVE-2026-12851 Crítica · 9.1 CWE-78 24/06/2026
Injeção de comando do sistema operacional no GeoVision GV-I/O Box 4E via libNetSetObj.so
Existem múltiplas vulnerabilidades de injeção de comando do sistema operacional na funcionalidade libNetSetObj.so do GeoVision GV-I/O Box 4E 2.09. Um pacote de rede especialmente elaborado pode levar à execução de comandos. Um atacante pode enviar uma requisição de rede para acionar essa vulnerabilidade. libNetSetObj.so é uma biblioteca interna usada por diversos binários do dispositivo para configurar a pilha de rede (iniciar e parar vários serviços, configurar IP, máscara de rede, gateway, DNS etc.). CNetSetObj::m_F_n_Set_DNS_Addr command injection A função a seguir pode receber até dois endereços, não realiza sanitização e então chama system. Trata-se de uma clássica vulnerabilidade de injeção de comando. A função é alcançável tanto pelo serviço DVRSearch, exposto na rede, quanto pelo endpoint Network.cgi. Trecho de código do advisório, reproduzido sem alteração: int __fastcall CNetSetObj::m_F_n_Set_DNS_Addr(CNetSetObj *this, char *dns1, char *dns2) { int result; char v5[80]; if ( !dns1 ) result = 0; if ( dns1 ) { sprintf(v5, "/bin/echo nameserver %s > /etc/resolv.conf", dns1); system(v5); if ( dns2 ) { sprintf(v5, "/bin/echo nameserver %s >> /etc/resolv.conf", dns2); system(v5); } return 1; } return result;
CVE-2026-12850 Crítica · 9.1 CWE-78 24/06/2026
Injeção de Comando do Sistema Operacional no GeoVision GV-I/O Box 4E via libNetSetObj.so
Existem múltiplas vulnerabilidades de injeção de comando do sistema operacional na funcionalidade libNetSetObj.so do GeoVision GV-I/O Box 4E 2.09. Um pacote de rede especialmente elaborado pode levar à execução de comandos. Um atacante pode enviar uma requisição de rede para acionar essa vulnerabilidade. A libNetSetObj.so é uma biblioteca interna usada por diversos binários do dispositivo para configurar a pilha de rede (iniciar e parar diversos serviços, configurar IP, máscara de rede, gateway, DNS etc.). Comando de injeção em CNetSetObj::m_F_n_Set_Gate_way A função a seguir recebe uma string como endereço de gateway (o registro escreve 'gatewy'), não realiza nenhuma sanitização e chama system. Trata-se de uma injeção de comando clássica. A função é acessível tanto pelo serviço DVRSearch, exposto na rede, quanto pelo endpoint Network.cgi. O trecho de código do registro mostra a assinatura int __fastcall CNetSetObj::m_F_n_Set_Gate_way(const char **this, char *gw, char *dev), que monta comandos de rota com o valor de gateway, marcados no código como string gw controlada pelo atacante, e os passa à função system.
CVE-2026-12849 Crítica · 9.1 CWE-78 24/06/2026
Injeção de comando do sistema operacional no GeoVision GV-I/O Box 4E (libNetSetObj.so)
Múltiplas vulnerabilidades de injeção de comando do sistema operacional existem na funcionalidade libNetSetObj.so do GeoVision GV-I/O Box 4E 2.09. Um pacote de rede especialmente elaborado pode levar à execução de comandos. Um atacante pode enviar uma requisição de rede para acionar a vulnerabilidade. libNetSetObj.so é uma biblioteca interna usada por vários binários do dispositivo para configurar a pilha de rede (iniciar e parar diversos serviços, configurar IP, máscara de rede, gateway, DNS etc.). Injeção de comando em CNetSetObj::m_F_n_Set_Net_Mask A função a seguir recebe uma string como endereço de máscara de rede, não realiza nenhuma sanitização e chama system. Trata-se de uma injeção de comando clássica. A função é alcançável tanto pelo serviço DVRSearch, exposto na rede, quanto pelo endpoint Network.cgi. A função recebe um ponteiro com o nome da interface e a string da máscara; ela monta um comando de shell com sprintf, usando um formato de ifconfig com a interface e a máscara, e então executa esse comando com system. O valor da máscara é controlado pelo atacante.
CVE-2026-12848 Crítica · 10.0 CWE-121 24/06/2026
Estouro de buffer baseado em pilha no DVRSearch do GV-I/O Box via UDP (CVE-2026-12848)
GV-I/O Box 4E é um dispositivo embarcado inteligente com 4 entradas e 4 saídas de relé, que pode ser controlado via Ethernet e RS-485. DVRSearch é um serviço executado por padrão no IOBox e que escuta mensagens UDP na porta 10001. Qualquer usuário na rede pode enviar mensagens a esse serviço e interagir com ele. Ao receber uma mensagem UDP, o servidor lê no máximo 1460 bytes para um buffer local, e um ponteiro para esse buffer é armazenado em uma variável global: #### Estouro de pilha no campo DNS O código a seguir é vulnerável a um estouro de pilha controlado pelo atacante: v8 = strlen(g_network_config->dns_addr); memcpy(&reply_buf[248], g_network_config->dns_addr, v8);
CVE-2026-12847 Crítica · 10.0 CWE-121 24/06/2026
Estouro de buffer na pilha no DVRSearch do GV-I/O Box 4E
O GV-I/O Box 4E é um dispositivo embarcado inteligente com 4 entradas e 4 saídas de relé que pode ser controlado via Ethernet e RS-485. O DVRSearch é um serviço executado por padrão no IOBox que escuta mensagens UDP na porta 10001. Qualquer usuário na rede pode enviar mensagens a esse serviço e interagir com ele. Ao receber uma mensagem UDP, o servidor lê no máximo 1460 bytes para um buffer local, e um ponteiro para o buffer é armazenado em uma variável global: #### Estouro de pilha no campo gateway O código a seguir é vulnerável a um estouro de pilha controlado pelo atacante: v7 = strlen(g_network_config->gateway); memcpy(&reply_buf[216], g_network_config->gateway, v7);
CVE-2026-12846 Crítica · 10.0 CWE-121 24/06/2026
GeoVision GV-I/O Box 4E: estouro de buffer na pilha no serviço DVRSearch
O GV-I/O Box 4E é um dispositivo embarcado inteligente com 4 entradas e 4 saídas de relé, controlável por Ethernet e RS-485. O DVRSearch é um serviço executado por padrão no IOBox que escuta mensagens UDP na porta 10001. Qualquer usuário na rede pode enviar mensagens a esse serviço e interagir com ele. Ao receber uma mensagem UDP, o servidor lê no máximo 1460 bytes para um buffer local, e um ponteiro para o buffer é armazenado em uma variável global: #### Estouro de pilha no campo Net Mask O código a seguir é vulnerável a um estouro de pilha controlado pelo atacante: v6 = strlen(g_network_config->net_mask); memcpy(&reply_buf[184], g_network_config->net_mask, v6);
CVE-2026-12486 Crítica · 9.1 CWE-78 24/06/2026
Injeção de comando do SO no GeoVision GV-I/O Box 4E (libNetSetObj.so)
Existem múltiplas vulnerabilidades de injeção de comando no SO na funcionalidade libNetSetObj.so do GeoVision GV-I/O Box 4E 2.09. Um pacote de rede especialmente elaborado pode levar à execução de comandos. Um atacante pode enviar uma requisição de rede para acionar esta vulnerabilidade. libNetSetObj.so é uma biblioteca interna usada por vários binários do dispositivo para configurar a pilha de rede (iniciar e parar diversos serviços, configurar IP, máscara de rede, gateway, DNS etc.). Injeção de comando do SO em CNetSetObj::m_F_n_Set_IP_Addr A função a seguir recebe uma string como endereço IP, não realiza nenhuma sanitização e chama system. Trata-se de uma injeção de comando clássica. A função é alcançável tanto pelo serviço DVRSearch, exposto na rede, quanto pelo endpoint Network.cgi. O trecho de código mostra a função int __fastcall CNetSetObj::m_F_n_Set_IP_Addr(const char **this, char *ip_addr), que verifica os parâmetros, monta com sprintf um comando de ifconfig concatenando o endereço IP controlado pelo atacante, executa esse comando com system e retorna 1.
CVE-2026-12485 Crítica · 10.0 CWE-121 24/06/2026
Estouro de buffer baseado em pilha no DVRSearch do GeoVision GV-I/O Box 4E
O GV-I/O Box 4E é um dispositivo embarcado inteligente com 4 entradas e 4 saídas de relé, que pode ser controlado via Ethernet e RS-485. O DVRSearch é um serviço executado por padrão no IOBox que escuta mensagens UDP na porta 10001. Qualquer usuário da rede pode enviar mensagens a esse serviço e interagir com ele. Ao receber uma mensagem UDP, o servidor lê no máximo 1460 bytes para um buffer local, e um ponteiro para esse buffer é armazenado em uma variável global. #### Estouro de pilha no campo de IP O trecho de código a seguir é vulnerável a um estouro de pilha controlado pelo atacante: a cópia do campo de endereço IP para o buffer de resposta usa como tamanho o comprimento da string de IP armazenada na configuração.