다소미

" 해킹방법 "에 해당되는 글 1건

  1. ▼ [각종 서비스 아이디 해킹방법]

▼ [각종 서비스 아이디 해킹방법]


▼ 각종 서비스 아이디 해킹방법

 

다음과 같은 분들을 대상으로 진행됩니다.


1. TCP 소켓프로그래밍을 해본 경험이 있는 사람.
2. 없네요. ^^

 

소켓프로그래밍은 하루면 배울정도로 간단한 내용입니다.
그리고 이 내용을 먼저 읽고나서 소켓 프로그래밍을 배우더라도 상관없습니다.

시작합니다.

각종 통신서비스는 Email 서비스를 제공합니다.
여기에 필요한것이 바로 SMTP서비스(편지 보내기 서비스)와 POP서비스(편지받기 서비스)입니다.
이에 해당되는 통신서비스를 예로 들자면 하이텔,나우누리,천리안,유니텔,넷츠고,두루넷,드림라인,신비로(?),Hotmail,Intz...
등등... 무척 다양합니다. 하지만 일부 웹기반 서비스들은 POP 서비스를 제공하지 않는 경우가 있습니다.
대표적인 예가 다음(DAUM:www.daum.net)에서 제공하는 Hanmail 서비스 인데요.
여긴 회원이 접속해서 홈페이지의 광고를 보는게 수익이기 때문에 홈페이지를 볼 필요가 없게되는 pop 서비스를 제공하지
않는 것입니다. 하지만 거의 모든 서비스가 pop를 지원하죠.

여기서 노리는 것은 바로 이 pop 서비스 입니다.
윈도우의 Outlook Express 같은 메일러 프로그램을 보면 pop주소랑 아이디/비밀번호를 넣어두면 자동으로 접속해서 메일들을 읽어오죠.
아주 편리한 서비스입니다. 하지만 저희는 이부분을 노려서 회원ID 를 가로채 보겠습니다.

일단 아이디 해킹은 크게 두가지로 나뉩니다.
1. 지정아이디 해킹 (특정 아이디의 비밀번호를 알아내는것)
2. 불특정 다수 아이디 해킹 (임의의 수십~수백명 아이디의 비밀번호를 알아내는것)

결국 여기서 사용하려는 아이디 해킹방법은 비밀번호를 수없이 입력하는 방법인데요 특정한 아이디를 해킹하기 위해서는
입력가능한 모든 비밀번호를 빠른속도로 입력해서 맞는걸 찾아내야 합니다.
하지만 단지 여러개의 아이디를 알면 될 때에는 반대로 아이디를 순차적으로 입력하면서 비밀번호는 흔히 많이 사용하는
비밀번호들(날짜 0101부터 1231까지 365개, 1234/1111/abcd/asdf/aaaa 과 같은 단순한 숫자/영문)을 입력해 보면서 검색하는 것입니다.

당연한 얘기겠지만 해당 통신망에 따라 id/비밀번호체계가 다르므로 불특정 다수를 대상으로 하는 해킹은 해당 통신망의
체계를 따라야 합니다.
예> 하이텔/나우누리/천리안/유니텔등은 8글자 아이디/비밀번호를 사용.
두루넷은 16글자까지 사용.

pop 서비스는 아이디의 대소문자를 구분하지 않습니다.
따라서 하이텔과 같이 아이디가 대소문자 모두 지원되는 경우라도 내부적으로 대소문자의 차이에 따라 중복되는 아이디는 없습니다.
(지난번에 아이디 대개편 행사를 해서 모두 바꿨죠.)

pop 서비스는 TCP 프로토콜로 제공되며 포트 110번을 사용합니다.
여기서는 윈도우의 telnet 프로그램을 이용해 하이텔 POP 서비스에 접속하는 방법을 설명해 보겠습니다.
telnet 은 말이 텔넷이지 TCP 프로토콜로 제공되는 모든 서비스에 접속할 수 있습니다. 포트만 바꾸면 되죠.
일단 접속을 위해 다음과 같이 입력합니다.

c:> telnet mail.hitel.net 110

여기서 mail.hitel.net 은 하이텔의 POP 서버 주소입니다. 이건 각 서비스마다 다릅니다.
그냥 물어보면 다 갈켜주죠. 그걸 통해서 메일을 읽어야 하니까요.
많은 통신서비스들이 mail 이라는 이름을 사용합니다. 나우누리는 mail.nownuri.net, 인츠(intz)도 mail.intz.com...
두루넷은 pop.thrunet.com 을 쓰죠.
아무튼 접속이 되고나면 다음과 같은 메세지가 뜹니다.

+OK Netscape Messaging Multiplexor ready

