어두컴컴한 방에 컴퓨터 앞에 앉아 커피를 마시며 아무도 모르게 정부의 기밀자료를 빼오는 해커..! 영화에서 많이 봤으리라고 생각합니다. 범죄적인 측면에서 해킹은 네트워크상에서 이루어지는 일이기 때문에 적발하기 힘들 뿐 아니라, 영화 미션 임파서블과 같이 몸이 고생(?)할 필요는 적기 때문에 보안이 절실히 필요한 회사에서는 고생을 합니다.

해킹을 막기 위해서는 (정확히 말하자면 크래커) 해커의 마음을 파악하여 어떤 경로를 통해서 침입을 할 것인지 예상을 하는 것이겠지요. 그래서 최근 들어 해킹을 막기 위해 해킹 자체를 배우자는 의견이 강합니다. 물론 철통같은 보안을 뛰어넘는다는 스릴도 재미있구요.

그러나 막상 해킹 기술을 배우기 위해서 돌아다니면 마땅한 사이트가 없습니다. 배울 곳도 많지 않고, 그렇다고 실제 사이트를 해킹하는 것은 위법이고...
그래서 사이트를 하나 찾아봤는데요. 이름부터 예사롭지 않더라구요. Hack This Site!

 

Hack This Site !



"저희 사이트를 해킹해주세요 ^^"
해킹에 관심있는 사람들에게는 매우 관심끌리는 문구인 것 같습니다.

여기서의 해킹은 Ethical Hacking을 뜻하며, 악의적인 침입이 아니라 취약점과 강력한 보안을 위한 대책을 공부하기 위한 장소입니다. 실제로 악한 해커들의 모임은 아니고, 실제로 이러한 취지로 오시는 분들이라면 포기하시길 부탁드립니다.

해킹에 대해서 전혀 모르신다구요? 괜찮습니다 ^^
이 사이트는 (영어만 조금 읽을 수 있다면) 기본적인 웹 해킹부터, 넓게는 실제적인 미션 (Realistic Mission Challenges), 또는 어플리케이션 해킹 등 다양한 분야를 어렵지 않게 한번에 다룹니다.

Hack This Site에서 다루는 해킹
  • Basic Web기본적인 웹 해킹을 배울 수 있습니다. 초보자면 여기서부터 시작하는 것이 좋습니다. 물론 처음 시작해도 큰 무리는 없지만 그래도 HTML, SQL, Javascript는 간단하게 훑어보셨으면 하네요 ^^
  • Realistic Missions 좀 긴장감이 흐르는 곳입니다. 실제와 같이 사이트가 존재하며 (물론 가짜 사이트요) 이를 해킹하는 것입니다. 의뢰자가 있으며 그들이 원하는 것을 들어주면 됩니다. 이메일 리스트를 가져오는 것부터, 미국 은행에서 송금하는 과정을 빼돌리는 것까지 다양한 미션이 존재합니다. 여기서는 UNIX정도까지 알면 좋겠고, 어쩌면 해킹 툴이 필요할지도 몰라요! 직접 만들어서 해보는 것은 어떨까요 ㅋㅋ
  • Encryption Challenges 암호화 된 것을 푸는 미션입니다. 글쎄요 저한테는 좀 어렵더라구요. 열려있는 미션과 종료된 미션이 있기 때문에 잘 확인해보시구 도전해보세요.
  • Programming Challenges 말그래도 프로그램을 짜는 것입니다. 해킹에 관한 툴을 제작하는 것이구요. 내용을 보아  C++로 구현하는게 편할 것 같네요. 아무래도 시스템을 건들여야 하는 부분이 있어서 Java나 .NET 등으로 구현은 힘들 것 같아요.
  • Permanent Programming Challenges 뭐라고 해석해야 할지는 모르겠지만 문제는 마치 정보 올림피아드 문제를 푸는 것 같습니다. 일정안 시간 안에 문제를 해결해야 하구요. 이를 해결하기 위해 프로그래밍을 하여 문제를 풀어야 합니다. 나름대로 재미있어요 ^^
  • Application Challenges프로그램을 크래킹하는 미션들입니다. 정품 소프트웨어를 크래킹하는 것과 같이 바이너리 코드를 보고 약간씩 수정하면서 프로그램을 조작하는 것이죠. 처음 보이게는 좀 어렵게 느껴질수도 있는데, 하다보면 감을 잡을 수 있어요.

  • 해킹의 종류가 다양하기 때문에 이렇게 다양한 미션이 존재하네요. 이를 다 풀어보는데는 시간이 오래 걸릴 것 같지만 어떠한 해킹이 존재하는지 간단하게 훑어보는 것도 좋을 것 같네요. 이미 알려진 간단한 보안 취약점들은 대부분 소개되어 있습니다.

    자, 그러면 즐핵하세요 ^^