2017-05-12 62 views
1

我正在用我的個人語言編寫個人編譯器。 它不只是編譯。它鏈接,它爲輸出添加資源部分。它可以一次生成完整的可執行文件,而不依賴於其他鏈接器。這究竟是一種病毒?

我一直在用一些測試輸出exe文件來測試我爲編譯器設計的函數,但後來我發現非常惱人的問題。 Avira Antiver以及許多其他防病毒程序認爲程序是病毒。

我改變了彙編代碼幾次,試圖準確地找到導致錯誤檢測的原因。這是它的最終版本。

http://attltb.mireene.com/Test.zip 然後Avira說它有TR.Crypy.XPACK.Gen ....什麼?

我的意思是,嚴肅地說,它從字面上什麼都不做。 就是這樣。

EntryPoint: 
    push dword 0 
    call dword[ExitProcess] 
    ret 

它只使用kernel32.dll中的一個函數'ExitProcess'。 (上面的ExitProcess標籤是可更改的'Import Address Table'區域中的函數指針所在的位置。)

這個程序有什麼問題?爲什麼Avira仍然認爲它是病毒? 我的exe文件圖像頭有什麼問題嗎?至少當他們沒有被Avira阻止時,我的測試程序工作得很好,但是有一些問題我不知道?

請告訴我。我對這些殺毒軟件一無所知。

回答

0

問題解決了。我做了很多小錯誤,但最大的原因是Dos Stub和PE頭之間的'富有簽名'。

http://www.ntcore.com/files/richsign.htm

所以這些查殺白癡實際上是以此來檢查一番是否是惡意軟件或不...?真是一個驚喜。這對我來說很有趣,因爲用一些假鑰騙他們很容易。 XD