ؼ ֽϴ

ǷӰԻ츮   
   ȸ 2135   õ 0    

 안녕하세요 형님들.


본격적으로 날씨가 추워졌습니다 건강 관리 유의하십시오.


저는 요즘 업무 자동화 프로그램을 만들어서 사용료를 받고 있습니다. 그런데 모 업체에서 저의 사무자동화 프로그램을 바이러스 등으로 규정하고 자기네 프로그램과 경합하게 만들어 놨습니다.


처음에는 저 자신은 제 프로그램이 바이러스가 아님을 알고 있고, 사용자의 컴퓨터에 그 어떤 해도 끼치지 않을 것이므로 그러한 경합으로부터 제 프로그램이 이기게 할 방법을 찾아가면서 싸워 왔는데 프로그램 만드는 것 보다 그 경합에 쓰는 시간이 더 많아지더군요. 자료 찾고 뭐하고 하는 것도 하루 이틀이고 너무 힘듭니다.


주변의 다른 선배 제작자들에게 물어보니 우선순위를 두고 싸울게 아니고 애초에 프로그램이 검출되지 않게 하면 더 이상 싸울 일이 없고 그게 가장 깔끔한 방법이라고 하더군요. 구체적인 방법을 물어봤는데 "개별 컴파일 하라"는 조언만 해줄 뿐 구체적인 방법은 알려주지 않더군요. 이 바닥 특성 상 서로 경쟁 상대이기 때문에 간단한 조언만 해줄 뿐 구체적인 방법은 서로 숨깁니다. 결국 스스로 방법을 찾아야 하는데요


개별 컴파일이라는 건 결국 이런 겁니다. 하나의 컴퓨터에서 단 하나의 프로그램만 돌아간다면 해당 업체에서 이 사람이 손으로 업무를 보는 건지 자동화 프로그램을 사용하는 건지 알 수 없습니다. 수십 대의 컴퓨터에서 같은 프로그램이 돌아가기 때문에 프로그램 간의 공통점을 통해서 프로그램이 검출된다는 겁니다. 그러니까 소스 코드를 컴파일 하고, 컴파일된 exe파일을 복사해서 쓰지 말고 컴파일 할 때마다 프로그램의 내부 구성 등 뭔가 정보가 다르게 끔 컴파일 하라는 건데요

그래서 이 부분에 대해 구글링 및 조사를 좀 해봤는데, 네임 스페이스를 바꾸는 것과 guid를 각각 다르게 하는 정도 외에는 유의미한 것을 찾지 못 했습니다.

특히 guid같은 경우엔 굳이 컴파일 할 때가 아니더라도, 실행 될 때마다 다르게 해 줄 수 있어서 개별 컴파일하라는 얘기와는 거리가 멀은 것 같았고.. 네임 스페이스의 경우에는 제 프로그램은 파이썬으로 제작 되었는데, 네임스페이스는 결국 __main__입니다. 그런데 __main__은 제 프로그램 뿐 아니라 파이썬으로 제작된 모든 프로그램이 별도로 개발자가 손대지 않으면 일반적으로 __main__으로 되어 있을 텐데 말이죠.


그리고 또 하나 말씀 드리고 싶은 것은, 제 프로그램을 쓰는 사람들 중 컴파일 하지 않고 vscode 에서 바로 실행하는 식으로 사용한 사람(저 포함)들은 검출이 되지 않은 반면, exe파일로 사용해온 사람들(제가 소스코드를 보여줄 수 없는 사람들입니다)은 검출이 된 것으로 보입니다. 물론 이 부분은 표본이 너무 적어서 vscode와 exe파일 간의 차이라고 확신은 할 수 없고, 그럴 수도 있다고 생각할 만한 정황이 있습니다. 조언 해 주실 때 혹시 도움이 될 수 있을것 같아서 말씀 드렸습니다.


구글링하다하다 안되고 생각 하다하다 안되서 여기다 질문 올려봅니다. 혹시 짐작가시는 방법이나 좋은 힌트 있으신 형님 계시면 부탁 드립니다.

ª ϼ ϰ.
2021-11
code obfuscate ڵ ȭ Ͻô° . Ű ãø ˴ϴ.
׸ ̸̼ py Ͻ pyo pycθ ϼŵ κ ذ˴ϴ.
̼ Ư ãƺð Ͻø ˴ϴ.
     
ǷӰԻ츮 2021-11
մϴ. ȭ Ⱑ ͼ ε, ü ڵ ҽڵ带 ° ؼ themida ؼ ؿԽϴ.

