제목보고 놀라시지 않으셨는지... 저도 금방 놀랐습니다.
우찌된 일인고 하니...
1. Windows7을 깔아 봤습니다.
2. 알약을 깔았습니다.
3. Delphi7을 깔아 봤습니다.
4. Speedup 설치했습니다.
5. GExpert 설치했습니다. 여기까지 test를 위해 한 모든것!
그런데!!!
단순히 New Application 하고 TForm위에 TButton만 올린상태에서
(<- 이 부분이 중요! 다른 component올리면안됨 오로지 TButton만)
컴파일하는 순간 알약에서 Trojan.Generic.1064383 이라고 가차없이 바이러스로
간주합니다. (100프롭니다 ㅠㅜ)
그런데!!! 더 이상한것은 여기에 다른 Component를 올려놓고 컴파일 하는 순간
바이러스가 아니랍니다. 괴상한 현상이군요!!! (이것또한 100프롭니다 ㅠㅜ)
TBitBtn은 또 아니랍니다. ㅎㅎ
test판이라 그런가?!!!.... 내가보기엔 분명합니다.
추가 수정합니다!!! 금방요 TButton 2개를 올리고 컴파일하면 또 바이러스 아니랍니다. ㅋㅋ 진짭니다. 미치겠군요
새로운 환경으로 옮기기위한 test 험난합니다. ㅠㅜ
또, TButton 2개 올려놓고 컴파일한뒤 TButton 1개 빼고 컴파일아면 또 아니랍니다.
완전 알약이 쇼를 하는 건가요?!! 내 컴퓨터가 문젠가요~
|
-------------------------------------------------
정확하게 말하자면 백신의 버그입니다. 모든 백신들은 패턴 검사를 하기 때문에, 실제 동작하는 코드를 인식하는 것이 아니라 샘플로 가지고 있는 바이너리 바이트 배열을 바이러스로 인식합니다. 하지만 이런 경우는 크게 백신의 문제로 따지기 힘든 것이.. 어쩔 수 없는 백신의 기술적 한계라서 그렇습니다. 특정 코드를 써서 바이러스로 인식시키는 경우는 무궁무진하게 나올 수 있기 때문입니다.
개발툴의 특성상, 모든 컴파일러들은 원하는 어떤 바이너리 코드든 만들어낼 수 있겠지요. (엄밀하게 말하자면, VB나 닷넷 같은 p코드 컴파일러는 제외) 고의적으로 바이러스로 인식되는 패턴을 만들어내기는 얼마든지 가능하구요.
-------------------------------------------------
말씀하신 테스트 환경에서 만들어내는 코드가, 우연히도 알약에서 바이러스로 감지하는 바이너리 패턴과 일치했기 때문에 생긴 일이구요. 기술적으로 엄밀히 따지자면 분명히 알약의 버그이긴 하지만, 이걸 알약의 버그로 레포트하느냐 마느냐도 좀 애매하네요.