Estes comandos não têm a mesma fronteira de execução:

proxychains4 sudo command
sudo proxychains4 command

O Proxychains-ng providencia a pré-carga de uma biblioteca no programa de destino. No Linux, executar um programa set-user-ID como o sudo aciona as regras de segurança do carregador, que removem as variáveis relevantes de carregamento de bibliotecas antes que o sudo possa preservá-las.

Por consequência, “preservar mais ambiente” não é um reparo confiável para colocar o sudo dentro do wrapper. O manual do sudoers descreve explicitamente que variáveis como LD_* são removidas antes de o sudo começar.

Se um comando realmente exige a conta de destino, inicie o wrapper nesse contexto autorizado. Depois verifique qual configuração ele lê: o sudo pode alterar HOME, PATH e o arquivo aplicável por usuário. Uma invocação sem privilégios que funciona não estabelece que o root escolheu a mesma lista de proxies.

Prefira a interface de proxy nativa do programa quando ele oferece uma. Isso evita depender da interceptação para uma solicitação que o programa já sabe encaminhar.

Também mantenha em vista os limites de cobertura do proxychains. Sua mensagem de inicialização prova que o wrapper começou; ela não estabelece que pacotes brutos, chamadas não suportadas ou um processo de aplicação já existente iniciado separadamente usaram sua biblioteca. Confirme a operação de rede que você pretendia encaminhar pelo proxy, em vez de tratar o privilégio de root como prova de que toda operação foi interceptada.

Artigos relacionados