[후기] 제11회 해킹방어대회 HDCON 본선 진출기

 

HDCON 2014 에 처음으로 참가하여 본선까지 진출하게 되었습니다.
사실 참가 신청을 위해 등록할때는 1차 예선 통과가 목표였는데, 운 좋게도 목표를 초과 달성했습니다.
모두가 팀원들 덕분이라고 생각하며, 예선 참가 (혹은 본선 진출) 후기를 몇자 적어볼까 합니다.

이번 HDCON은 기존 대회 방식과 다르게 완전히 방어 위주의 문제로 구성이 되었습니다.
“해킹 방어” 대회 임에도 불구하고 매년 공격 위주의 문제로 구성되었던점에 대해 여러가지 의견이 있었던것으로 알고 있습니다.
아마 주최측과 운영진들도 이러한 부분에 대해 고민하고 새로운 시도를 해본게 아닌가 생각됩니다.

본선 진출 유무를 떠나 제 개인적으로는 아주 흥미로운 대회로 기억될 것 같습니다..
기존 대회 방식에서 벗어나 새로운 시도를 한 운영진의 고민을 고스란히 느낄 수 있었고
실제 침해 사고 대응 업무를 진행하면서 쌓아온 역량을 검증해 볼 수 있는 기회이기도 했기 때문입니다.

그러나 일부 참여자들이 문제 방식과 운영 방식에 대한 불만의 목소리를 제기하기도 했습니다.
이에 대해서는 저도 공감하는 바가 있으므로, 아래 본문에서 좀 더 자세하게 다뤄보겠습니다.

 

만만치 않았던 예선 1차 문제들

이번 11회 HDCON은 예선을 1차 2차로 나누어서 진행하였습니다.
1차는 4개 분야별(Web, Binary, Network, Incident Response) 주어진 문제의 해답을 맞추는 방식이었으며,
1차 예선 결과 상위 100팀에게 2차 예선 진출 기회가 부여되었습니다.

1차예선

위에 보이는 그림처럼 4개 분야의 문제가 주어졌는데, 처음에는 Web과 Binary 만 오픈되었습니다.
Web문제의 경우 php나 jsp로 작성된 웹서비스가 주어질 것으로 생각했는데,
특이하게도 WordPress 블로그 취약점을 찾는 문제가 나왔습니다.

운좋게도 저는 지금 운영중인 이 블로그 (Noplanlife.com)를 통해 워드프레스에 대한 운영을 해 본 터라
워드프레스의 특징과 구조에 대해 어느정도는 알고 있던 상태였습니다.
(제 사이트의 보안을 위해서 평소에 워드프레스 취약점에 관심도 많았습니다)

워드프레스의 경우 워드프레스 자체 취약점 보다는 플러그인을 통한 취약점이 훨씬 많기 때문에
가장 먼저 설치된 플러그인들을 조사한 후, 이에 대한 취약점을 찾는 방식으로 접근하였습니다.

문제는 취약점을 통해 MySQL 서버까지 접근을 했는데, 비밀번호 Hash값에 대한 힌트가 없어서
이를 크랙하는데 상당한 시간이 소요되었습니다.
아마도 이 때문에 Web 문제를 푼 팀이 18팀 밖에 안되지 않았나 생각됩니다.

나머지 Binary , Network, Incident Response도 생각보다 만만하지는 않았습니다만
끝까지 포기하지 않은 결과 최종 3취로 예선 1차를 통과하였습니다.

문제 풀이에 대해서는 다음에 기회가 되면 Write-Up 문서를 작성하여 따로 포스팅 하도록 하겠습니다.
(지금은 올려도 문제가 되지 않는지에 대해 확인을 못했습니다)

 

예선 2차 – 멘붕과 환호를 반복했던 시간들

예선 2차는 가상의 서버가 주어진 상황에서 서비스 취약점을 패치하고 실시간으로 공격에 대응하는
종합적인 침해 사고 대응 역량을 평가하는 문제였습니다.

팀에서 예상했던 것은 웹서비스 취약점 / 멀웨어 분석 / 네트워크 분석 및 공격 방어 등이었는데
대부분이 예상 범위내에서 출제되었습니다. 물론 문제를 푸는 것은 다른 이야기였습니다만… ㅎㅎ

