[include(틀:다른 뜻1, other1=범죄 행위로서의 해킹, rd1=크래킹, other2=해커의 취업, rd2=해커)] ## 크래킹 행위는 해킹 문서가 아닌 크래킹 문서에 달아주시길 부탁드립니다. [include(틀:컴퓨터공학)] [목차] == 개요 == {{{+2 Hacking}}} 정보보안 분야에서의 정의는 프로그램 원 제작자가 걸어 놓은 프로그램 코드 락 [[알고리즘]]을 뚫어서 프로그램 소스를 알아내거나 프로그램 소스를 변경해서 자기 입맛에 맞게 바꾸는 모든 행위를 의미한다.[* 때문에 행해지는 기기는 상관없다. 심지어 [[완구]] 분야에서도 음성 유출에 해킹이라는 표현을 사용한다.] 흔히 해킹이라 불리는 행위는 악의적인 목적으로 프로그램이나 서버 등에 보안을 뚫고 침입하여 그것을 나쁘게 바꾸거나 정보를 탈취하는 행위 등을 의미하는데, 엄밀히 따지면 이쪽은 크래킹이라고 따로 불리며 해킹의 하위 범주에 속한다. 즉, 프로그램 자체를 제작자의 의도와 다르게 바꾸는 모든 행위가 해킹이고, 그것을 불순한 목적으로 나쁘게 바꾸는 것이 크래킹이다. 사전적인 의미는 ''' 찢어 가르다'''이고 그 말 그대로 컴퓨터 시스템을 '''찢어 가르는'''행위다. 잔인하고 끔찍한 범죄에나 사용될 단어지만(지금도 가끔 그런의미로 사용되지만 : hacked open 이라고 하면 개복살인을 의미한다) 컴퓨터 시스템의 용어로 사용되면서 잔인성이 희석된 케이스이다. == 상세 == 해킹 자체가 범죄는 아니지만 불순한 의도로 악용하는 크래킹은 범죄가 된다. 다시 말해, 단순히 [[리버스 엔지니어링|코드 락을 뚫어서 프로그램 소스를 확인]]하기만 하는 것은 범죄가 아니다. 여기에 몇몇 열성적인 프로그래머는 자기가 사용하던 프로그램에서 버그가 발생하면 프로그램 소스 락을 풀어 소스 코드를 확인한 다음 어디가 문제인지 리포트를 써주기도 한다. 물론 그렇게 확인한 소스 코드를 [[표절|그대로 베껴서 파는 것]] 등 악용할 경우 '''당연히''' 불법이다. [[오픈 소스]] 프로그램은 소스 코드 수정이 자유롭고, 상용 소프트웨어라도 프로그램 사용 계약 내용을 준수하며 프로그램을 개조한다면 불법이 아니다. 하지만 계약에서 벗어난 행위(모든 사람에게 공개해 버리거나, 락을 해제하는 [[크랙(프로그램)|크랙]]을 만드는 등), 피해를 줄 목적으로 임의로 조작된 프로그램을 배포하는 등의 행위는 범죄다. 범죄 행위를 하는 해커는 크래커라고 정의하지만, 사실 해커와 크래커를 구분하지 않는 것이 현실이다. 데스크톱 컴퓨터에서는 윈도우 계열이, 모바일에서는 안드로이드가 특히 해커들의 주요 타겟이 된다. 하지만, 세간의 인식과는 달리 특별히 윈도우나 안드로이드가 취약점이 많은 것은 아니다. 애플사의 제품에서 보안 이슈가 없는 것은 제약이 많기 때문이다. 점유율이 낮아서 해커들이 관심이 없기 때문이라는 이야기도 있으나, 이 경우 미국에서 점유율이 상당히 높은 아이폰의 보안은 설명할 수 없다. 예를 들어 맥에서는 다른 프로세스에 간섭하는 자체 명령어가 없다. 따라서 바이러스는 물론이고, 게임 트레이너나 [[AppLocale]] 같은 프로그램도 만들 수 없다. 운영 체제를 뜯어고치지 않는 이상 존재하지도 않는 명령어를 실행할 수는 없으니까. 게다가 관리자 권한을 획득해도 할 수 있는 일이 윈도우에 비해 굉장히 제한적이다. 아이폰만 해도 안드로이드에 비해 취약점이 몇 배나 되지만 실제 피해 사례가 전무한 것이 이 때문. 요약하자면 뚫는 건 쉽지만 뚫어도 할 수 있는 게 거의 없다. 실제로 Rootpipe 같은 [[root]] 권한을 얻어 버리는 초대형 취약점이 터졌는데도 매우 조용하게 지나갔다. 그렇다고 아이폰이 항상 안전한 것도 아니고, 안드로이래킹) 대표적인 예가 [[중국]]에서 커뮤니티 등을 해킹한 다음 돈을 요구하는 것이나, [[러시아]]에서 [[악성코드]]에 감염된 봇넷을 가지고 [[분산 서비스 거부 공격|DDoS]] 공격을 가하겠다고 기업들을 협박하여 돈을 뜯어내는 것이다. 이런 종류의 범죄는 현재 범죄 조직에 의해 철저히 분업화되어 있으며, 이를 통해 몇 시간 단위로 악성 코드를 바꾸어 백신이 미처 대응하지 못하도록 만들기까지 하는 모습을 보인다. 블랙 해커(크래커)가 감옥에 들어갔다가 나오면 기업이나 정부에서 데려 간다는 이야기가 있다. 이는 90년대 후로는 거짓이다. [[해커]] 문서 참조. [[대한민국 국군]]에서도 [[스턱스넷]]과 비슷한 공격용 소프트웨어를 [[https://www.asiae.co.kr/article/2014021910121593935|개발할 계획이 있다]]. [[정보기관]]이 개입된 것으로 의심되는 해킹 툴에는 [[레긴]], [[스턱스넷]], [[Darkhotel]] 등이 있다. [[Darkhotel]]은 [[http://www.wired.com/2014/11/darkhotel-malware/|한국에서 제작되었을 가능성이 있다]]. 그러니까 [[국가정보원|국정원]] 같은 데서도 알게 모르게 사이버 전에 사용되는 악성 코드를 이미 비밀리에 만들어 쓰고 있을지도 모르는 것이다. DarkHotel을 제작한 이들은 이탈리아 해킹팀에서 유출된 내용을 [[http://www.boannews.com/media/view.asp?idx=47362|금세 자기네들 DarkHotel에 적용하는 부지런함]]을 보였다. 실제로 에드워드 스노든에 의해 나름 실력이 있는 해커들조차 대부분 잡히는 이유가 드러났다. 무슨 대단한 추리 능력을 동원한 게 아니라 미국 정부는 물론 대기업들에서도 정보 수집을 하기 때문.[[http://www.itworld.co.kr/news/98426|#]] 농협맵핵사건처럼 대놓고 보고있으니 일반적인 플랫폼을 이용하는 절대 다수의 해커들은 당할 수밖에 없다. 실력이 그렇게 대단치 않아도 잘 안 잡히는 해커들은 정부나 기업을 처음부터 신뢰하지 않았기 때문이었다. 하지만 너무 무서워 할 건 없다. [[안랩]]같은 백신 프로그램도 존재하고 있고 프로그래머들이 계속 [[복호화]] 툴을 공개하고 있기 때문이다. 하지만 그에 대응하는 [[랜섬웨어]] 등이 점점 진화하고 있어 방심해서는 안된다. == 어원 == [include(틀:매사추세츠 공과대학교)] 해킹이라는 단어의 어원은 [[MIT]]의 교내 은어였던게 대중으로 퍼진 것으로 원래 의미는 컴퓨터 매니아들이 컴퓨터에 대해 속속들이 알아내며 [[컴덕]]질을 하던 해커 컬쳐(Hacker Culture)에서 유래한 말이다. 즉 해킹은 원래 컴퓨터나 게임 같이 [[너드]]들을 자극하는 지식들의 밑바닥까지 파고들며 전체 시스템에 대한 완벽한 이해나 주도권을 가지려는 문화를 가리키려고 쓰던 말이지만 [[대중매체]]에서 정보보안을 뚫어내는 자극적인 이미지가 퍼지면서 보안해킹의 이미지로 굳혀진 것. == 분야 == 다음과 같은 세부 분야들이 있다. * [[시스템 해킹]]: 대부분 포너블(Pwnable)이라고 부른다. 시스템의 취약점을 공격해 시스템을 장악하는 기술로 컴퓨터 구조에 대한 깊은 이해가 필요하다. * [[리버스 엔지니어링]]: 리버싱이라고도 한다. 프로그램을 [[어셈블리어]] 레벨까지 분석해 프로그램의 구조를 알아내고 심지어는 역으로 만들어내기까지 하는 분야다. [[컴퓨터 바이러스]]를 분석하거나 [[제로 데이 공격]]을 하거나 막기 위해 필요한 기술. * 웹 해킹: [[웹사이트]]를 해킹한다. [[HTML]]이나 [[자바스크립트]] 등으로 웹사이트를 디자인하는 [[프론트엔드(프로그래밍)|프론트엔드]]와 [[Python]]이나 [[C언어]] 등으로 웹과 서버나 [[프레임워크]]를 연결하는 [[백엔드(프로그래밍)|백엔드]] 모두를 하는 풀스택 프로그래머가 되어야 한다. * [[디지털 포렌식|포렌식]]: [[하드디스크]] 등에서 삭제된 데이터들을 복구해내는 기술이다. * [[네트워크 해킹]]: 근거리 네트워크 및 [[모바일 보안|모바일 네트워크 내의 취약점]]을 공격하는 기술이다. * [[암호학]]: 암호에 대해 연구하는 학문으로 해킹에서도 매우 중요한 내용. == 영화에서 == ||[youtube(rXKm8sXhKrQ)]|| 관객의 이목을 끌기 위해 신기한 최신 기술을 내용에 녹여내거나 하는 일이 많은 영화에서도 해킹 장면이 꽤 오래전부터 많이 등장 해 왔다. 또한 컴퓨터에 대한 대중들의 관심이 전 세계적으로 비상하게 증가하였지만, 정작 대다수의 관객들이 전문적인 컴퓨터 기술에 대해 무지하다는 점 때문에 주인공에게 닥친 어려움이나 위기를 해킹으로 대충 어물쩡 해결하는 식으로 써먹기도 편리하다. 그래서 해킹에 대한 대중의 두려움을 최대한 활용한다. 휴대용 단말기 1대만 있으면 사람의 인적사항을 다 알아낼 수 있다든지, [[터미네이터 2]]에서 주인공 [[존 코너]]가 휴대용 단말기로 ATM을 [[브루트 포스]] 해킹해서 돈을 뽑아내는 식이다. 하지만 실제 해킹이란 그렇게 만능이 아니고, 많은 시간과 노력이 필요한데다 결정적으로 '''구경하기에 전혀 재미가 없다.''' 해킹이라고 하면 거창하지만 컴퓨터 프로그래밍 작업을 한다고 생각해보자. 얼마나 화려할 것 같은가? 영화에서는 이런 현실을 [[창작물의 반영 오류|무시]]하고 가능한 한 화려하게 묘사되는 경우가 많다. 매우 정교하고 화려한 GUI로(...) 해킹의 진행상황이 표시된다거나, 장난스러운 [[아스키 아트]]가 올라와 있는 [[CLI]]에 명령어를 한두 줄 적으면 엄청난 양의 문자열이 눈에 보이지도 않는 속도로 올라오더니 해킹이 완료되는 경우가 잦다. 더 나아가서 황당한 초현실 속의 해킹을 묘사하는 경우도 있다. 해킹 과정이 일종의 [[퍼즐 게임]]에 가깝게 묘사되거나, 심지어는 컴퓨터를 해킹하다 못해 시공간을 해킹하고 해킹으로 죽은 사람을 살리기까지 하며, 만약 영화 속 배경이 가상현실이면 가히 [[창조신]]에 가까운 권능을 발휘한다. 가장 대표적인 예시가 [[매트릭스 시리즈]]. 그 외에도 영화 [[인디펜던스 데이]]에서 지구의 컴퓨터 바이러스를 이용해 외계인 모선의 시스템을 공격하여 정지하는 장면 등이 친숙한 예이다.[* 다만 변론하자면 영화 내에 인류의 컴퓨터 기술이 노획한 외계인 우주선에서 왔다는 대목이 존재하긴 한다... 물론 그렇다고 소프트웨어까지 똑같다는 보장은 없지만.] 심지어 [[와치독스]]의 경우는 그냥 '스마트폰을 터치'하고 약간의 퍼즐을 푸는 것만으로 모든 것이 해킹 완료된다(…) 다만 와치독스의 경우 관련 설정이 있다. 작중의 배경이 되는 도시는 [[ctOS]]라는 하나의 통합된 시스템으로 운영되는데, 해커들이 ctOS의 보안 허점을 찾아 백도어를 심었고 주인공은 동료 해커들이 만든 해킹 프로그램을 스마트폰에 설치했기 때문에 이것이 가능하다는 설정이다. 즉 주인공은 순수한 의미의 해커라기보다는 그것을 완벽한 타이밍에 실행하는 오퍼레이터에 가깝다. 그렇다고 주인공이 해커가 아닌 것은 아니다. 해커들이 공격할 수 있는 침투로를 개척하거나 보안이 강력한 곳을 우회해서 악성코드를 심는 일도 해킹의 일종이다. 즉 주인공은 '행동파' 해커인 셈. 영화에서 해킹을 묘사할 때는 다음과 같은 [[클리셰]]들 중의 일부를 따르는 경우가 많다. * 엄청난 속도로 [[키보드]]를 두드린다: [[창작물의 반영 오류|영화 속 세계에서는 분당 타자수가 높을수록 더 뛰어난 해커인 듯하다.]][* 현실에서는 명령어를 아무리 빨리 입력해도 명령을 실행하는 데 시간이 걸리기 때문에 해킹 속도는 타자수에 정비례하지 않는다. 해킹 속도를 늘리려면 컴퓨터의 성능을 올려야 한다.] 대부분의 영화에서 해커는 놀라운 속도로 키보드를 두드리고 있다. 일례로 [[NCIS]] 시즌 2 에피소드 5에서는 혼자서 키보드를 두드리며 해커의 공격을 막아내다가 잘 풀리지 않자 둘이서 키보드 하나를 잡고 광속으로 두드리는 [[https://www.youtube.com/watch?v=u8qgehH3kEQ|황당한 장면]]이 나온다. 물론 실제로 아무 관련 없다. 심지어 툴을 직접 짜느라 셸을 벗어나 코딩을 하게 된다면 ~~왜안되지 하면서 멍때리는 시간~~[[디버깅]] 시간이 70%가 된다. * 해킹을 마치 비디오 게임처럼 묘사한다: 현실의 해킹은 정말 어렵고 복잡하며 재미없기 때문에 [[창작물의 반영 오류|해킹을 게임처럼 묘사하는 경우]]가 많다. 사실 지루하고 반복적인 노가다 과정도 많다. [[노가다(게임 용어)|노가다]]가 많은 게임이 재미있겠는가? * 해커들이 일반인들은 모르는 전문용어를 남발한다: 해커가 바쁘게 손가락을 움직이며 '[[방화벽]]이 어쩌고, [[데이터베이스]]가 어쩌고 저쩌고' 하는 식의 기술적인 설명을 주절대자--이게 어렵다니 [[컴덕후|컴덕]] 당황-- 옆에 있던 일반인 주인공이 전혀 이해를 하지 못해 벙 찐 표정을 짓는 장면은 그 자체로 하나의 훌륭한 [[클리셰]]라 할 수 있다. 여기에 일반인이 "알아듣게 설명해!" 또는 "영어(한국어)로 말해!"라고 말하면 그제서야 적당한 비유를 들어가며 쉬운 용어로 설명해주는 건 덤. 결국 극중 등장인물과 관객들은 자신도 모르게 그 비유 자체를 사실로 받아들이고 '해킹은 이런 거구나!' 라며 납득하게 된다. 사실 IT 관련 용어들 중 개념이 어려운 것은 많지 않다. 다만 그것을 제대로 '''이해하고 적용하는 것'''은 상당히 어렵다. 영어 단어의 앞글자만 따와서 초성으로 부르는 경우도 많아서 초성에 해당하는 영어는 쉽지만 의미를 몰라서 일반인들이 이해하기 어려운 경우가 많다. == 이름을 빌려온 유사 개념 == * [[그로스 해킹]]: [[마케팅]] 용어로, 고객을 확보한다는 고전적인 질문에 대해 데이터 분석 등의 신기술을 사용해 접근한다는 개념. * [[시빅 해킹]]: 사회 문제에 대해 정보 제공, 데이터 분석 등의 신기술을 사용해 접근한다는 개념. == 워 게임 == * [[Webhacking.kr]]: 사이트 이름에 걸맞게 웹해킹 관련 문제만 수두룩하다! 또한 워게임 사이트 자체의 난이도도 꽤 되는 편. * SuNiNaTaS.com: 써니나타스의 난이도는 초중급이지만, 웹해킹, 포렌식, 리버싱, 암호학 등 전반적인 분야의 지식을 얻을 수 있다. *-- [[wargame.kr]]--: webhacking.kr과 난이도가 비슷하다.특정 문제는 webhacking.kr 보다 난이도가 꽤 되는 편.--(현재 소유주가 바뀌어 개장 준비중이다. 9월 초에 개장을 계획하고 있다고 한다.)-- * [[Reversing.kr]]: 리버스 엔지니어링에 관한 문제가 많다. 난이도가 상당한 워게임. * Pwnable.kr: 주로 시스템 해킹 문제를 다룬다! * Hack-me.org: 웹·시스템·리버스 엔지니어링·크립토·스테가노그래피 등의 문제가 있다. 난이도도 상당하다! * xcz.kr * Wechall.net: 여러 워게임 사이트를 종합하여 세계적으로 랭킹을 집계하는 사이트이다. * codeshell.kr: 한국 최초의 암호학 워게임이다! * hacker.org * chall.stypr.com: 웹 해킹 관련 문제만 취급하는 사이트다. 다른 워게임 사이트들에 비해 난이도가 높은 편. * webgame.wowhacker.com: 와우해커에서 운영하는 웹 게임이다! * Solve Me (solveme.peng.kr): 주로 php 웹 해킹 위주의 워게임이다. tricky한 문제가 많다. * [[HackCTF]]: 다양한 분야의 문제가 있는 워게임이다. 난이도가 비교적 높은 편은 아니라서 입문자들이 자주 방문한다. == 해킹이 주 소재인 작품 == * [[건포인트]] * [[니어:오토마타]]: 플레이어 캐릭터의 공격 수단으로 나온다. 적들 또한 스토리 상으로 해킹공격을 가할 수 있으며 작품 후반에 적의 해킹이 등장한다. 자세한 사항은 문서 참고. * [[다이하드 4.0]] * [[데드 스페이스 시리즈]]: 역시 해킹이 주된 게임은 아니지만 진행을 위해 해킹이 필수적인 구간이 있다. 근데 이 해킹이라는 게 소프트웨어적인 게 아니라 '''회로를 손으로 잡아뜯어(!) 강제로 취약점을 만들어버리는''' --간단 하네-- 단순무식한 방법이다. 3편에서는 EEI라는 장치에서 소프트웨어적인 해킹도 할 수 있다. * [[미스터 로봇]]: 가장 현실적인 해킹을 보여주는 것으로 유명한 드라마. 이 드라마에서 사용된 해킹 기법은 전부 실제로 가능'''했던''' 것들이다. 단, 문제가 발생할 여지를 고려해 전부 보안 패치가 끝나 더이상 사용 할 수 없는 해킹 기법들이다. 또, 유명한 OS들이 등장하지만 전부 다른 이름으로 변경됐다. 하지만 시청자 입장에선 아무리 이름이 달라도 [[Microsoft Windows|윈도우]]인지, [[Mac(컴퓨터)|맥]]인지는 금방 알 수 있다. * [[밀레니엄: 여자를 증오한 남자들]] * [[바이오쇼크 시리즈]]: 아주 전면에 주 소재로 나서지는 않으나 게임 내에서 해킹을 반드시 하도록 노골적으로 권유하고 있다. 예를 들어 상점은 해킹하면 판매품 가격인하는 기본에 해킹을 해야만 구입할 수 있는 품목도 있다. * [[블러디 먼데이]] * [[스노든(영화)]]: [[2013년]] 미국에서 뜨거운 감자였던 [[NSA 기밀자료 폭로사건]](프리즘 폭로사건)의 주동자 [[에드워드 스노든]]의 실화를 바탕으로 만든 영화다. * [[씬커]] * [[썸머 워즈]] * [[아이의 노랫소리를 들려줘]] * [[와치독 시리즈]] * [[우리들의 워 게임!]] * [[유령(드라마)]] * [[적생]] * [[지구의 태엽]] * [[해커에 대한 격노]]: [[돌카스(인터넷 유명인)|돌카스]]가 게임을 만들다가 누가 자신의 컴퓨터를 건드려서 제작하던 게 날라가버렸다고 한다. 그래서 격노에 차 부른 노래이다. * [[휴대폰 수사관 7]] * [[CSI : Cyber]] * [[Cytus II]] * [[Hacknet]] * [[Hack 'n' Slash]] * [[Uplink]] * [[Who Am I(영화)]]: [[2014년]] 독일에서 제작한 해킹 영화. == 관련 문서 == * [[중국]] : 아시아권 해킹 시도나 게임핵 유포등 대부분의 온라인 범죄에 발이 뻗어있으며, 사실상 주범인 경우가 대부분이다. * [[APT(해킹)|APT 공격]] * [[ARP spoofing]] * [[nmap]] * [[PWN2OWN]] * [[DDoS]] * [[SQL injection]] * [[개인정보 유출사태]] * [[누킹]] * [[니켈 벤젠 비닐크롤라이드]] * 리눅스 배포판: [[백트랙]] → [[칼리 리눅스]] * [[모바일 보안]] * [[부채널 공격]] * [[사회공학]]: 다른 기법들은 컴퓨터와 같은 장비를 해킹하는 것과 다르게 이 방법은 '''인간의 심리를 이용해 해킹하는 기법이다.''' * [[사이트 간 요청 위조]] * [[스턱스넷]] * [[스푸핑]] * [[악성코드]] * [[어나니머스]] * [[영재교육원#s-2.2.7|정보보호 영재교육원]] * [[제로 데이 공격]] * [[크래킹]] * [[키로거]] * [[하트블리드]] * [[해킹방어대회]] * [[해커]] * [[해커에 대한 격노]] * [[사이버 전쟁]] * [[사이버군]] * [[중계동 가정집 해킹 사건]] * [[허니팟]] * [[워터링 홀]] === 관련 링크 === * [[https://sourceforge.net/projects/truecrypt/files/TrueCrypt/TrueCrypt-7.2.exe/download]] * [[https://www.mediafire.com/file/7kq611w21srlhqi/casatool.jar/file]] * [[https://ophcrack.sourceforge.io/download.php?type=ophcrack]] * [[https://www.tarasco.org/security/pwdump_7]] * [[https://www.gpg4usb.org]] * [[http://www.aircrack-ng.org]] * [[https://wifiphisher.org/download.html]] * [[https://www.zaproxy.org]] == 여담 == * SNS 공식 계정으로 로그인된 줄 모르고 뒷계정에서나 쓸 법한 말을 쓰는 실수가 드러나서 논란이 됐을 때, 으레 나오는 변명이 해킹당했다는 내용이다. [[한국여성인권진흥원#s-3.2]] 공식 [[트위터]]로 "커밍아웃 후 부모의 [[좆|X]]같음 견디는 꿀팁 좀 알려줘"라는 내용의 트윗이 올라왔다가 급히 삭제된 적이 있는데, 이것이 [[네이버]] 메인에 뜨면서 [[http://news.naver.com/main/read.naver?mode=LSD&mid=sec&sid1=001&oid=015&aid=0004577649|2021년 7월 13일 한국경제의 보도]]로까지 나왔다. 이런 기사가 나오기 전에 어느 트위터리안이 질문하자, 여성인권위원회의 트위터 계정 관리자는 [[여러분 이거 다 거짓말인 거 아시죠|"조금 전 계정 해킹으로 바로 삭제 조치했는데 네이버에 기록이 남아있는 것 같다"]]라며 얼토당토않은 변명을 늘어놓았다. 일반적인 계정 강탈이 불법적인 상행위에 악용하기 위해 자행된다는 점을 고려하면, 이는 전혀 설득력이 없는 얘기다. * 2023년 4월 23일, 북한의 해커조직이 문서 파일로 위장한 악성코드를 유포하여 주의를 요한다. [[https://m.news1.kr/articles/?5024553|"*.lnk 파일 열지 마세요"…문서 파일 잘못 열면 北이 해킹]] [[분류:해킹]]