C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
분야별 포럼
C++빌더
델파이
파이어몽키
C/C++
프리파스칼
파이어버드
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

자유게시판
세상 살아가는 이야기들을 나누는 사랑방입니다.
[17221] delphi7로만든 프로그램 또 바이러스로 인식!!!???
나그네 [] 5036 읽음    2009-11-13 09:15
제목보고 놀라시지 않으셨는지... 저도 금방 놀랐습니다.
우찌된 일인고 하니...
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개 빼고 컴파일아면 또 아니랍니다.
완전 알약이 쇼를 하는 건가요?!! 내 컴퓨터가 문젠가요~
박지훈.임프 [cbuilder]   2009-11-13 09:46 X
제 블로그에도 비슷한(원인은 다르지만) 글이 올라와서 답변도 그대로... (요즘 넘 바빠서리~)

-------------------------------------------------
정확하게 말하자면 백신의 버그입니다. 모든 백신들은 패턴 검사를 하기 때문에, 실제 동작하는 코드를 인식하는 것이 아니라 샘플로 가지고 있는 바이너리 바이트 배열을 바이러스로 인식합니다. 하지만 이런 경우는 크게 백신의 문제로 따지기 힘든 것이.. 어쩔 수 없는 백신의 기술적 한계라서 그렇습니다. 특정 코드를 써서 바이러스로 인식시키는 경우는 무궁무진하게 나올 수 있기 때문입니다.

개발툴의 특성상, 모든 컴파일러들은 원하는 어떤 바이너리 코드든 만들어낼 수 있겠지요. (엄밀하게 말하자면, VB나 닷넷 같은 p코드 컴파일러는 제외) 고의적으로 바이러스로 인식되는 패턴을 만들어내기는 얼마든지 가능하구요.
-------------------------------------------------

말씀하신 테스트 환경에서 만들어내는 코드가, 우연히도 알약에서 바이러스로 감지하는 바이너리 패턴과 일치했기 때문에 생긴 일이구요. 기술적으로 엄밀히 따지자면 분명히 알약의 버그이긴 하지만, 이걸 알약의 버그로 레포트하느냐 마느냐도 좀 애매하네요.
아루스 [tinydew4]   2009-11-13 09:57 X
제가 블로그에 적은 내용은

Caption := '1' + '2' + '3' + '4';

이런 코드가 V3Lite 에서 Win-Trojan/Banload.370176.B 으로 감지된다는 글인데 비슷하네요.
위에 4개 글자중 가운데 두개 문자가 문자열이 들어가면 감지를 안하고 앞 3개 또는 뒤 3개가 1문자 일때만 감지하죠.
양병규 [bkyang]   2009-11-13 11:16 X
박지훈님 말씀대로 백신의 기술적 한계로 인한 부득이한 오류가 맞습니다.

그러나... 때로는 백신들이 샘플 채취를 정교하지 못하게 하는 경우도 있습니다.

예를 들면.. 바이러스 EXE의 코드들 중에서 DFM정보가 있는 부분의 일부분을 샘플로 채취한다거나..하면 그 EXE와 디자인이 비슷하면 바이러스라고 판단할 수도 있습니다. 물론.. 이건 순전히 예를 든겁니다. 그 외에도 이미지리소스나 VCL, MFC등 플레임웍코드를 샘플로 채취한다거나..하면 안되는데.. 간혹 그런 경우도 있습니다.

어떤 경우는 플레임웍도 아니고 이미지도 아니고 순수 바이러스프로그램에서 코딩된 코드인데도 그런 경우가 있습니다. 아시다시피 프로그램코드라는게 완전히 독창적인 코드라는게 있을 수가 없지 않습니까.. 변수와 제어문 몇 개쓰고 함수 몇 개 호출해도 함수명이 바이너리 코드에 들어가는 것도 아니고 점프할 번지수만 들어가기 때문에 아주 간혹 같은 코드가 만들어질 수 있습니다.

암튼.. 바이러스 샘플을 채취할 때에는 그 바이러스만의 고유의 코드를 잘 골라내야하는데 그게 기술적으로 쉬운 일이 아니라서 그런 일이 간혹 생기곤 합니다. 백신의 입장에서보면 상당히 난감할 텐데.. 머 그래도 그게 그 샘플과 동일한 코드를 생성해 내는 델파이의 잘못이라고 할 수는 없겠죠.. 어쨋거나 백신업체가 해결해야할 부분인 것 같습니다. 그리고 이와 같은 증상은 델파이 말고 다른 개발툴에서도 생기고 있습니다.

한 때 빵집도 그렇게 오해를 산적이 있어서 문의가 많이 왔었는데.. 그냥 코드 좀 고쳐서 다시 컴파일해서 피해 갈 수도 있었습니다만.. 끝까지 고집을 부려서 백신업체에 문의하라..고 했더니.. 결국 백신업체들이 수정을 해서 해결 했었습니다. 백신업체가 해결하는게 맞습니다. (아휴~ 정말 갑갑하겠네 ^^; )
양병규 [bkyang]   2009-11-13 14:20 X
이거는 순전히 검증되지 않은 저만의 상상인데... 아마도 바이러스들을 델파이로 많이 만드는게 아닌가싶습니다... 그래서 델파이에서는 이런 일이 자주 생기는게 아닌가.... (아닌가? ㅡㅡa )
박지훈.임프 [cbuilder]   2009-11-13 16:42 X
델파이로 만든 바이러스나 악성코드가, 아주! 많지는 않지만.. 꽤 있기는 하더군요. 저도 몇몇 봤습니다.
김호광 [testcode]   2009-11-15 06:42 X
델파이로 activex 기반의 악성 코드가 많습니다. 한국인들도 많이 만들었지만 made in china 계열이 엄청납니다. 순수 델파이로된 말웨어들이 많기 때문에 이런 오진들이 늘어나는거죠
지성아빠 [raguru]   2009-11-16 14:49 X
제생각이지만 악성코드는 델파이로 제작된놈들이 많은데 반해서 백신은 VC로 많이 만들기 때문이 아닐까요?

+ -

관련 글 리스트
17221 delphi7로만든 프로그램 또 바이러스로 인식!!!??? 나그네 5036 2009/11/13
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.