예선 1차처럼 주어진 문제에 대한 해답을 찾기만 하면 조금은 여유(?) 로울 수 있었을텐데
정기적으로 운영진 측에서 취약점 패치 여부를 확인한 후 미 패치 항목에 대해 감점을 부여했기 때문에
취약점 분석하랴 대응 하랴… 정말 정신이 하나도 없었습니다.

하지만 주어진 문제의 답을 찾았을 때, 그리고 취약점 대응을 통해 감점이 되지 않았을때는
짜릿한 쾌감을 맛볼 수도 있었습니다. (물론 미 해결 문제로 인해 멘붕도 겪었습니다)

정신없이 분석과 대응을 하다 보니 10시간이 훌쩍 흘렀고,
저희 팀음 최종 순위 6위로 본선에 진출하게 되었습니다.

최종순위

저희 팀이 작성한 예선 2차 Write-up 문서는 우수 보고서로 선정되어 현재 다운로드가 가능합니다.
필요하신 분든은 다음 링크를 통해 확인하시기 바랍니다.

[예선 2차 Write-up 보고서 다운 받기]

 

칭찬하고 싶은 점 / 그리고 아쉬웠던 점

대회 운영에 대해 이래저래 말이 많은 것이 사실이지만 칭찬할 부분은 칭찬하고
아쉬운 점은 향후 개선을 위한 의견으로 남겨두는게 맞지 않나 싶습니다.

먼저 칭찬하고 싶은 점은 대회 이름 “해킹 방어 대회”의 본질에 대해 고민한 흔적이 느껴졌다는 것입니다.

사실 참여했던 저 역시 해킹 “방어” 대회 인지 “해킹” & “방어” 대회 인지 정확하게 알고 있지 못했습니다.
앞서 본문 처음에 언급했듯이, 이번에는 실제 침해 사고에 대한 대응 능력을 평가하는 것..
즉, 해킹 “방어” 의 본질에 좀 더 충실했다는 점을 높이 평가하고 싶습니다.

실제 사고 분석 업무를 수행하면서 다양한 케이스를 많이 다뤄보았지만
이번 처럼 실제 상황에 맞딱트려보니 제가 부족했던 부분이 어떤 것인지도 돌아볼 수 있게 되었습니다.

아쉬웠던 점을 꼽으라면, 운영의 미숙 보다는 용어 전달의 미숙함을 꼽고 싶습니다.

문제 자체가 어려웠다기 보다, 운영진이 원하는 방향이 무엇인지 명확하지가 못했습니다.
예를 들면, 취약점 대응 부분에 있어 “어플리케이션 ID/PW를 변경하면 안된다”는 규정이 있었는데
여기서 말하는 “어플리케이션”의 범위가 어디인지를 정확하게 알 수 없었습니다.
(워드프레스를 의미하는것인지, MySQL인지, 또는 다른 어플리케이션을 의미하는지…)

또는 “패치”에 대한 정의 역시 참여자의 기준에 따라 다르게 해석할 수 있는 부분이라 생각했습니다.
저의 경우 패치를 ‘코드 수정’ 과 같이 Specific 하게 이해한 반면,
다른 참여자의 경우 패치를 “공격으로 부터 방어할 수 있는 어떠한 방법”  으로 이해한 듯 했습니다.
이에 따라 정당(?)하게 패치를 함에도 불구하고 감점이 된 팀들도 있었습니다.

이러한 점들은 차후 대회때 충분히 고려가 되었으면 하는 바램입니다.

 

마무리 지으며

이번 해킹 방어 대회는 “방어”의 본질을 잘 살린 대회라고 개인적으로 평가하고 싶습니다.
무엇보다 실제 침해 사고를 재현하고자 했던 운영진들의 노력까지 비난받아서는 안된다고 생각합니다.
아쉬웠던 점들은 본선 대회때부터라도 좀 더 명확하게 개선하여 대회 운영으로 인한
잡음이 발생하지 않기를 바래봅니다.

처음 참가하여 본선까지 올랐지만 아직도 갈 길이 멀게만 느껴집니다.

남은 한달간의 시간동안 부족했던 부분이 무엇인지 꼼꼼히 살펴보고 본선 대회에 임해야 하겠습니다.

마지막으로 경쟁팀과의 승부보다는 즐길 수 있는 마인드를 가져야겠다고 다짐하며
본선 진출기를 마칩니다.

감사합니다.

Site Footer

Sliding Sidebar

About Me

About Me

June Park