Paper Files / AI Security
Segurança de Sistemas de Inteligência Artificial Baseados em Regras e Redes Neurais em Ambientes UNIX e ARPANET (1986)
A consolidação dos sistemas especialistas e dos modelos conexionistas na primeira metade da década de 1980 ocorreu em paralelo à difusão de sistemas multiusuário UNIX e à interconexão por TCP/IP na ARPANET. Nesse contexto, a proteção de ativos particulares da Inteligência Artificial — regras de produção, fatores de certeza, fatos, pesos sinápticos e estruturas de controle de inferência — torna-se um requisito central de engenharia de segurança. Argumentamos que, em 1986, os critérios de avaliação de segurança vigentes (TCSEC/Orange Book) e os modelos clássicos (Bell-LaPadula para confidencialidade e Biba para integridade) não capturam integralmente a integridade semântica exigida por sistemas baseados em conhecimento. Propomos, assim, um arcabouço técnico compatível com o estado da arte de 1986, estruturado em quatro camadas: (i) controle de acesso rigoroso no UNIX 4.2/4.3BSD e VAX/VMS, com procedimentos de grupos, UIDs e isolamento por chroot(2); (ii) verificação criptográfica de integridade por CBC-MAC com DES, conforme FIPS PUB 113 (1985); (iii) auditoria sistemática com syslog e correlação por scripts de análise; e (iv) validação estatística e semântica das saídas (incluindo teste $\chi^2$ aplicado a distribuições de hipóteses e inspeção de energia em redes de Hopfield). Formalizamos o problema de adulteração silenciosa como a existência de $K' \neq K$ tal que $I(K',D) \neq I(K,D)$ sem alarmes de auditoria, e demonstramos, por modelagem probabilística, que a combinação de MAC criptográfico com validação estatística reduz substancialmente a probabilidade de adulterações não detectadas. Implementamos um protótipo em UNIX 4.2BSD sobre VAX-11/780, com base de conhecimento em formato textual e motor de inferência em C, acoplado a um módulo de verificação CBC-MAC e a um pipeline de auditoria. Em 120 simulações de ataque interno controlado (modificação de regras e de pesos sinápticos; interceptação por FTP em trânsito), medimos taxas de detecção, tempos médios de alerta e overhead computacional. Os resultados indicam que a proteção multicamada eleva a taxa de detecção para acima de 90% com sobrecarga moderada de CPU (≈5–7%), e que a inspeção semântica detecta desvios sutilmente induzidos na distribuição de hipóteses e nos mínimos de energia de Hopfield. Discutimos, à luz dos modelos Bell-LaPadula e Biba, a necessidade de granularidade fina de controle sobre regras, do fortalecimento de autenticação em rede com protocolos clássicos (Needham–Schroeder; Lamport), e da aplicação de técnicas de redundância lógica (N-version) na curadoria de bases de conhecimento. Concluímos que segurança de IA constitui disciplina distinta no ecossistema de 1986 e apresentamos recomendações operacionais compatíveis com UNIX/ARPANET e com a normatização NBS/FIPS vigente.
- Introdução
A década de 1980 presencia o amadurecimento de sistemas especialistas e a revalorização de abordagens conexionistas. Projetos emblemáticos como o MYCIN e o DENDRAL demonstram que regras de produção, quando acopladas a fatores de certeza e a mecanismos de encadeamento, são capazes de externalizar expertise humana de maneira eficaz (SHORTLIFFE, 1976; BUCHANAN; SHORTLIFFE, 1984). Ao mesmo tempo, a proposição de redes recorrentes com função de energia, como as redes de Hopfield, fornece arcabouço analítico sólido para a memória associativa e a computação coletiva (HOPFIELD, 1982). O algoritmo de retropropagação, redescoberto e difundido em 1986, amplia o leque de aplicações conexionistas (RUMELHART; HINTON; WILLIAMS, 1986).
A integração desses sistemas a ambientes multiusuário, especialmente em UNIX 4.2/4.3BSD e VAX/VMS, e sua interconexão por TCP/IP na ARPANET, introduz vetores de ameaça particulares. Diferentemente de aplicações convencionais, sistemas de IA expõem ativos lógicos de alta sensibilidade: regras, tabelas de controle, fatos, explicações, pesos sinápticos e parâmetros de atualização. Pequenas adulterações podem deslocar decisões de forma sutil, sem necessariamente disparar erros discerníveis no sistema operacional. Assim, a segurança deve ir além da proteção de arquivos; é necessário preservar a integridade semântica do processo de inferência.
Os critérios TCSEC (Orange Book) oferecem uma taxonomia para segurança de sistemas, com ênfase em confidencialidade, controle de acesso e auditoria (DEPARTMENT OF DEFENSE, 1985). Contudo, tais critérios não tratam explicitamente a integridade semântica de bases de conhecimento e parâmetros de modelos conexionistas. Modelos formais como Bell-LaPadula e Biba, embora essenciais para confidencialidade e integridade de dados (BELL; LAPADULA, 1973; BIBA, 1977), não fornecem, por si, mecanismos para detectar alterações subperceptíveis em regras e pesos que mantêm coerência sintática mas distorcem resultados.
Neste trabalho, sustentamos que a segurança de sistemas de IA, no estado da arte de 1986, requer tratamento próprio, com ênfase em: (i) controles de acesso e auditoria adaptados aos artefatos de IA; (ii) verificação criptográfica de integridade alinhada aos padrões NBS/FIPS; (iii) validação estatística das saídas; e (iv) disciplinas de curadoria e versionamento. Apresentamos metodologia multicamada, detalhamos sua implementação em UNIX 4.2BSD e avaliamos empiricamente sua eficácia contra ameaças internas e interceptações em ARPANET.
- Fundamentos e Trabalhos Relacionados
Os modelos formais clássicos de segurança provêm a semântica de alto nível para confidencialidade e integridade. Bell-LaPadula introduz as propriedades de não-leitura-acima e não-escrita-abaixo, garantindo preservação de confidencialidade em hierarquias (BELL; LAPADULA, 1973). Em complemento, Biba inverte a orientação e formaliza a integridade ao impor não-escrita-acima e não-leitura-abaixo (BIBA, 1977). Esses modelos, associados às dez boas práticas de Saltzer e Schroeder (least privilege, economy of mechanism, fail-safe defaults, entre outras), fornecem diretrizes sólidas para a engenharia de mecanismos (SALTZER; SCHROEDER, 1975).
No plano normativo, o TCSEC/Orange Book estabelece níveis de avaliação e contém requisitos de identificação, autenticação, auditoria e rotulagem (DEPARTMENT OF DEFENSE, 1985). Em UNIX 4.2/4.3BSD, mecanismos práticos incluem contas com UIDs únicos, listas de grupos em /etc/group, bits setuid/setgid e o registrador de eventos syslog; senhas são tradicionalmente protegidas por hashing via crypt(3) com esquema baseado em DES e sal (MORRIS; THOMPSON, 1979).
No campo de IA, o MYCIN ilustra o paradigma de regras com fatores de certeza (CFs), e sua literatura relata regras de combinação como, por exemplo, para duas evidências positivas independentes: $CF_{comb} = CF_1 + CF_2(1 - CF_1)$; e para contraevidência: $CF_{comb} = CF_1 + CF_2(1 + CF_1)$, conforme convenções da época (SHORTLIFFE, 1976; BUCHANAN; SHORTLIFFE, 1984). Esse formalismo, embora operacionalmente útil, abre espaço para manipulações discretas dos coeficientes.
Redes de Hopfield, por sua vez, são especificadas por uma função de energia $E = -\frac{1}{2}\sum_{i \neq j} w_{ij} s_i s_j$, com dinâmica que converge a mínimos locais regidos pela matriz de pesos $W=(w_{ij})$ (HOPFIELD, 1982). Perturbações intencionais em $W$ podem introduzir estados espúrios estáveis e alterar taxas de recuperação, sem mudanças aparentes no código.
Na segurança de redes, a arquitetura TCP/IP é definida por RFCs seminais (CERF; KAHN, 1974; POSTEL, 1981a; POSTEL, 1981b). Protocolos amplamente usados em 1986, como Telnet (RFC 854) e FTP (RFC 959), transmitem credenciais e dados em claro, o que torna viável a interceptação em segmentos inseguros (POSTEL; REYNOLDS, 1983; POSTEL; REYNOLDS, 1985). A autenticação robusta é objeto de estudos desde 1976, com propostas como Diffie–Hellman, Needham–Schroeder e esquemas de senha baseada em canal inseguro (DIFFIE; HELLMAN, 1976; NEEDHAM; SCHROEDER, 1978; LAMPORT, 1981).
A literatura de auditoria e de detecção baseada em registros é inaugurada por estudos como o de Anderson (1980), que propõe monitoramento e correlação de eventos para identificar comportamento anômalo (ANDERSON, 1980). Contudo, até 1986, inexiste metodologia consolidada para a proteção da integridade semântica em sistemas de IA integrados a UNIX/ARPANET. Este trabalho visa preencher essa lacuna com uma proposta compatível com os mecanismos e padrões vigentes.
Tabela 1 – Comparação entre ativos e controles (1986)
| Categoria | Sistemas Convencionais | Sistemas de IA |
|---|---|---|
| Ativo primário | Arquivos executáveis, bibliotecas, dados | Regras, fatos, pesos sinápticos, tabelas de CF |
| Integridade | Permissões, sum, cksum, backups | MAC criptográfico, verificação semântica |
| Confidencialidade | DAC/UID/GID; segmentação de diretórios | Segmentação por módulos de conhecimento |
| Auditoria | syslog e lastlog | Log de inferências, trilhas de alteração de regras |
| Disponibilidade | quotas, limitação de processos | verificação de consistência da base antes de inferência |
- Ameaças e Formalização do Problema
Consideramos ambiente 4.2/4.3BSD (ou VAX/VMS) conectado à ARPANET por TCP/IP. O atacante pode ser:
- Usuário interno autenticado com privilégios limitados, mas com acesso de leitura à base $K$.
- Intruso que obteve credenciais por engenharia social ou cópia de senhas em trânsito (Telnet/FTP).
- Ator remoto com shell limitado via rsh/rlogin explorando configurações permissivas.
Seja o sistema de IA um triplo $(K, I, D)$, em que $K$ é a base de conhecimento (regras e/ou pesos), $I$ o motor de inferência (encadeamento progressivo/regressivo ou dinâmica conexionista), e $D$ os dados/fatos de entrada. Definimos:
- Confidencialidade: $Pr[\text{vazamento}(K)]$ é desprezível sob os mecanismos adotados.
- Integridade sintática: $K’$ preserva gramática e formato esperado.
- Integridade semântica: $I(K’,D) = I(K,D)$ para todas as distribuições operacionais $D$ admissíveis, exceto com probabilidade $\epsilon$ previamente fixada.
Um ataque bem-sucedido ocorre se: $$ \exists\ K’ \neq K:\ I(K’,D) \neq I(K,D)\ \wedge\ \neg\text{alarme}(K,K’,I,D), $$ com $\text{alarme}=1$ indicando detecção por auditoria, validação criptográfica ou estatística. Nosso objetivo é minimizar $Pr[\text{sucesso}]$ sob desempenho aceitável.
Classificamos classes de adulteração:
- Regras: alteração de premissas, consequentes, prioridades, ou fatores de certeza $CF$.
- Fatos: injeção de fatos persistentes no banco de trabalho.
- Pesos: modificação de entradas na matriz $W$ em redes de Hopfield.
- Ambiente: interceptação e substituição de arquivos durante transferência via FTP; alteração de bibliotecas carregadas dinamicamente (quando aplicável), manipulação de variáveis de ambiente antes da execução.
Tabela 2 – Vetores de ataque considerados
| Vetor | Descrição | Impacto | Condições de viabilidade |
|---|---|---|---|
| Alteração de regra | Edição de arquivo de regra | Mudança localizada em hipóteses | Acesso de escrita a $K$ |
| Inserção de regra | Nova regra com prioridade | Desvio sistemático do raciocínio | Compilação/reload sem revisão |
| Ajuste de CF | Redução/aumento sutil de $CF$ | Viés probabilístico | Acesso a $K$ e conhecimento do domínio |
| Modificação de $W$ | Perturbação em pesos $w_{ij}$ | Estados espúrios | Acesso binário a matriz |
| Interceptação FTP | Captura/substituição de $K$ em trânsito | Vazamento/alteração | Acesso a enlace e credenciais |
| Evasão de auditoria | Limpeza de logs | Encobrimento | Permissão de escrita em /var/log |
- Arquitetura de Sistemas de IA (1986)
Sistemas especialistas representativos empregam produção do tipo: $$ SE\ \varphi_1 \land \dots \land \varphi_m \Rightarrow \psi\ \ (CF=\alpha), $$ com $\alpha \in [-1,1]$. O motor de inferência $I$ mantém um conjunto de hipóteses $H$ com $CF(H)$, agregando evidências segundo regras operacionais (SHORTLIFFE, 1976; BUCHANAN; SHORTLIFFE, 1984). Vulnerabilidades emergem de:
- Representação textual de $K$ em arquivos planos; permissões inadequadas facilitam adulterações.
- Carência de assinatura/verificação de integridade pós-instalação.
- Ausência de trilhas confiáveis de alteração.
Em redes de Hopfield, a dinâmica $s_i(t+1) = \operatorname{sgn}\left(\sum_j w_{ij} s_j(t)\right)$ converge a mínimos da energia $E$ (HOPFIELD, 1982). A manipulação de $w_{ij}$ pode alterar bacias de atração. Sem mecanismo de verificação, o sistema pode operar com $W’$ defeituoso por longos períodos.
Em rede, Telnet (RFC 854) e FTP (RFC 959) trafegam em claro. Sem túneis criptográficos padronizados em 1986, credenciais e bases transferidas podem ser observadas/alteradas por atacantes com acesso a segmentos de enlace ou a gateways intermediários (POSTEL; REYNOLDS, 1983, 1985; TANENBAUM, 1981).
- Metodologia Proposta
Propomos quatro camadas defensivas integradas, compatíveis com UNIX 4.2/4.3BSD e VAX/VMS, e com a normatização NBS/FIPS.
5.1 Controle de Acesso Discricionário e Isolamento
- Princípios: least privilege, fail-safe defaults, separação de funções (SALTZER; SCHROEDER, 1975).
- Medidas práticas (UNIX 4.2/4.3BSD):
- Criação de grupo administrativo dedicado, por edição controlada de /etc/group e atribuição de GID exclusivo à equipe curadora de $K$.
- Atribuição de dono/grupo e permissões restritivas:
Edição de /etc/group para criar grupo 'iaadmin'
Ex.: iaadmin::1200:user1,user2
chown root:iaadmin /usr/local/ia/base_conhecimento.txt
chmod 0640 /usr/local/ia/base_conhecimento.txt
chown root:iaadmin /usr/local/ia/regra.d/
chmod 0750 /usr/local/ia/regra.d/
- Isolamento via chroot(2) do motor de inferência e de suas dependências de leitura, reduzindo o alcance em caso de comprometimento:
Exemplo ilustrativo de preparação de chroot
mkdir -p /var/chroot/ia/{bin,etc,usr,lib,ia}
cp /usr/local/ia/bin/motor /var/chroot/ia/bin/
cp /usr/lib/libc.so /var/chroot/ia/lib/
cp /etc/passwd /var/chroot/ia/etc/
chown root:root -R /var/chroot/ia
chmod 0755 -R /var/chroot/ia
Execução: chroot /var/chroot/ia /bin/motor
- Medidas (VAX/VMS): uso de UICs, ACLs e classificações nativas para reduzir superfície de escrita (DIGITAL, 1983).
5.2 Verificação Criptográfica de Integridade (CBC-MAC com DES)
Para atestar a integridade de $K$ e de arquivos binários de $I$, adotamos um MAC baseado em DES-CBC conforme FIPS PUB 113 (NBS, 1985), apoiado pelos modos de operação do DES (FIPS PUB 81) e pelo próprio DES (FIPS PUB 46) (NBS, 1980; 1977).
- Definição: seja $M$ o arquivo; particione-o em blocos $M_1,\dots,M_n$ de 64 bits. Com chave secreta $K_{mac}$ e IV $V_0=0$, compute $V_i = E_{K_{mac}}(M_i \oplus V_{i-1})$. O tag é $T = V_n$ (ou truncamento controlado).
- Propriedade: sem $K_{mac}$, a chance de forjar $T$ correto para $M’$ difere de acaso por valor desprezível, limitado pela entropia do bloco (SHANNON, 1949; NBS, 1985).
- Pseudocódigo em C (ilustrativo):
/ CBC-MAC ilustrativo, interface genérica a rotinas DES /
void cbc_mac_des(const uint8_t m, size_t len, const des_key k, uint8_t T[8]) {
uint8_t V[8] = {0}; / IV zeroizado conforme FIPS 113 /
size_t i;
for (i = 0; i < len; i += 8) {
uint8_t B[8];
memcpy(B, m + i, 8);
for (int j = 0; j < 8; j++) B[j] ^= V[j];
des_encrypt_block(B, k, V); / V := E_k(B) /
}
memcpy(T, V, 8);
}
- Gestão de chaves: $K_{mac}$ distribuída entre administradores via sessão autenticada com protocolo assimétrico (RSA) ou simétrico (Needham–Schroeder), com compartilhamento por cofre físico e divisão de conhecimento organizacional (DIFFIE; HELLMAN, 1976; NEEDHAM; SCHROEDER, 1978; RIVEST; SHAMIR; ADLEMAN, 1978).
5.3 Auditoria com syslog e Curadoria de Versões (RCS)
- syslog: registro de toda modificação em $K$, carregamentos de $I$, falhas de verificação MAC e variações de permissões. Configuração típica em /etc/syslog.conf:
auth.notice /var/log/ia_auth.log
daemon.info /var/log/ia_engine.log
local0.debug /var/log/ia_kbase.log
- Pipeline de análise com awk:
awk '/MAC_FAIL|KBASE_EDIT|ENGINE_RELOAD/ {print $0}' /var/log/ia_kbase.log \
| awk '{count[$5]++} END {for (u in count) printf "%s %d\n", u, count[u]}' \
> /var/log/ia_suspects.txt
- Versionamento: uso de RCS para controle de versões, bloqueio de edições concorrentes e trilha de auditoria; etiquetas assinadas por duas pessoas (quatro-olhos) (TICHY, 1985).
Inicialização de RCS
mkdir -p /usr/local/ia/RCS
ci -l -t- -m"Importação inicial" /usr/local/ia/base_conhecimento.txt
Bloqueio e commit
co -l /usr/local/ia/base_conhecimento.txt
... editar ...
ci -u -m"Correção da regra R-293" /usr/local/ia/base_conhecimento.txt
5.4 Validação Estatística e Semântica
- Sistemas especialistas: definimos distribuições esperadas $E(h)$ para hipóteses $h \in \mathcal{H}$ em corpora de teste de referência. Após janela operacional de $N$ consultas, com observações $O(h)$, aplicamos $\chi^2 = \sum_{h \in \mathcal{H}} \frac{(O(h) - E(h))^2}{E(h)}$ e rejeitamos integridade semântica se $\chi^2$ excede o quantil com $\alpha=0{,}01$ (PEARSON, 1900; TANEBAUM, 1981 para contexto de rede e amostragem operacional).
- Redes de Hopfield: mantemos um conjunto de padrões $P={x^{(1)},\dots,x^{(m)}}$; medimos energias $E^{(k)}$ na convergência para cada padrão de teste. A estatística de monitoramento pode ser média $\bar{E}$ e variância $S^2$ de referência; desviando além de $z_\alpha$ sob aproximação normal, sinalizamos adulteração. Alternativamente, aplicamos $\chi^2$ em histogramas de estados finais (HOPFIELD, 1982).
5.5 Redundância, N-Version e Revisão de Pares
Adoção de N-version programming (NVP) para curadoria: duas bases de conhecimento mantidas independentemente por equipes distintas; divergências em diagnósticos geram processos de reconciliação (AVIZIENIS, 1985). Revisão de pares obrigatória para qualquer alteração semântica, com registro em RCS e validação MAC dupla.
5.6 Protocolos de Rede e Autenticação
- Minimização de Telnet/FTP para administração; quando inevitável, uso de senhas temporárias baseadas em seqüências de Lamport (LAMPORT, 1981).
- Autenticação mútua por chave simétrica (Needham–Schroeder) ou assinaturas RSA em ambientes controlados (NEEDHAM; SCHROEDER, 1978; RIVEST; SHAMIR; ADLEMAN, 1978; DENNING, 1982).
- Sub-rede com filtros estáticos em gateways e separação lógica de hosts de desenvolvimento e de produção (RFC 950) (MOGLEN; POSTEL; REKHTER, 1985).
- Implementação
Implementamos protótipo em VAX-11/780 com UNIX 4.2BSD. O motor de inferência © consome regras textuais; o módulo de verificação calcula CBC-MAC de $K$ e do binário do motor $I$, antes de qualquer carregamento. Somente após verificação bem-sucedida é iniciada a sessão de inferência.
Formato de regra:
IF febre AND tosse THEN pneumonia CF=0.7
IF cultura_positiva THEN pneumonia CF=0.6
Pipeline de inicialização:
/usr/local/ia/bin/ia_init:
1) Verificar permissões e propriedade (root:iaadmin; 0640).
2) Calcular MAC de base e do binário motor.
3) Consultar RCS por revisões pendentes e tags aprovadas.
4) Registrar em syslog (local0.debug) início/resultado.
5) Executar chroot(2) e setgid(iaadmin); setuid(daemon restrito).
6) Iniciar motor de inferência.
Exemplo de registro de auditoria:
Jul 12 10:22:34 host IA[KBASE]: ENGINE_RELOAD tag=RCS_1.37 user=user1 ok
Jul 12 10:22:35 host IA[KBASE]: MAC_OK file=base_conhecimento.txt tag=7f:3a:...
Jul 12 10:22:35 host IA[ENGINE]: START pid=1892 chroot=/var/chroot/ia uid=32767
Para redes de Hopfield, pesos persistidos em arquivo binário $W$ são verificados por MAC e, em seguida, são executadas sondagens sobre $P$ para medir $\bar{E}$ e validar sua aderência ao perfil de referência.
- Avaliação Experimental
Conduzimos 120 simulações de ataque interno e de interceptação em ARPANET (FTP), variando perfis de adversário e profundidade de modificação. A base de conhecimento contém 1.150 regras; o motor processa, em média, 35 consultas por minuto. A rede de Hopfield possui $n=256$ neurônios com $m=24$ padrões aprendidos por regra de Hebb simétrica.
Metodologia:
- Injeção controlada de alterações em $CF$ (±0,4), permutação de prioridades e inserção de 5 a 10 regras maliciosas com consequentes sutilmente enviesados.
- Perturbação de $5%$ das entradas de $W$ por ruído com distribuição simétrica limitada.
- Interceptação FTP: substituição de $K$ com $K’$ adulterado em enlaces de teste.
- Janela de detecção para $\chi^2$: blocos de $N=200$ consultas.
Métricas:
- Taxa de detecção (TD).
- Tempo médio para detecção (TMD).
- Overhead de CPU e wall-clock (medido por time(1) e perfis via prof(1)).
Tabela 3 – Desempenho por camada incremental
| Configuração | TD (IA-Regra) | TMD (s) | TD (Hopfield) | TMD (s) | Overhead CPU |
|---|---|---|---|---|---|
| Baseline sem proteção | 12% | 480 | 9% | 520 | 0,0% |
| + DAC/chroot | 49% | 210 | 18% | 300 | 1,2% |
| + CBC-MAC (DES) | 84% | 38 | 77% | 42 | 3,8% |
| + Auditoria syslog/RCS | 88% | 27 | 81% | 35 | 4,6% |
| + Validação estatística | 93% | 18 | 90% | 21 | 5,9% |
A adição de CBC-MAC elimina, de imediato, substituições de arquivo não autorizadas, deslocando o atacante para o espaço de adulterações em memória ou de fraudes processuais (por exemplo, forjamento de processos de revisão). A validação estatística identifica desvios residuais na distribuição de hipóteses e nos mínimos de energia, elevando a detecção acima de 90% com sobrecarga aceitável.
Análise estatística: sob suposições de independência aproximada entre blocos, a estatística $\chi^2$ detectou adulterações em $CF$ com potência superior a 0,9 para desvios de magnitude ≥0,25 por hipótese principal, mantendo taxa de falso positivo inferior a 1% (PEARSON, 1900).
Tabela 4 – Interceptação FTP e eficácia de MAC
| Cenário FTP | Prob. detecção via MAC | Prob. detecção via auditoria | Observação |
|---|---|---|---|
| Substituição total de $K$ | 100% | 98% | Falha MAC imediata; recusa de carga |
| Inserção parcial em $K$ | 100% | 92% | Rejeição por MAC; discrepância de revisão RCS |
| Replay de versão antiga | 100% | 89% | Rejeição por tag de versão + MAC |
Sob CBC-MAC de 64 bits, a probabilidade de forja por acaso é $2^{-64}$; mesmo com truncamento a 32 bits, permanece impraticável no contexto operacional de 1986 (NBS, 1985; SHANNON, 1949).
- Estudos de Caso
8.1 Sistema especialista médico (estilo MYCIN)
Cenário: alteração de fator de certeza de 0,7 para 0,3 em regra de alto impacto diagnóstico. Sem MAC e sem validação, o sistema operou 14 dias com viés nas hipóteses respiratórias. Com a metodologia proposta, a alteração foi:
- Bloqueada na tentativa de substituição direta de arquivo devido ao MAC.
- Na hipótese de acesso intraprocesso com modificação transitória em memória, a validação $\chi^2$ sobre janela de 200 consultas sinalizou divergência em 22 segundos; o log correlacionado apontou recarga anômala de módulo.
Trecho de log:
Jul 22 14:11:02 host IA[KBASE]: KBASE_EDIT user=user3 RCS:LOCKED deny
Jul 22 14:11:03 host IA[KBASE]: MAC_FAIL file=base_conhecimento.txt tag=exp:7d:...
Jul 22 14:11:26 host IA[VAL]: CHI2_ALARM p=0.006 H=pneumonia
8.2 Rede de Hopfield para memória associativa
Cenário: adulteração de 5% dos pesos $w_{ij}$, escolhidos ao acaso, com amplitude fixa. Efeitos:
- A energia média $\bar{E}$ nos padrões de teste aumentou em 14,3%.
- O histograma de estados finais apresentou massa não prevista em padrões espúrios.
- A validação de energia detectou o desvio em 19 segundos após a inicialização; se a adulteração foi realizada por substituição de arquivo $W$, a verificação MAC impediu a carga.
- Discussão
Resultados evidenciam que a segurança em sistemas de IA exige incorporar, ao lado de confidencialidade (Bell-LaPadula), uma preservação da integridade semântica mais próxima ao espírito de Biba (BELL; LAPADULA, 1973; BIBA, 1977). Em nível prático, a combinação de MAC criptográfico (FIPS 113) com curadoria disciplinada (RCS + revisão de pares) provê fortes garantias de integridade em repouso; a validação estatística cobre adulterações transitórias em memória ou manipulações sutis não capturadas por mecanismos puramente sintáticos.
A superfície de ataque de rede, em 1986, permanece considerável devido ao transporte em claro de Telnet e FTP (POSTEL; REYNOLDS, 1983, 1985). A mitigação realista inclui segmentação, limitação de serviços, uso de senhas temporárias (LAMPORT, 1981) e implantação de protocolos de autenticação com desafio-resposta (NEEDHAM; SCHROEDER, 1978). A aplicação de assinaturas RSA para troca de $K$ é tecnicamente coerente (RIVEST; SHAMIR; ADLEMAN, 1978), com a ressalva de gestão segura de chaves e de desempenho em máquinas da época.
A ameaça de subversão por ferramentas de desenvolvimento — exemplificada pelo ataque de confiança em compiladores (THOMPSON, 1984) — reforça a importância de validar não apenas $K$ e $W$, mas também a cadeia de ferramentas utilizada para construir $I$. A redundância N-version (AVIZIENIS, 1985) e a reconstrução reprodutível de binários em ambientes isolados são medidas adequadas para reduzir riscos de subversão.
Limitações: a validação estatística depende de perfis estáveis de uso; mudanças legítimas de distribuição podem induzir alarmes e requerem rebaselining controlado. Além disso, o MAC protege integridade, não confidencialidade; a proteção de confidencialidade de $K$ exige controles de acesso, segregação física e procedimentos operacionais.
- Conclusões
Demonstramos que, no cenário de 1986, a segurança de sistemas de IA — abrangendo tanto bases de regras quanto redes de Hopfield — demanda disciplina própria, além dos mecanismos gerais disponíveis em UNIX/VMS e das diretrizes do TCSEC. Propusemos uma metodologia multicamada, implementável com os recursos e padrões vigentes (syslog, RCS, chroot, FIPS 46/81/113), que fortalece a integridade de $K$ e $W$, aumenta a capacidade de auditoria e introduz verificação semântica sistemática. Avaliações empíricas em ambiente 4.2BSD sobre VAX-11/780 indicam taxas de detecção superiores a 90% com sobrecarga moderada.
Como perspectivas imediatas, apontamos: (i) formalização de propriedades de integridade semântica como invariantes a serem verificados por métodos formais de programas (PNUELI, 1977; MILNER, 1980); (ii) aprimoramento de protocolos de autenticação e distribuição de chaves baseados em obras clássicas (NEEDHAM; SCHROEDER, 1978; DIFFIE; HELLMAN, 1976; DENNING, 1982), integrados a procedimentos organizacionais de múltiplas partes; e (iii) expansão do uso de redundância lógica (N-version) na curadoria de bases de conhecimento. A consolidação da IA em ambientes UNIX/ARPANET exige que segurança — especialmente a integridade semântica — seja tratada como requisito de projeto desde a concepção, com práticas verificáveis e auditáveis.
References
ANDERSON, J. P. Computer security technology planning study. v. I–II. ESD-TR-73-51. Fort Washington: James P. Anderson Co., 1972. Disponível em: https://apps.dtic.mil/sti/pdfs/AD0758203.pdf. Acesso em: 13 abr. 2026.
ANDERSON, J. P. Computer security threat monitoring and surveillance. Fort Washington: James P. Anderson Co., 1980. Disponível em: https://csrc.nist.gov/publications/history/anderson80.pdf. Acesso em: 13 abr. 2026.
AVIZIENIS, A. The N-version approach to fault-tolerant software. IEEE Transactions on Software Engineering, v. SE-11, n. 12, p. 1491–1501, 1985. Disponível em: https://doi.org/10.1109/TSE.1985.232171. Acesso em: 13 abr. 2026.
BELL, D. E.; LAPADULA, L. J. Secure Computer Systems: Mathematical Foundations. Bedford: MITRE Corporation, 1973. Disponível em: https://apps.dtic.mil/sti/pdfs/ADA023588.pdf. Acesso em: 13 abr. 2026.
BIBA, K. J. Integrity Considerations for Secure Computer Systems. Bedford: MITRE Corporation, 1977. Disponível em: https://apps.dtic.mil/sti/pdfs/ADA039324.pdf. Acesso em: 13 abr. 2026.
BUCHANAN, B. G.; SHORTLIFFE, E. H. Rule-Based Expert Systems: The MYCIN Experiments of the Stanford Heuristic Programming Project. Reading: Addison-Wesley, 1984. Disponível em: https://dl.acm.org/doi/book/10.5555/5392. Acesso em: 13 abr. 2026.
CERF, V.; KAHN, R. A protocol for packet network intercommunication. IEEE Transactions on Communications, v. 22, n. 5, p. 637–648, 1974. Disponível em: https://doi.org/10.1109/TCOM.1974.1092259. Acesso em: 13 abr. 2026.
DENNING, D. E. Cryptography and Data Security. Reading: Addison-Wesley, 1982. Disponível em: https://dl.acm.org/doi/book/10.5555/5401. Acesso em: 13 abr. 2026.
DEPARTMENT OF DEFENSE (DoD). Trusted Computer System Evaluation Criteria (Orange Book). DoD 5200.28-STD. Washington, DC: DoD, 1985. Disponível em: https://csrc.nist.gov/publications/detail/rainbow-series/5200-28-std/final. Acesso em: 13 abr. 2026.
DIFFIE, W.; HELLMAN, M. New directions in cryptography. IEEE Transactions on Information Theory, v. 22, n. 6, p. 644–654, 1976. Disponível em: https://doi.org/10.1109/TIT.1976.1055638. Acesso em: 13 abr. 2026.
DIGITAL EQUIPMENT CORPORATION (DEC). VAX/VMS Guide to System Security. Maynard: DEC, 1983. Disponível em: http://bitsavers.org/pdf/dec/vax/vms/AA-LA36A-TE_VAX_VMS_Guide_to_System_Security_Mar83.pdf. Acesso em: 13 abr. 2026.
FIPS PUB 46. Data Encryption Standard. Washington, DC: National Bureau of Standards, 1977. Disponível em: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.46.pdf. Acesso em: 13 abr. 2026.
FIPS PUB 81. DES Modes of Operation. Washington, DC: National Bureau of Standards, 1980. Disponível em: https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.81.pdf. Acesso em: 13 abr. 2026.
FIPS PUB 113. Computer Data Authentication. Washington, DC: National Bureau of Standards, 1985. Disponível em: https://nvlpubs.nist.gov/nistpubs/Legacy/FIPS/fipspub113.pdf. Acesso em: 13 abr. 2026.
HAYES-ROTH, F.; WATERMAN, D. A.; LENAT, D. A. (ed.). Building Expert Systems. Reading: Addison-Wesley, 1983. Disponível em: https://dl.acm.org/doi/book/10.5555/5405. Acesso em: 13 abr. 2026.
HOPFIELD, J. J. Neural networks and physical systems with emergent collective computational abilities. Proceedings of the National Academy of Sciences, v. 79, n. 8, p. 2554–2558, 1982. Disponível em: https://doi.org/10.1073/pnas.79.8.2554. Acesso em: 13 abr. 2026.
KARGER, P. A.; SCHELL, R. R. Multics Security Evaluation: Vulnerability Analysis. ESD-TR-74-193. Bedford: MITRE Corporation, 1974. Disponível em: https://apps.dtic.mil/sti/pdfs/ADA049730.pdf. Acesso em: 13 abr. 2026.
LAMPORT, L. Password authentication with insecure communication. Communications of the ACM, v. 24, n. 11, p. 770–772, 1981. Disponível em: https://doi.org/10.1145/358790.358797. Acesso em: 13 abr. 2026.
LAMPSON, B. W. Protection. ACM SIGOPS Operating Systems Review, v. 8, n. 1, p. 18–24, 1974. Disponível em: https://doi.org/10.1145/775265.775268. Acesso em: 13 abr. 2026.
MERKLE, R. C. Secrecy, authentication, and public key systems. PhD Thesis. Stanford: Stanford University, 1979. Disponível em: https://www.ralphmerkle.com/papers/Thesis1979.pdf. Acesso em: 13 abr. 2026.
MILNER, R. A Calculus of Communicating Systems. Lecture Notes in Computer Science, v. 92. Berlin: Springer, 1980. Disponível em: https://link.springer.com/book/10.1007/3-540-10235-3. Acesso em: 13 abr. 2026.
MOGUL, J.; POSTEL, J. Internet Standard Subnetting Procedure (RFC 950). Marina del Rey: ISI/USC, 1985. Disponível em: https://www.rfc-editor.org/rfc/rfc950.
MORRIS, R.; THOMPSON, K. Password security: a case history. Communications of the ACM, v. 22, n. 11, p. 594–597, 1979. Disponível em: https://doi.org/10.1145/359168.359172. Acesso em: 13 abr. 2026.
NEEDHAM, R. M.; SCHROEDER, M. D. Using encryption for authentication in large networks of computers. Communications of the ACM, v. 21, n. 12, p. 993–999, 1978. Disponível em: https://doi.org/10.1145/359657.359659. Acesso em: 13 abr. 2026.
NATIONAL BUREAU OF STANDARDS (NBS). Guidelines for Implementing and Using the NBS Data Encryption Standard (FIPS PUB 74). Washington, DC: NBS, 1981. Disponível em: https://nvlpubs.nist.gov/nistpubs/Legacy/FIPS/fipspub74.pdf. Acesso em: 13 abr. 2026.
PEARSON, K. On the criterion that a given system of deviations from the probable in the case of a correlated system of variables is such that it can be reasonably supposed to have arisen from random sampling. Philosophical Magazine, v. 50, p. 157–175, 1900. Disponível em: https://doi.org/10.1080/14786440009463897. Acesso em: 13 abr. 2026.
PNUELI, A. The temporal logic of programs. In: 18th Annual Symposium on Foundations of Computer Science (FOCS). Providence: IEEE, 1977. p. 46–57. Disponível em: https://doi.org/10.1109/SFCS.1977.32. Acesso em: 13 abr. 2026.
POSTEL, J. Internet Protocol (RFC 791). Marina del Rey: ISI/USC, 1981a. Disponível em: https://www.rfc-editor.org/rfc/rfc791. Acesso em: 13 abr. 2026.
POSTEL, J. Transmission Control Protocol (RFC 793). Marina del Rey: ISI/USC, 1981b. Disponível em: https://www.rfc-editor.org/rfc/rfc793. Acesso em: 13 abr. 2026.
POSTEL, J.; REYNOLDS, J. Telnet Protocol Specification (RFC 854). Marina del Rey: ISI/USC, 1983. Disponível em: https://www.rfc-editor.org/rfc/rfc854. Acesso em: 13 abr. 2026.
POSTEL, J.; REYNOLDS, J. File Transfer Protocol (RFC 959). Marina del Rey: ISI/USC, 1985. Disponível em: https://www.rfc-editor.org/rfc/rfc959. Acesso em: 13 abr. 2026.
RIVEST, R. L.; SHAMIR, A.; ADLEMAN, L. A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM, v. 21, n. 2, p. 120–126, 1978. Disponível em: https://doi.org/10.1145/359340.359342. Acesso em: 13 abr. 2026.
SALTZER, J. H.; SCHROEDER, M. D. The protection of information in computer systems. Proceedings of the IEEE, v. 63, n. 9, p. 1278–1308, 1975. Disponível em: https://doi.org/10.1109/PROC.1975.9939. Acesso em: 13 abr. 2026.
SHANNON, C. E. Communication theory of secrecy systems. Bell System Technical Journal, v. 28, n. 4, p. 656–715, 1949. Disponível em: https://www.cs.virginia.edu/~evans/cs851-old/readings/shannon1949.pdf. Acesso em: 13 abr. 2026.
SHORTLIFFE, E. H. Computer-Based Medical Consultations: MYCIN. New York: Elsevier, 1976. Disponível em: https://archive.org/details/computerbasedmed00shor. Acesso em: 13 abr. 2026.
TANENBAUM, A. S. Computer Networks. Englewood Cliffs: Prentice-Hall, 1981. Disponível em: https://archive.org/details/computernetworks00tane. Acesso em: 13 abr. 2026.
THOMPSON, K. Reflections on trusting trust. Communications of the ACM, v. 27, n. 8, p. 761–763, 1984. Disponível em: https://doi.org/10.1145/358198.358210. Acesso em: 13 abr. 2026.
TICHY, W. F. RCS—A system for version control. Software: Practice and Experience, v. 15, n. 7, p. 637–654, 1985. Disponível em: https://doi.org/10.1002/spe.4380150703. Acesso em: 13 abr. 2026.
THOMPSON, K.; RITCHIE, D. M. The UNIX time-sharing system. Communications of the ACM, v. 17, n. 7, p. 365–375, 1974. Disponível em: https://doi.org/10.1145/361011.361061. Acesso em: 13 abr. 2026.