ü α׷ ϴ ȭ ̽.. themida ϴ ƴ ε

Ȥ themida븸 մϱ? ׷ٸ ߰ ִ ġ ְڽϱ?
2021-11
׸ __main__ ӽ̽ ƴմϴ. ϽŴ Ư ǹ̸ modulḛ, ̰ ̷ ǵ ʽϴ.
     
ǷӰԻ츮 2021-11
׷ϱ? ӽ̽ ؼ ãƺڽϴ.

մϴ
          
2021-11
ӽ̽ Ϲ ǹ̷ ϼ̽ϴ.
 namespace, package, module, submodule, path, class, function δ Ȯ ǹ̸ ϴ.
c ̳ʸ free function main 1 ؾ ϰ װ entry point ˴ϴ. main  namespace ȿ Ҽ ϴ.
׷ main 縦 ̷ ǵҼ .
               
ǷӰԻ츮 2021-11
մϴ namespaceؼ ãƺ ̾µ Ȯ 𸣰 ܾ ÷ȴ ǵ ̿ ãƺٰ ˾ ڳ׿

ؿ ޾ֽ ذå namespace ϸ ٸ ϴ غ ִ ġ ̴ϴ.
2021-11
̶°..  ǹ Һиؼ Ȯ 帮 ƽϴٸ.
Ͻ ش ȸ翡 α׷ hash ˻Ѵٸ α׷ ؼ( ̷ ణ ޶ hash ʽϴ) ٸ α׷ νϰ ϶ ǹ ϴ.
python 尡 Ǵ ؽð ϴٸ α׷ ̵͸ ϰ ־ ϸ մϴ.
α׷ ϴ hash ƴ ʶ ̶ ̺ ư..
     
ǷӰԻ츮 2021-11
غþϴ.

׷ غôµ, cmdâ fcɾ ̳ʸ 񱳸 غ ִ.

׷ Aڵ带 , ϵ Bexe ϰ Bexe ̳ʸ غýϴ.

翬 100% ġ߰

Aڵ带 ѹ ؼ Cexe Bexeϰ Cexe ̳ʸ غôµ
ġ߽ϴ.
ؽð̶ Ͻôϱ Ȯ ̶̰ ־ ٸ ָ ּ ؽð ޶ ְڴ ϴ.

ȿ 𸣰 ̰ ְ ݾ ٸ غڽϴ.

ǰ մϴ
     
ǷӰԻ츮 2021-11
׸ ̶ ƴϰ, ڱ α׷ 켱 ǰ °̴ϴ.
α׷ 켱 ǰԲ ؾ ϰ, ڵ鵵 α׷ 켱 DZ մϴ.
gmltj 2021-11
ũ ȵǰ ϴ .... ҹ ƴѰ??
     
ǷӰԻ츮 2021-11
ƴմϴ
          
ȯ 2021-11
, ҹ ƴ.
ϰ ֽϴ.
          
gmltj 2021-11
ũθ װ Ĵ ҹ̰ ó޴ Դϴ.... ͳݿ ˻غ Ƿʰ ֽϴ...
               
ǷӰԻ츮 2021-11
񼭴 ּż մϴٸ ũο Դϴ.

ۿ ũγİ ٴ ־µ װ 񼭴԰ ι ƴ 𸣰ڽϴٸ,

ǻ ؼ ø ̱ οϰ ʰ,

񼭴Բ DZ ִٴ κ մϴٸ, DZ DZ մϴ.

ظ ϰ ظ 䱸ϰ, ظ ϰ ڰ ̴,

츮 ȸ ֽϴ.

׷
1. 밳 DZ Ǵ ڴ ظ ǹ ϴ.
2. ظ 䱸ϴ ڰ ѹ 䱸, ϴ ظϴ 忡 õԴϴ.
3. ظ 䱸, DZ ε س ̸ ظϴ 忡 , ļ ظؾ մϴ.
4. ظ 䱸ϴ ڽ ϴ ٸ  ظ ϴ ƹ͵ ϴ.
5. 񼭴 ظ 䱸 մϴ.
׷ ̿ ظ ʿ 쿡 ʿϴٰ Ǵ ѵ 쿡 Ƿ Ѵٴ ̶ մϴ. ϸ ׳ Ѿµ ε Ʈ̹Ƿ ϴ. Ͻ Ƿʴ ˰ ϰ óϰڽϴ. մϴ.
                    
