블로그

Threat Stack이 추가 런타임 공격 감지 기능을 도입

F5 썸네일
F5
2020년 8월 10일 업데이트

Threat Stack은 이제 F5 Distributed Cloud App Infrastructure Protection (AIP)입니다. 오늘부터 팀과 함께 분산 클라우드 AIP를 사용해 보세요.

더 많은 유형의 애플리케이션 공격으로부터 보호

Threat Stack Application Security Monitoring은 코드의 취약점을 감지하고 실시간으로 라이브 공격을 차단합니다. 대부분의 애플리케이션 보안 솔루션은 가장 일반적인 런타임 공격(예: SQL 주입 또는 XSS)에 대해 설명하지만, 최신 웹 애플리케이션 언어와 프레임워크에도 남용될 수 있는 합법적인 기능이 포함되어 있어 해당 기능만큼(또는 그보다 더) 큰 영향을 미칠 수 있는 공격이 발생할 수 있습니다. Threat Stack Application Security Monitoring은 SQLi 및 XSS로부터 보호하며, 이제 경로 또는 디렉터리 트래버설 공격과 원격 코드 실행으로부터 웹 애플리케이션, 마이크로서비스 및 API 워크로드를 추가로 보호하기 위해 추가적인 런타임 공격 감지 기능을 도입합니다. 

원격 코드 실행(RCE)

원격 코드 실행(RCE — 임의 코드 실행 또는 ACE라고도 함)을 통해 공격자는 애플리케이션이 실행 중인 서버에서 임의의 코드를 실행할 수 있습니다. 이는 주입 공격입니다. 공격자는 자신의 운영 체제 명령을 실행하는 함수에 문자열을 전달할 수 있습니다. 이것이 Javascript에서 어떻게 작동하는지에 대한 좋은 설명은 Wanago.io 블로그의 https://wanago.io/2018/11/19/how-does-eval-work-and-how-is-it-evil-javascript-eval/ 에 나와 있습니다. 이 예에서 eval 함수는 문자열을 받아서 나머지 애플리케이션과 동일한 권한으로 코드로 실행합니다. 공격자가 귀하의 사이트의 가입 양식에 다음을 사용자 이름으로 제출한다고 상상해 보세요.

'존"); exec("rm -rf ./*"); console.log("'

해당 사용자 이름 값이 eval 함수에서 사용된다면, 그것은 좋은 날이 아닐 것입니다!

Threat Stack은 빌드 시점과 런타임 시 두 가지 방법으로 RCE로부터 사용자를 보호합니다. 빌드 시점에 AppSec 마이크로 에이전트는 Node.js의 eval() 이나 Python의 os.fork 와 같은 RCE 공격에 취약한 함수 호출을 식별합니다. 이러한 기능은 합법적이고 안전하게 사용될 수 있으므로 개발자에게 "위험"으로 표시합니다. 우리는 왜 위험할 수 있는지 설명하고, 더 안전한 대안을 제시하는 e러닝 콘텐츠를 제공합니다. 하지만 런타임에는 실제로 취약점을 악용하려는 시도가 식별됩니다. 예를 들어, 셸 명령 악용을 포함한 웹에서 유입된 콘텐츠에서 위험한 기능 중 하나가 호출되는 것을 발견하면, 우리는 이를 공격으로 표시하고 즉시 귀사 팀에 알립니다. 일반적인 명령어 익스플로잇에는 kill, disable, stop, fdisk 등과 같은 명령어가 포함될 수 있습니다. 

경로 또는 디렉토리 탐색 

경로 또는 디렉토리 트래버설 공격을 통해 공격자는 애플리케이션이 실행 중인 서버에서 임의의 파일을 읽을 수 있고(어떤 경우에는 쓸 수도 있음) 웹 애플리케이션이 있는 폴더 외부의 파일을 읽을 수 있습니다. 여기에는 애플리케이션 소스 코드, 자격 증명 또는 중요한 운영 체제 파일이 포함될 수 있습니다. 이 기능은 변수에 상대 파일 경로를 사용하는 일반적인 기술, 즉 일반적으로 "점-점-슬래시(../)" 시퀀스라고 하는 기술을 활용하여 작동합니다. 예를 들어, 시퀀스 ../는 디렉토리 구조에서 한 단계 위를 참조합니다. 이러한 시퀀스를 여러 개 연결하면 다른 파일과 디렉토리에 액세스할 수 있는 파일 시스템 루트를 참조할 수 있습니다. 

점-점-슬래시 시퀀스는 합법적으로 많이 사용되기 때문에 이를 사용하는 것이 위험으로 표시된다면(SAST 도구에서 볼 수 있듯이) 짜증나는 일이 될 것입니다. 대신 Threat Stack AppSec Monitoring은 이를 사용하는 함수와 런타임에 함수에 전달되는 페이로드를 모두 분석합니다. 예를 들어, fs.open/read/write/etc 와 같은 명령을 사용하는 Node.js 애플리케이션에서 함수에 전달되는 페이로드에 디렉토리 경로 인코딩이나 중요한 OS 파일에 대한 참조가 있는지 확인할 수 있습니다. 악성 페이로드가 포함된 위험한 기능은 공격으로 표시되고, 팀에 즉시 알림이 전송됩니다.

풀 스택 보안 관찰 솔루션의 일부

공격자는 계층에 대해 생각하지 않습니다. 그들은 컨테이너가 실행되는 곳이나 호스팅되는 클라우드 서비스를 무시한 채 애플리케이션에만 집중하지 않습니다. 예를 들어, RCE 공격은 호스트에서 승인되지 않은 프로세스가 실행되는 결과를 초래할 수 있습니다. 또는 경로 탐색 공격으로 인해 중요한 클라우드 호스트 자격 증명 파일이 손상될 수도 있습니다. 이러한 공격과 기타 런타임 애플리케이션 공격을 감지하는 것이 중요하지만, 복잡성이나 인프라의 변화에 관계 없이 모든 공격 표면에 대한 보안 관찰 기능을 활성화하는 것이 중요합니다. 이는 전체 Threat Stack Cloud Security Platform®의 일부로서 AppSec 모니터링의 힘입니다.   

Threat Stack Cloud Security Platform과 해당 애플리케이션 보안 기능에 대해 자세히 알아보려면 데모에 등록하세요. 당사의 보안 및 규정 준수 전문가가 귀하의 조직의 요구 사항에 대해 기꺼이 상담해 드립니다.

 

Threat Stack은 이제 F5 Distributed Cloud App Infrastructure Protection (AIP)입니다. 오늘부터 팀과 함께 분산 클라우드 AIP를 사용해 보세요.