블리자드(Blizzard) 사에서 월드오브워크래프트(World of Warcraft) 용 봇을 제작한 업체에 대해 고소를 했다고 하네요. WoW 가 기획 초기부터 봇이 불필요한 게임을 만들기 위해 다양한 노력을 보여준 것으로 기억되는데, 그럼에도 봇이 나오는 건 어쩔 수 없었나 봅니다.
흥미로운 점은 고소 혐의가 되겠는데요, 봇 제작 행위에 대한 고소만으로는 승산이 없다고 판단했는지, 부정행위 방지프로그램을 우회하는 과정에서 게임을 자신의 메모리 공간으로 무단 '카피' 하는 메커니즘이 저작권 위반이라며 고소했습니다.
관련 뉴스 : http://news.bbc.co.uk/1/hi/technology/7314353.stm
MMO Glider 사용 동영상
이글루스 가든 - professional secur...
---- 추가 ----
그나저나, 부정행위 방지프로그램을 우회하는 과정에서 게임을 자신의 메모리 공간으로 무단 카피한다는 게 어떤 의미인지 잘 모르겠군요. injection 기법을 이용해 게임 클라이언트의 메모리 공간에 봇 프로그램을 심는 것이라면, '카피' 라고 보기 어려울텐데 말이죠.

덧글
Neker 2008/03/28 17:54 # 삭제 답글
후음...좋은자료 감사합니다.
somma 2008/03/28 20:43 # 삭제 답글
'카피' 의 의미는 (틀릴 수도 있지만) 제가 생각하기엔..봇을 만들때 게임의 특정 코드 영역을 분석하는 것이 아니라 해당 코드 블럭을 disassemble 해서 어셈블리 코드 자체를 가져다 쓰거나 런타임에 카피해서 메모리에서 동적으로 호출 하곤 합니다.
패킷을 보내거나 암복호 하는 루틴같은 경우가 그런 예죠.
특히 non-client bot (게임 클라이언트 없이 모든걸 자동으로 하는 봇) 의 경우 많이 이렇게 합니다.
직접 분석해서 코드를 작성하는 것이 아니라 게임 클라이언트의 코드를 그대로 재사용하면 편하거든요. 머리아프게 분석할 필요도 없고요. ^^;;
http://somma.egloos.com/2881725 포스팅된 소스코드도 이와 비슷한 기법으로 볼 수 있을 듯 하네요.
예에선 타겟에 이미 존재하는 함수를 그냥 호출 할 뿐이지만 호출할 함수블럭을 복사해서 봇 프로그램안에 박아버릴 수 있을테니까요. (약간의 보정작업이 필요하긴 하겠죠)
DWORD __stdcall injetor_stub(void* pBlock)
{
// 지뢰를 보여주셈~~
__asm
{
mov eax, 0x0A
push eax ;call [0x01002f80]
mov eax, 0x01002F80
call eax
}
후미후 2008/03/28 20:45 # 삭제 답글
가끔 추억의 디아블로2 를 하는데 봇이 돌아다니면서 플레이를 하더군요. 거의 모든 게임에 봇들이 하는 경우가 많은거 같은데 우리나라도 어떤 대처를 할지 궁금해 지네요