본문 바로가기
Security Essay

권한 문제로 일어나는 해킹 사례

by _Jay_ 2021. 5. 10.
반응형

이번에 다뤄볼 주제는 해킹 사고가 날 때 빈번하게 원인이 되는 "권한"에 대한 내용으로, 생각보다 많은 해킹 사례가 발생하지만 이상하리만큼 잘 대응이 되지 않는 문제에 대해 소개드려볼까 합니다. 권한으로 인해 발생하는 해킹 시나리오를 말씀드리기 전에 먼저 권한의 개념부터 간단하게 설명드리고 넘어가보죠.

처음 리눅스를 공부하면서 권한에 대한 내용을 배우시면, 파일의 퍼미션(Permission, 허가권)인 'rwx' 즉, 읽기, 쓰기, 실행 권한 그리고 그 파일의 소유권에 대해 들어보셨을 겁니다. 예를 들어 'a.txt라는 파일의 소유권은 userA의 것이며 userA는 읽기, 쓰기, 실행을 모두 할 수 있고, 그 외의 유저는 실행만 할 수 있다'라는 내용을 리눅스 상에서 "ls -l"이라는 명령어를 쳐서 권한을 확인해 볼 수 있었죠. 즉, 여기서는 이런 권한을 통해서 각 유저가 접근할 수 있는 파일 또는 정보가 제한적임을 알고 있으시면 됩니다.

그런데 이를 무시하고 모든 파일들과 정보들에 접근할 수 있는 계정이 있는데, 그것이 바로 관리자 계정이라고 불리는 root 계정입니다. 리눅스를 처음 배울 때 vmware나 virtualbox 위에서 리눅스를 설치하시면 거의 다 root 권한으로 접속 하셨을 겁니다. 그리고 별도의 실습을 위해서 원격으로 ssh를 붙어도 root 계정으로 접속을 보통 하게 되죠. 사실 root로 접속하지 말라고 ssh에서는 일부러 막아놓기까지 했는데, 우리는 편의성을 이유로 ssh의 config 파일에서 PermitRootLogin의 설정을 바꿔가면서까지 root로 로그인 합니다.

사실 이거 기업에서는 절대 해서는 안되고 용납할 수 없는 일이죠. 그 이유에 대해서 간단히 설명해보겠습니다. 만약 기업에서 운영하는 시스템에 A, B, C라는 정보가 있다고 생각해봅시다. A는 회사의 간부들만 볼 수 있는 기밀 데이터, B는 일반 사원들만 볼 수 있는 데이터, C는 고객들이 볼 수 있는 데이터라고 했을 때, C라는 데이터는 이 시스템에 아무 계정이나 접속해서 볼 수 있겠죠. 리눅스로 치면 guest 계정 정도 될 겁니다. B 데이터는 사원들이 볼 수 있는 데이터이기 때문에 어느 정도의 권한을 부여하여 만든 계정으로만 볼 수 있을테고, 그러면 A 데이터는 가장 높은 권한을 가진 계정으로만 볼 수 있겠죠. 이를 리눅스에서 root 계정이라고 해봅시다.

그런데 만약에, 이 회사 시스템의 root 계정이 해킹당했다고 가정해보죠. 생각보다 끔찍한 일이 일어날 겁니다. 해커가 기밀 데이터인 A 데이터 뿐만 아니라 사원들의 개인정보가 포함된 B 데이터도 볼 수 있게 되는 거죠. 유출된 개인정보로 인해 2차, 3차 범죄에 노출된다면 그 피해는 쉽게 예상하기 힘들 겁니다. 여기서는 단적으로 root 계정이 해킹되었을 때를 예시로 들었지만, 일반 계정에 과도하게 많은 권한이 부여되었다면 충분히 발생할 수 있는 시나리오 입니다.

또한 관리자 계정 외에도 권한이 많이 부여되지 않아도 문제가 되는 경우가 있는데 바로 디폴트 계정입니다. 리눅스 서버만 해도 처음 설치하면 daemon, ftp 등 꽤 많은 디폴트 계정이 있었는데, 지금이야 쉘을 실행시지 않도록 변경되었다고는 하지만 이전에는 디폴트 계정에 기본 패스워드가 걸려있지 않아서 해커가 공격하기 참 좋았던(?) 시절이 있었습니다. 그래서 해커들은 이를 발판삼아 관리자 계정을 탈취하기 위한 공격을 이어가게 되죠. 그래서 서버 보안 진단을 하면 ssh나 터미널을 통해 접속할 때 root 계정으로 접속할 수 있는지, 디폴트 계정은 비활성화되어 있는지를 가장 기본적으로 확인합니다. 그리고 더 중요한 것은 기업에서도 직무를 분리해서 최소한의 권한만 부여하는 겁니다. 이 부분은 ISMS-P 인증에서도 중요하게 다루고 있는 항목인 만큼 기억하시면 좋을듯 합니다.

해당 기사에서는 모니터링 앱을 예시로 들고 있는데, 모니터링 도구 특성상 처음부터 높은 권한을 요구할 수 밖에 없고, 이를 해킹하면 전반적인 시스템에 접근할 수 있기 때문에 문제가 된다고 말하고 있습니다. 이미 기업에서도 권한을 최소한으로 하고 권한이 높은 계정들을 지속적으로 관리해야 한다는 점은 알고 있을 겁니다. 하지만 사업성 측면에서 권한을 공유하지 않았을 때 생산성이 저하된다면 문제가 되겠죠. 그래서 윈도우 서버같은 경우에는 액티브 디렉토리(AD, ActiveDirectory)를 통해 계정을 관리할 수 있는 기능을 제공하고 있기도 합니다.

지속적으로 보안 사고가 증가하고 있는데도 불구하고 기업에서 생산성과 보안을 저울질 한다는게 아이러니 하지만 어쩔 수 없는 현상인 것 같기도 합니다. 문제는 해커들도 이를 잘 알고 있어서 계속 이쪽으로 포커스를 맞춰서 공격을 하고 있기 때문에, 기업에서 선제적으로 잘 대응해야하지 않을까 라는 생각을 해봅니다.

 

 

권한이 제대로 운영되지 않는다는 건 해커들도 잘 알고 있다

최근 과도하게 높은 권한을 가진 계정들과 소프트웨어 프로세스들 때문에 발생하는 침해 사고들이 늘어나고 있다. 권한 높은 계정들에 대한 조직적 관리가 이뤄지지 않으면 공격자들이 장악해

www.boannews.com

 

엄청난 기술적인 내용이 포함된 기사가 아니라 한번 쭉 읽으면 다양한 보안 사고를 이해하시는데 도움이 될 것 같아 가져와서 정리를 해봤습니다. 그럼 오늘은 여기서 줄이도록 하겠습니다. 감사합니다.

반응형

댓글