ȯ 2021-11
1. ʿ α׷̾ٸ ' ڵȭ α׷' ȣ ϴ. ü ־ Դϴ.
2. Ϲ α׷ ٸ α׷, Ư α׷ ϴ. ġ MS Word MathType ʴ ó .
3. ' ', ' ٴ Ư ' ̷ ǵ, ո ǽ Դϴ.
4. α׷̶ ȸǰ ƴ϶ ȭƮƮ û߾ մϴ. ۻ翡 ̳ʸ ñ״ĸ ϰ ó ޶ ؾ. õ ̽ϴ.
5. ± , ̹ Ͻ ϴ. ǥ ƴ ְ? Ȯ ƺ̱ մϴٸ.

2cpu ۼϽô Դϴ. ׸ е ' ٴ' ٸ 亯 Ͻ.
ǹ ǥϴ Դϴ. Ϸ 亯 ٴ Ŵٸ, ϰ Ȯ ַ ޴  մϴ.
                         
ǷӰԻ츮 2021-11
ȯ 忡 帮ڸ,

ȯԲ "" ȣϴٰ ̴µ

̴ ٽ ڸ α׷̰,  ڴٴ ٶ 鼭,

δ ڽ ˰ ٸ 𸣰 ִٴ ̴ϴ.

𸣴 ϱ?

𸣱 ʴ ڰ ̴. ϴٸ ظ ϶ 䱸 ߸ ֽϴ.

1. 𸣴 ȯ̰, ̴ ȯ Դϴ. ˰ ʰڽϴ. ˰ ʹٴ ٶ ȯ Դϴ.
2. ׿ ظ åӰ ̿ ش ˴ϴ. , ȯ ѸԸ 䱸ϼ ȯ ̳ ؾ ʴ±. ⿡ ҿǴ ð δؾ ̰.

ܿ ϰ , ̰ ⼭ ̹Ƿ 䱸Ͻ 帮ڽϴ.
α׷ ħ ǻ͸ Ѹ, ڰ ص α׷ ְ ۾ϴ â ϴ ġ ٵδ ƿƼԴϴ. ⼭ ϴ α׷ α׷ ϳ̰.

䱸 ƴϱ ϴ Ƚϴ.
' α׷', ' ٴ' ڽ ǽ ȭ ϸ ϴ Ƿ ƴմϱ? ϴ 𸣴 ε.

װ Ź ֽ 亯 մϴ.
                    
gmltj 2021-11
ǰ ̻ϰ 亯 ٽôµ.. ¶ٴ° 𸣰ڳ׿. ɵ µ ް ׿. ....
2021-11
1. ǥ: ̳ʸ  ư 𸣰 ϰ ʹ.
ڵ ȭ. themida ̹ Ŵٸ Ͻǰ ڽϴ.
2. ǥ: ̳ʸ ؽ ٸ ϰ ʹ.
ü ̳ʸ ؽ : ũƮ ó compile time txt ϴ ũƮ ְ, Ŀ ߰ϴ մϴ. ü ̳ʸ ؽ ̰ɷ ٲϴ.
Ʈ ؽ : compile time ־ մϴ. ó compile time ִ ̸ ɰ̴ϴ. Ź ϰԵǼ մϴ.
3. ǥ: ̳ʸ ٸ ϰ ʹ.
.
õ带 ึ 翬 ٲٽñ.
ü ̳ʸ ٲٱ , in/out ˰ ߿ ϰ ϴ մϴ. ˰ پ ֽϴ.
ϰ in/out ٸ Ϻη Ƽ ص ó ٲϴ.
4. ǥ: ̳ʸ ü ϰʹ.
vm ϴ.
5. ǥ: α׷ α׷ ǰ ϰ ʹ.
library/binary/event handling precedence
Ͻô, spy++ ø ̺Ʈ ڵ鷯 پִ ȮϽǼ ֽϴ. 翬 α׷ ̰ Ȯ մϴ. ׷ ڵ鷯 unregister ϰ ׺ տ register Ҽ ֽϴ.
library/binary environment variable path մϴ.
6. Ÿ: dll injection, message hooking, api hooking, ߾ ϴ° ϴ. ٵ ڵȭ α׷ ̷ Ͱ ʳ׿.

ٵ ȣ 亯 ȣմϴ.
     
ǷӰԻ츮 2021-11
Ȧ F.. մϴ. ( α׷ ϴ ) Ȯϰ 𸣴 ľ ذ 𸣰ھ ȣ ϴ.

