terça-feira, fevereiro 14, 2017

Kaspersky e Adobe Descem um Degrau

Estava eu fazendo mais um destes projetinhos internos no trabalho... Um programa para ler alguns arquivos texto e consolidar algumas informações. Meio que por brincadeira, resolvi gravar o resultado em um arquivo PDF, usando o PdfSharp (uma biblioteca .Net para gerar arquivos PDF). Durante os testes eu estava abrindo manualmente o arquivo gerado para ver o resultado. Depois da terceira vez já estava cansativo. Daí eu resolvi usar uma ideia de um tutorial: abrir automaticamente o PDF, através de Process.Start("resultado.pdf").  Nada de muito especial, só aproveitar o fato do Windows ter uma associação da extensão pdf a um programa (no caso o Adobe Acrobat Reader).

O resultado? O Kaspersky Anti-Virus acusou o meu programa de ser um Cavalo de Troia (HEUR:Trojan.Win32.Generic). Sim, amiguinhos, a heurística dele considera que abrir automaticamente um arquivo PDF é uma ação criminosa. Ação bloqueada e executável apagado sumariamente.

Eu fico em dúvida se isto reflete mais negativamente sobre o Kapersky Anti-Virus ou sobre o Adobe Acrobat Reader (se bem que cada vez menos pessoas usam o aplicativo oficial para abrir arquivos pdf).

3 comentários:

Rubem Almeida disse...

Acredito que nesse caso, o correto seria passar pelo parâmetro fileInfo o executável do AdobePDF, só então o arquivo por Arguments.

Fabricio Biazzotto disse...

Acredito que o que desencadeou a detecção de um cavalo de tróia pelo sistema de heurística do Kaspersky foi a chamada ao Process.Start().

Daniel Quadros disse...

@Rubem: O uso passando um nome de documento é perfeitamente correto, como indicado na documentação: https://msdn.microsoft.com/en-us/library/53ezey2s(v=vs.110).aspx. Inclusive funciona corretamente, uma vez liberado pelo antivírus. Isto é útil quando você quer respeitar a opção do usuário quanto ao programa padrão para abrir um determinado tipo de arquivo.

@Fabrício: Se a heurística for considerar malware quem chama Process.Start() é ainda pior (mas acho que não é isto).