여기서 주의해서 볼것은 앞에 +OK 입니다.
뒤에 나온 메세지는 사람이 보기좋게 설명을 해 놓은것이구요.
앞에 있는 +OK 코드가 바로 실제적인 내용입니다. 즉, 됐다. 이거죠. 접속했으니 메세지를 가져갈 준비가 된겁니다.
그럼 이제 아이디와 비밀번호를 이용해 로긴을 해야겠죠?
다음과 같이 입력해 봅시다.

USER lisyoen

사용자 아이디를 lisyoen 으로 넣은것입니다. 결과는..

+OK password required for user lisyoen

역시 +OK 로군요. 반대로 -ERR 라는게 있지만 아이디 입력에는 에러가 안납니다. 설령 그 아이디가 없더라도 말이죠. 참고로 pop 서비스는 대소문자 구분을 안하니까 user lisyoen 이나 UsEr LiSyOeN 이라고 넣어도 같습니다.
제 하이텔 아이디도 LISYOEN 이지만 소문자로도 로긴되죠.
다음에는 비밀번호를 입력합니다.

PASS hackers

결과는 다음과 같습니다.

-ERR Password failed for lisyoen

에러입니다. lisyoen 에대한 비밀번호가 틀렸다는거죠. 만약 올바르게 입력했다면 다음과 같이 출력됩니다.

+OK lisyoen's maildrop has 0 messages (0 octets)

말씀드렸다시피 뒤의 메세지는 POP 서버마다 다릅니다. 앞에 +OK 만 뜨면 같은 결과죠.
해석하자면 접속에 성공했는데 lisyoen의 메일이 0개라는거네요. 용량도 0바이트이구요. 제가 다 읽었거던요. ^^

혹시 이런 에러가 보일수도 있습니다.

-ERR Authentication failed

이건 그런 아이디 자체가 없다는건데요. 물론 POP 서비스마다 다르게 출력되니까 무시하겠습니다.
그냥 -ERR 만 해석해서 오류로 인식하면 되죠.

한가지 주의하실점은 비밀번호를 한번 틀리면 다시 아이디부터 넣어야 한다는겁니다.
즉,

user lisyoen
+OK password required for user lisyoen
pass test
-ERR Password failed for lisyoen
user lisyoen
+OK Password required for lisyoen
pass test2
-ERR Password failed for lisyoen

이런식으로 아이디 넣고 비밀번호 넣기를 반복해야 한다는겁니다.

사실 이정도 알려드리면 TCP 소켓프로그래밍을 해보신 분들은 '아하~ 이렇게 하면 되는구나~!' 라고 손벽을 치면서 곧장
프로그래밍을 시작할 것입니다. 이걸 자동으로 해주면 되니까요.
반드시 동시에 여러 쓰레드나 여러 창으로 접속해서 시도해야 합니다. 안그러면 손으로 하는것보다 조금 빠른 속도밖에 안나니까요.
속도가 최대한 빨라지는 만큼의 쓰레드를 이용해서 작업해야 최상의 속도로 아이디를 얻어낼 수 있습니다.

참고로 제가 사용하는 비밀번호 목록들은 다음과 같습니다.

1. 0101 부터 1231 까지 365개의 날짜 모음
2. 1234, 5678 등의 연속된 숫자들
3. abcd, asdf 등의 연속된 문자나 키보드상의 연속된 문자들
4. 1122, 2233 등의 두자리씩 반복된 숫자들 (4자리로 만들면 총 100개)

전 5자리 이상되는 비밀번호는 그냥 포기합니다. 물론 특정 아이디를 대상으로 검색한다면 8자리까지 모두 검색하도록 하지요.
하지만 그렇지 않다면 솔직히 너무 무리입니다. 8자리까지의 영문/숫자의 조합을 모두 계산해보면 62의 8승이 됩니다.
이건 자그마치 218,340,105,584,896 개나 됩니다. 즉 218조 입니다.
이걸 1초에 한개씩만 검사하더라도 6,923,519년이 걸리는 어마어마한 계산이 됩니다. 6백9십만년이면 태초의 인류였던 크로마뇽인이
컴퓨터로 돌리기 시작해도 아직까지 그 결과가 안나왔을껍니다.
따라서 비밀번호는 완전히 순차적으로 입력하지 말고 가능성이 높은 목록을 준비해야 합니다.
제가 사용하는 테이블은 아주 흔하게 사용되는 목록이죠.

좋은 회선을 사용하는것도 중요합니다. POP서버가 반응을 늦게 하더라도 멀티쓰레드로 다중접속을 해 놓으면 속도를 빠르게 할 수
있으니까요. 적당 수준의 프로그래밍 실력이 요구되는 내용입니다.

참고로 전 이걸 비주얼 베이직으로 구현합니다.

도움이 되셨길 바랍니다.

그럼 이만.


코끼리 제주댁 생명의 달콤한 언어 ◀FUBU SHOP▶ 강남성모 QS몰 나는 항상 꿈꾼다. 마음의 만화경 곰돌이 나만의 인테리어
2009/04/09 11:55 2009/04/09 11:55
top

Leave a comment..