6 ޵Ǵ ̾ ϰ ʹٰ ϴ ͵ε 1~5 ãƺ鼭 غ 帮ڽϴ

亯 ȣϴٰ ϼ̴µ ״ غ ִ ܼ ũ Ǿϴ մϴ
ö 2021-11
а Ǵµ մϴ. ΰ Żΰ?
2021-11
ڼ 亯 ȣҼ ۿ ° ´ Ű.
     
ǷӰԻ츮 2021-11
ü ۼϰڽϴ
epowergate 2021-11
 뵵 ߿ġ ʱ
Ȯ MS ޴°̴ϴ.
MS ϴ ٸ α׷ ʽϴ.

ٸ η ư ߿ ٽ ð̴ϴ.
ȮѰ MS Ͻô ̴ϴ.
     
ǷӰԻ츮 2021-11
մϴ ٷ غڽϴ
2021-11
ٵ  뵵 ñ Ͻô е ׿.
ڰ ñϸ ñ ÷ ø ְ ׿ 亯ϱ ̸ 亯 ʾƵ ǰ.

ֽ Ǵ Ʈ̵ ƴұ غϴ. .
     
ǷӰԻ츮 2021-11
մϴ մϴ
2021-11
ý丮 Ž ȸ ø̴ ŷ ˰ ְ

۾ ٰ ϼ̰ (https://www.2cpu.co.kr/bbs/new_view.php?bo_table=QnA&wr_id=687285)

ǻ ؼ ް ; øٰ ϴµ

׵ ø .. ũ ʿ ϴ ŷ ۿ ̳׿
     
ܿﳪ 2021-11
Ƴ ӾƳѾ ߳׿.
ڿ ¥ ְ ô±.
     
ǷӰԻ츮 2021-11
׷ ̼̱. մϴ.
2021-11
, ϸ ԰ ڰ ϴ ƴϰڽϱ.
     
ǷӰԻ츮 2021-11
մϴ ϰڽϴ
ȯ 2021-11
׷ ϴ.
ƴϰ, Ұ ƴϱ Դϴ. ϴ ߸Ǿٴ  ޾ Դϴ.
QnA ۼϽ о, 簡 Īϴ ȣϴٴ ֽϴ. ׸ ƶ о .. ũγ ۾̰ų ׷ϴ. ̷ ǵ ٴ ?

׳ ӻ ӻ, ̸ , Ȯ ϼ. װ Դϴ.
̸ ̴µ, 򿡴 ׷ô..
     
ǷӰԻ츮 2021-11
ϸ ϰ Ѿ ߴµ ظ ޶ ؼ ִµ

׷ø 䱸Ͻô´ Ͻô ص帮ڽϴ.

Ʋȴٰ ǰų, ¾Ҵٴ° ᱹ 𸣴 ظ ˴ϴ

ȯ åž մϴ.
¾Ҵٰ ǽ 츦 , Դ ؿ å ֽ ֽð  å ü ۼּ

Ͻô 䱸 غ ص帱 ִ°Ŷ ص帮ڽϴ

׸ ȯ ҼӵǾ ִٰų ƴ ϴ. Ϲ ù ̴µ, ȯԲ ø ǵ ü 迡 ϰ ؾ Ѵٸ װ͸ŭ Ұ ͵ 幰? 2cpu ȰϽø鼭 ƴ϶ ø ȯԿ ҹ ǵ ִ Ȯ ްԲ 䱸ּ
ȯԿ Ȯ ޾ƾ ϰ ׳ Ѿ װž Ұ ̴ϴ.
ǽ̾  ̶ ǽ ִ װ. ø ִ ׷ ۵ ǽɸ Ϸ ֽϴ.


QnA
Page 2288/5686
2014-05   4978099   1
2015-12   1514236   ް
2013-01   12182   νƺ
2014-08   9292   ܿﳪ
2023-05   1530   ΰ濭
2013-01   7692   ASAP
2014-08   13715   SeaOtter
2016-12   4106   oȿo
2020-06   4527   Ǽ
2016-12   4620   ̰
2013-02   4902   oȿo
2014-09   32663   â
2021-11   1525   Ż
2019-03   4363   LSSAH
2010-01   6357   psj1050
2016-01   3925   ǿ
2020-06   5468   FreeBSD
2021-11   2136   ǷӰԻ츮
2013-02   10252   Ѻ
2018-02   5938  
2019-04   2400  
2016-12   4585