본문 바로가기
AhnLab 보안in

내 블로그, 안전하게 관리하자

by 보안세상 2020. 4. 3.

2007.11.05

 

1인 미디어 블로그가 인기를 끌면서, 보안에 대한 이슈도 제기되고 있습니다. 기존에 관리하던 블로그를 방치해 악성코드 배포지로 활용이 되거나, 비밀번호를 쉽게 하여 내 소중한 정보가 새어나가는 경우가 생길수도 있습니다. 아래 내용을 잘 살펴보셔서, 안전하게 블로깅을 할수 있길 바랍니다.

개인이 출판•방송•커뮤니티까지 다양한 형태를 취할 수 있는 1인 미디어 ‘블로그’ 이용자가 급증함에 따라 이와 관련된 보안 문제가 이슈로 떠오르고 있다.

대형 포털 사이트와 중소 인터넷 업체들이 블로그와 관련된 각종 서비스를 다양하게 제공하고 있어 누구나 손쉽게 블로그를 개설•운영할 수 있게 됐다. 하지만 이렇게 우후죽순 격으로 늘어나다 보니 실사용자보다는 잠자고 있는 계정도 상당한 비율을 차지하고 있는 실정이다.

최근 잠자고 있는 개인 블로그 관리자가 오랜만에 자신의 블로그를 찾았는데 블로그가 인터넷 광고로 도배되었을 뿐 아니라 관리자가 관리자 권한을 얻을 수 없어 접근이 금지 되어버린 상태로 방치된 블로그가 발견되었다는 사례를 종종 접하게 된다.

이러한 일이 발생하는 것은 일반 사용자들이 하나의 아이디와 비밀번호를 이용해 다수의 사이트에 가입하고 이렇게 가입한 사이트 중 보안에 허술한 사이트의 서버가 악의적인 사용자들에게 해킹을 당했기 때문이다. 이렇게 악의적인 사용자들은 별다른 노력 없이도 하나의 아이디와 비밀번호를 이용해 다수의 사이트에 일반사용자 계정으로 로그인할 수 있게 된 것이다. 이뿐만 아니라 계정정보가 유출되었을 경우 그 피해는 블로그의 내용 변경부터 사생활 침해까지 심각한 문제를 야기할 수 있다.

따라서 좀더 강력하고 세부적인 개인정보보호 관련 법안들이 마련되어야 하며, 블로그 운영업체에서는 안정적인 보안 서비스를 제공해야 한다. 또한 일반 사용자들은 강력한 비밀번호를 사용하여 전수 조사(Brute Force Attack)나 사전단어 공격(Dictionary Attack)에 대비하여야 한다. 이렇게 3화음을 조화롭게 이루어 보안 기초공사를 탄탄하게 하는 것은 아무리 강조해도 지나치지 않다.

이밖에 블로그 운영자들은 스팸 트랙백을 스팸 메일처럼 일일이 찾아 삭제해야 하는 불편함을 겪고 있다. 트랙백(Trackback)이란 쉽게 풀이하자면 댓글을 다른 게시물에 기록하고 해당 주소를 원본 게시물에 알려주어 의견을 교환할 수 있는 수단으로 사용되는 것을 말한다. 스팸 트랙백을 확인하기 위해 트랙백을 허용하고 하루 동안 기록된 트랙백을 확인해 보았더니 아래 그림과 같이 99건의 스팸 트랙백이 쌓여있는 것을 확인할 수 있었다.

[그림1] 스팸 트랙백 화면



이번 실험에서 확인된 바로 스팸 트랙백을 보내는 주범은 영어권이었으며 트랙백 전송 자동화 툴에 의해서 트랙백이 발송된 것으로 추정된다. 이렇게 자동화 툴이 만들어져 사용될 정도로 심각한 수준이 되어버려 대부분의 블로그 관리자들은 트랙백 기능을 해지하고 사용하고 있다.

그러나 이러한 현실에도 불구하고 현재 개인정보보호법은 3년째 국회에서 낮잠을 자고 있다. 유비쿼터스 사회로 진입하고 있는 IT 강국 이름에 걸맞게 사회적 요구에 귀를 기울여 하루 빨리 개인정보보호법을 통과시켜야 한다. 또한 통과 후에도 좀더 체계적이고 실효성 있는 보호 대책을 갖추어야 한다.

