A defining characteristic of a bot is its ability to be remote-controlled by way of command and control (C&C).
Typically, a bot receives commands from its master, performs tasks and reports back on the execution results.
All communication between a C&C server and a bot is performed using a specific C&C protocol over a certain C&C channel.
Consequently, in order to instruct and control their bots, bot masters - knowingly or not - have to define and use a certain command and control protocol.

특정 bot의 정의된 특징은 C&C와 원격 통신할 수 있는 능력이다. 전형적으로 bot은 마스터로부터 명령을 전달 받고, 명령에 대한 작업을 수행 후에 수행 결과를 회신한다. (reports back)
C&C와 bot의 모든 Communication은 특정  C&C 채널 상의 C&C Protocol을 이용해 수행된다.
결과적으로 Master들은 그들의 bot들을 수행하고, 제어하기 위해 특정 Command and Control Protocol을 정의하고 사용해야만 한다.

To evade payload-based detection,
botnets have evolved and often employ C&C protocols with obfuscated or encrypted messages
as is the case with Waledac, Zeus, Hlux, TDSS/Alureon, Palevo, Renos, Virut and Feederbot, to name but a few.

payload 기반의 탐지를 피하기 위해 botnet 들은 난독화/암호화 메시지를 이용한 C&C Protocol들을 종종 사용하는 형태로까지 진화됐다.
Waledac, Zeus, Hlux, TDSS/Alureon, Palevo, Renos, Virut과 Feederbot과 같이 말이다.

In fact, pretty much all recent botnets employ some kind of encryption in their C&C protocol.
The following two images show an encrypted Virut C&C message and its decrypted plaintext.
This reveals that the underlying carrier protocol is still IRC, or IRC-like.
The encryption is basically a four-byte XOR with a random bot-chosen key.

실제로 가장 최근의 모든 botents들은 그들의 C&C Protocol 안에 몇가지 종류의 암호를 사용한다.
밑에 2개의 그림은 암호화된 Virut C&C 메시지와 복호화된 평문 (Plaintext)를 보여준다.
복호화된 것을 보면 여전히 IRC나 IRC와 비슷한




 - how to prevent communication between cnc server and bots

 

+ Recent posts