2021-10-25 04:05 (월)
[보안칼럼] Single Packet Authorization(SPA)란?
상태바
[보안칼럼] Single Packet Authorization(SPA)란?
  • 길민권 기자
  • 승인 2021.09.17 16:00
이 기사를 공유합니다

다크 웹에 로그인 정보(IDPWD)가 담긴 내용이 공개되었다는 기사는 이제 흔한 내용이다. 오죽하면 요즘엔 해커가 해킹은 안 하고, 유출된 계정 정보를 가지고 기업 내부로 침투한다고까지 한다.

우리가 보통 해킹 이렇게 생각을 하면 그 회사의 여러 가지 정보 1) 도메인, 이메일, IP 대역 등을 찾아서 2) 포트 스캔을 하고 그 결과 3) 서비스명을 찾고 다시 그 서비스명으로 4) 취약점 공개되었는지 그래서 취약점이 있는 버전을 여전히 쓰고 있다면 해당 서비스에 exploit을 해서 해킹하는 순서로 이해하고 있었다. 그런데 이제는 그게 아니라 다크 웹에 있는 유출된 정보를 찾아 그 계정으로 VPN을 타고 아무런 제재 없이 침투가 가능하다는 것이다. 하여튼 전통적인 해킹 순서를 따르거나 또는 요즘처럼 유출된 계정 정보를 가지고 침입했다는 것에 대한 취약부분을 고민해 볼 필요가 있다.

1) 외부에 노출되어 있는 도메인/서비스/포트

2) 포트 스캔/취약점 스캔 등을 통해 취약부분 찾기

3) 해킹에 성공 또는 유출된 계정 정보 이용하면 그다음부터는 아무런 제약 없이 내부 시스템 활보

그럼 위의 문제점을 제거하면 침해 사고 위험을 줄 있다고 가정할 수 있을 것 같다. 물론 이런 취약 부분을 제거하면 또 다른 취약 부분을 찾을 것이기 때문이다.

TCP/IP는 위에 그림과 같이 외부(인터넷)에 공개되어 있고, 그다음 TCP 세션을 맺는다. 그리고 그 Port에 바인딩 되어 있는 서비스에 연결하므로 이때 일반적인 인증 과정을 거치게 된다. 이렇게 설계된 것이다.

이것을 외부에 노출시키지 않으면서, 인증을 하고 인증에 성공하면 그다음에 권한을 부여할 수는 없을까? 제로 트러스트에서 이야기하는 것과 같이 어떻게 가능하지?

이제 SPA(Single Packet Authorization)를 설명할 때가 되었다. SPA는 이렇게 세션을 맺기 이전에 서로 연결하려는 종단(end to end) 간의 상호 신뢰 세션을 맺기 위한 방법이다. 쉽게 설명하자면 이렇게 설명할 수 있을 것 같다. 클리이언트가 서버에게 통신을 하려고 할 때 먼저 클라언트가 패킷 하나에 서로를 신뢰할 수 있는 기밀정보를 포함해서 서버에게 보낸다. 이 단일 패킷(Single Packet)에 서로 신뢰할 수 있는 정보가 포함된 경우에만 서버는 클라이언트에게 세션을 맺도록 허락하는 것이다(이해를 돕고자 쉽게 설명한다. 자세한 사항은 인터넷에 방대하게 소개되어 있다).

그럼 만약 해커가 port scanner로 해당 포트를 스캔하면 서버는 어떤 답변을 줄까? 서버는 port closed라는 답변만 준다. 그러므로 해커에 입장에서는 서비스에 바인딩 되어 있는 포트에 연결할 수가 없는 것이다. 해커는 이렇게 포트에 세션 접속을 할 수 없으니 어떤 서비스가 연결되어 있는지 알 수가 없는 것이다. 자 다시 돌아가서 클라이언트가 SPA를 서버 쪽에 보내 통신을 시작할 수 있는 길이 열리게 되면 이때는 종단 간의 암호화 통신을 하고 그리고 사용자가 맞는지 identity 확인을 하는 것이다.

이렇게 구현이 된다면 이것은 인증을 먼저 하고 그다음 세션을 연결하는 형태가 되며, 사용자가 인증을 통과(ID/PWD 또는 2FA) 하면 그때 해당 사용자에게 접근 권한이 부여된 자원이 나열되는 것이다. 이러면 위의 3가지 이야기했던 3가지 1) IP 노출 2) port 노출 및 3)측면이동 허용 등에 대한 위험 요소를 제거할 수가 있는 것이다.

​Cloud Security Alliance에서는 SDP(Software Defined Perimeter) 솔루션에서 구성 모듈 간의 안전한 통신 및 취약성을 제거하기 위해 SPA가 중요한 보안 기술이라고 설명하고 있다.

​계정은 유출될 수 있다. 그것도 유효한 계정 정보일 수 있다. 그러나 그 계정 정보는 SPA가 사용된 SDP솔루션에서는 무용지물이므로, 해커는 다른 침투 방안을 찾아야 하는 것이다.

[글. 타이거CNS / 타이거CNS 블로그 / 문의. h9430@tigercns.com]

★정보보안 대표 미디어 데일리시큐!★