개인 사용자들이 자신의 개인정보보호를 위해 취할 수 있는 몇 가지.

첫 번째로 가입을 요구하는 웹사이트들의 보안 등급을 스스로 정하여 보안 등급에 맞는 비밀번호를 생성한다.

필자는 실제로 세가지 보안 등급으로 가입을 요구하는 웹사이트들을 분류하고 있다. 그 등급은 신용, 활동, 이벤트 등급이며 각 등급에 맞게 아이디와 비밀번호를 달리하여 계정을 생성하고 가입한다. 신용등급에는 온라인 뱅킹 관련된 사이트들이 주류를 이루고 있고, 활동등급에는 인터넷 상에서 글을 쓰는 등 자신의 의견을 게시할 수 있는 카페나 언론사 등이 포함되고 마지막으로 이벤트 등급은 거의 일회성 로그인으로 이벤트에 참가하거나 로그인 해야만 볼 수 있는 글이 있는 사이트가 이에 해당된다. 필자도 게으른 편이여서 세가지 밖에 구분하지 않지만 이벤트등급의 사이트에 가입할 때 신용등급 비밀번호를 입력하지 않는다는 것 만으로도 충분히 매력적인 제안이라고 생각된다. 또한 스마트 로그인 기능이 있는 유틸리티를 활용하여 매번 다른 비밀번호로 사용자 계정을 만들어 사용하는 방법도 있다. 무엇보다 1대의 컴퓨터를 다수의 사용자가 사용하여 개인정보가 유출될 수 도 있으니 항상 개인정보보호에 관심을 가지고 신경 써야 한다.

두 번째로 비밀번호를 생성할 때 강력한 비밀번호(Strong Password)를 생성하거나 도와주는 프로그램을 이용하면 실제로 악의적인 사용자들이 비밀번호를 찾아내는 전수조사(exhaustive search or brute force attack), 사전단어공격(dictionary attack) 등의 방법들에 의해 개인정보가 유출되는 것을 방지할 수 있다.
전수조사는 경우의 수를 처음부터 끝까지 대입하는 것을 말하며 사전단어공격은 일반 사용자들이 자주 사용하는 “1111”, “test”, “love” 등의 비밀번호로 구성된 목록을 대입하는 방법을 말한다.

이런 암호공격 방법들은 별다른 알고리즘이 없어 단순하기는 하지만 컴퓨터 성능이 향상되면서 결코 무시할 수만은 없게 되었으며, 암호 알고리즘인 DES (The Data Encryption Standard)는 유일하게 비트문자열의 배타적 OR 연산만 수행하기 때문에 하드웨어적 또는 소프트웨어적으로 매우 효율적이라고 평가 받고 있다. 하지만 키의 길이가 작아 전수조사로 공격 당할 수 있다고 알려졌고 실제로 1988년 7월에 EFF(Electronic Frontier Foundation)에서 DES cracker라는 특수 기계를 고안하여 DES를 깼다고 선언했다.

앞에서 언급된 것이나 그 이외의 공격법들을 알지 못하는 일반 사용자들은 비밀번호 강도를 표시해주는 유틸리티를 사용하여 강력한 비밀번호를 사용할 수 있다. 아래 [그림2]는 온라인으로 비밀번호 강도를 검사할 수 있는 곳이다. 독자들도 자신이 사용하는 비밀번호를 입력하여 강도 테스트를 해보기를 바란다.

[그림2]는 “wo28#*fu”을 비밀번호로 입력한 경우이다. 비밀번호로 문자, 숫자, 특수기호를 포함하여야 강도 높은 비밀번호를 구성할 수 있으며 비밀번호의 길이가 길어질수록 경우의 수는 커지기 때문에 [그림2] 에서 입력한 비밀번호보다 길이가 긴 비밀번호를 입력할 경우 “BEST”가 표시된다.

주소 - http://www.microsoft.com/athome/security/privacy/password_checker.mspx

[그림2] 비밀번호 강도 검사 화면



