이 사이트에 있는 대부분 글은 해킹과 관련된 글이다. 세계를 깜짝 놀라게 하는 해킹이 있다면 부당한 이득을 거하게 취하려는 해킹도 있다. 아니면 수호특공대처럼 세계 평화를 위해 가면을 쓰고 약자를 도와 공공의 적을 해킹하는 익명의 무리도 있다. 그들은 같은 해킹을 하지만 극명하게도 두 분류로 나뉜다. 해킹을 통해 범죄를 저지르는 인물도 있지만 분명하게 해킹으로 사회적 도움이 되는 해킹을 하는 인물도 있다. 그렇다고 좋은 의도를 가지고 하는 해킹이 옳다고 말하기에는 어렵다. 좋은 의도를 가진 해킹이 옳은 것인지 모든 해킹은 범죄인 것인지 오늘은 이러한 관점으로 해킹에 관해서 이야기해 보려 한다.
해킹이란 컴퓨터나 전자기기, 전자회로, 네트워크 등 본래 설계된 프로그램, 완성품을 역으로 분석하여 구조를 살피거나 본래 설계된 구조를 변경하는 등과 같은 행위를 말한다. 간단하게 말해서 본래 완성품의 구조를 파악하기 위해 완성품을 뜯어보는 행위나 제작자의 의도와 다르게 완성품을 바꿔버리는 모든 행위를 해킹이라 할 수 있다. 이러한 행위를 하는 주체를 해커라 하며 악의적인 의도로 해킹하는 주체는 크래커라 한다. 사실 크래커가 하는 해킹은 크래킹이라 불리지만 잘 쓰이지 않는다.
해킹의 의미는 시간이 지남에 따라 변해왔다. 초기의 핵(hack)은 MIT에서 자신이 가진 기술로 남들을 골탕 먹이는 그들만의 은어로 사용되었다. 실제로 2006년에는 9.11.테러를 추모하기 위해 학교 내에 있는 수십 미터나 되는 건물 위에 소방차를 올려 두기도 했으며[1] MIT와 캘텍이 싸울 때는 캘텍 가장 중심에 있고 캘텍에서 소중히 여기는 상징물을 모두가 보는 앞에서 가져왔다고 한다.[2] 시대가 바뀌고 계속해서 해킹의 의미는 달라졌지만 MIT에서는 지금도 여전히 장난을 치며 그것을 해킹이라고 말한다.
해킹의 의미가 좀 더 명확해지는 것은 1960년 MIT 내에 있는 철도동아리 통해서이다. 철도동아리에는 컴퓨터 한 대가 있었는데 이 컴퓨터를 사용하여 학생들은 철도 제어 시스템을 연구한다. 당시 컴퓨터는 엄청나게 큰 물건이었고 학교에서는 계속해서 컴퓨터 앞에 앉아있는 학생들을 제제하기 위해 컴퓨터 사용을 금했지만 학생들은 담을 넘으면서까지 컴퓨터를 만진다.[3] 이때 해킹의 의미가 조금 바뀌어 작업하는 과정을 즐긴다는 의미로 바뀌었고 이 사건은 거의 최초로 컴퓨터를 사용한 해킹으로 추측된다.
이후 악의적인 목적으로 해킹하는 사건들이 늘어나고 해킹의 의미는 다시 한 번 바뀐다. 해킹을 바라보는 시선이 급격히 안 좋아졌다. 당시 해킹은 컴퓨터나 네트워크의 취약한 곳을 불법적으로 접근하거나 컴퓨터와 사용자에게 안 좋은 영향을 끼치는 행위라는 인식이 커졌다. 사실 아직도 이러한 안 좋은 인식으로 해킹을 바라보는 시선들이 많다.
하지만 자신들의 해킹기술로 취약점을 찾아 발표하고 자신의 기술을 공유하면서 취약한 부분을 개선하고 보안성을 높이려는 좋은 의도를 가진 해커들도 등장한다. 또한 그들의 노력과 함께 그들의 해킹기술을 이용하여 보안성을 높이려는 기업도 등장한다. 이러한 사회적 분위기는 해킹이 무조건 나쁘다는 인식을 깨고 해킹을 객관적으로 바라봐 단 하나의 기술로 보는 의미를 가지게 했다.
이러한 의미로 단순히 해킹하는 것은 범죄가 아니다. 단지 악의적인 목적을 가지고 해킹하는 것이 불법이다. 또한, 꼭 악의적인 목적이 아니더라도 해킹당하는 대상이 원치 않거나 제작자의 의도에서 벗어난 행위를 하는 것도 불법으로 볼 수 있다. 예를 들어 해킹 대상이 원하지 않을 경우 이를 무시하고 해킹하는 것은 범죄이고 제작자의 동의 없이 프로그램 소스를 유포하거나 변경하는 것도 범죄이다. 즉, 상대방에게 피해를 주거나 상대방의 동의가 없는 해킹은 범죄이다. 조금 더 예시를 들자면 회사의 동의 없이 제품의 보안 결함을 찾아주려는 선의의 목적으로 해킹해도 회사가 해킹하는 것에 동의하지 않았기 때문에 이것은 범죄가 된다.
이렇게 말하니 해킹하는 것이 다 범죄처럼 보이고 안 좋게 보이지만 그것은 또 아니다. 해킹을 통해 보안적 결함을 고치고 좀 더 안전성 있고 더 나은 프로그램을 제공할 수 있다. 실제로 업계에서의 해커는 회사와 사전 동의를 한 후 해킹을 한다. 그러면 제품의 보안적 결함을 알려주고 회사는 좀 더 완성도 높은 프로그램을 제공할 수 있다. 즉, 공격을 통해 디펜스를 강화하는 것이다.
또한 해킹이 정부에서 해결할 수 없는 문제를 시민들과 함께 참여하여 개선해 나가는 사회적 운동의 색깔을 띠게 할 수 있다. 이를 시빅해킹(Civic Hacking)이라 하며 국가적으로 재난이 일어나거나 나라에서 하지 못하는 일을 해커와 프로그래머, 시민들이 모여 정보공유를 하고 문제를 해결해 나가기도 한다. 한마디로 해킹을 하나의 사회운동으로 바라보고 삶의 질을 높이는 목적으로 IT기술을 비롯해 다양한 기술을 가진 시민들이 참여하여 문제를 개선해나간다. 국내에서 알려진 대표 시빅해킹은 메르스 질병이 발병하고 나서 정부에서 쉬쉬하는 메르스 감염자가 나온 병원을 개발자와 시민들의 제보를 통해 투명하게 공개하는 사이트가 나왔다.
정리하자면 시빅해킹이나 어나니머스와 같이 사회적 운동을 보이는 해킹이 있는 방면에 악의적으로 이익을 얻는 해킹이 있다. 전자의 경우는 좋은 의도로 행해지는 해킹이지만 후자의 경우는 악의적인 의도로 행해지는 해킹이다. 그렇다고 해서 좋은 의도로 하는 해킹이 항상 옳고 괜찮다고 말하는 것은 아니다. 분명하게도 어나니머스가 하는 해킹은 불법이다. 어나니머스가 하는 해킹이 좋은 의도이지만 그들이 하는 해킹은 그들의 해킹 대상이 되는 인물들이 원치 않는 해킹이라는 것만으로도 그들의 해킹은 불법이 된다. 이러한 특징들을 봤을 때 해킹을 필요로 되는 악이라 보기도 하며 회색, 즉 그레이라고 많이 표현된다.