세 번째로 블로그가 운영되는 몇 개 안 되는 플랫폼을 다수의 사용자가 사용하다 보니 특정 블로그 플랫폼에 취약점이 발견되면 대량의 블로그들이 위험에 노출된다. 또한 블로그 플랫폼에 사용되는 플러그인 기능도 안정성이 검증되거나 공식적인 곳에서 배포하는 플러그인을 사용하는 등 주위를 기울여야 한다. 이밖에 항상 보안 동향에 신경을 쓰고 보안 제품과 운영시스템의 보안 패치를 최신 버전으로 업데이트하여 취약점으로 인해 악의적인 사용자들의 공격 대상이 되지 않도록 주의한다.

네 번째로 개인 PC도 악의적인 공격자의 공격 대상이 되고 있는 만큼 윈도우 업데이트 서비스를 이용하여 윈도우 결함을 수정하고 바이러스 또는 스파이웨어를 진단하고 치료하는 프로그램을 사용하는 등 보안을 게을리 해서는 안 된다.

블로그 서비스 운영업체의 보안 수칙 제안

한편, 블로그나 웹 서버 관리자들은 위에서 언급했던 전수조사나 사전단어공격들을 고려하여 로그인 프로세스에 다음과 같은 기법을 활용함으로써 보다 강력한 보안등급으로 서비스를 제공할 수 있다.

첫째, 비밀번호 생성시 강력한 비밀번호 생성 알고리즘을 활용한다. 예를 들어 영문자와 숫자를 반듯이 혼용하여야 하며, 비밀번호의 길이는 8자 이상 사용 등의 원칙을 알고리즘에 적용함으로써 강도 높은 비밀번호 생성을 도와 준다.
둘째, 아이디와 비밀번호를 암호화 하여 네트워크 스니핑 공격에 대비한다.
셋째, 입력횟수를 제한하여 무작위로 입력하는 공격에 대해 대비한다.

강력한 패스워드 만들기와 사용 방법
Microsoft에서 발표한 강력한 패스워드 사용 방법에 대해 소개한다.
(원문보기) Strong passwords: How to create and use them

대부분의 해킹 사례에서 사용자 아이디와 비밀번호가 도용되었으며 이런 문제를 해결하기 위해 다양한 방법이 사용되고 있지만 최근 온라인 뱅킹이나 게임 사용자 인증에서도 사용되어 점차 사용층이 넓어지고 있는 OTP(One Time Password)를 간략하게 소개하고 마무리 지으려 한다.
OTP의 개념은 일회용 비밀번호를 사용함으로써 비밀번호가 스니핑(Sniffing) 또는 스푸핑(Spoofing) 등으로 가로채여도 쓸모 없어지게 만드는 것이다.
일회용 비밀번호를 생성하는 방법으로 S/Key, Challenge-Response, Time-Synchronous 방식이 있다.
S/Key 방식은 해쉬(Hash) 함수를 사용하며 이를 여러 번 적용함으로써 일회용 비밀번호를 생성하고, Challenge-Response 방식은 임의의 난수를 암호 알고리즘의 입력값으로 사용하여 일회용 비밀번호를 생성한 후 서버와 통신하여 사용자 인증을 하는 방식이다. 마지막으로 Time-Synchronous 방식은 Challenge-Response 방식에서 임의의 난수값 대신에 시간값을 이용하는 방식이다. 각 방식은 장단점이 있으므로 보다 자세히 알아본 후 사용자 인증 프로세스에 적용하면 보다 안전한 서비스를 제공할 수 있을 것이다.



이번 글에서는 블로그 해킹 방지를 위해 블로그 운영자 또는 서버 관리자들에게 도움이 될만한 요소들을 알아보았다. 정보를 가진 주체자로써 좀더 적극적으로 보안에 관심을 가지고 실천하는 것이 중요하다. 지금까지 얘기한 사실들이 어떻게 보면 예전부터 해오던 이야기였고 너무나도 당연한 것일 수도 있다. 하지만 이 글을 통해 보안의 기본은 기초부터 실천하는 것이 중요하다는 것을 새삼 느낄 수 있었으면 하는 바램이다.[Ahn]

[저자] 박호진 안철수연구소 ASEC 주임연구원
[출처] 안철수연구소