NFS 제어하는 윈도우 원격 코드 실행 보안 취약점 '주의'
상태바
NFS 제어하는 윈도우 원격 코드 실행 보안 취약점 '주의'
  • 곽중희 기자
  • 승인 2022.07.19 10:02
  • 댓글 0
이 기사를 공유합니다

 

트렌드마이크로 보안 연구원들이 네트워크 파일 시스템(NFS)에 영향을 미치는 윈도우 원격 코드 실행 취약점 CVE-2022-30136에 대한 분석을 발표했다.

연구원들에 따르면, 최근에 패치된 윈도우 취약점 CVE-2022-30136은 NFSV4 요청에 대한 부적절한 처리로 인해 발생한 것으로 파악됐다.

해커는 이번 취약점을 통해 시스템 컨텍스트에서 임의 코드 실행을 위한 대상 서버에 악의적인 RPC 호출을 전송할 수 있다. 전문가들은 해킹이 제대로 이뤄지지 않아도 시스템에 충돌이 발생할 수 있다고 지적했다.

ZDI 측은 “CVE-2022-30136, CVE-2022-26937 등의 취약점으로 인해 원격 공격자가 NFS를 실행하는 시스템에서 권한 있는 코드를 실행할 수 있다”라고 설명했다.

이어 “이번 달 업데이트는 NFSV4.1의 버그를 수정한 반면 지난 달의 버그는 NSFV2.0 및 NSFV3.0 버전에만 영향을 미쳤다. 이것이 변종인지, 실패한 패치인지 또는 완전히 새로운 문제인지는 분명하지 않은 상황이다. 그럼에도 불구하고 NFS를 실행하는 기업은 이 수정 사항을 테스트하고 배포하는데 우선 순위를 두어야 한다"라고 말했다.

NFS 프로토콜은 1984년 Sun Microsystems에서 개발했으며, 사용자가 로컬 파일 시스템에 접근하는 것과 동일한 방식으로 원격 파일에 접근할 수 있게 만든다.

NFS 프로토콜은 ONC(Open Network Computing) RPC(원격 프로시저 호출)를 사용해 제어 메시지를 교환한다. ONC RPC 메시지가 TCP를 통해 전송되면 메시지의 길이를 지정하는 Fragment 헤더 구조가 앞에 추가된다. 이 정보는 단일 TCP 세션을 통해 전송된 여러 메시지를 구별하기 위해 수신자가 사용하는 정보다.

트렌드마이크로 연구원은 “윈도우의 NFS 구현에는 다양한 버퍼 오버플로 취약점이 존재한다. 취약점은 응답 메시지 크기의 잘못된 계산으로 인해 발생한다. 서버는 Nfs4SvrXdrpGetEncodeOperationResultByteCount() 함수를 호출해 각 opcode 응답의 크기를 계산하지만, opcode 자체의 크기는 포함하지 않는다. 이로 인해 응답 버퍼의 크기가 OP Count 4바이트로 너무 작아진다. 그럼 해당 버퍼는 OncRpcBufMgrpAllocate로 할당된다. 응답 데이터가 버퍼에 기록되면 응답 데이터가 오버플로된다"라고 설명했다.

한편, 보안 전문가들은 NFSV4만 OncRpcBufMgrpAllocate 기능을 사용하기 때문에 취약점이 발생한다고 지적했다.

보안 전문가들은 "이번 취약점은 2022년 6월 MS에서 패치됐으며 CVE-2022-30136으로 지정됐다. 피해를 최소화하기 위한 방법으로는 NFSv4.1를 비활성화해야 한다. 그러나 이로 인해 일부 기능이 손실될 수 있다. MS는 CVE-2022-26937에 대한 패치가 돼 있지 않으면 이 버그를 해결하기 위한 패치를 적용해서는 안된다. 두 패치가 이뤄져야 적절한 순서로 이뤄져야 취약점을 완전히 해결할 수 있다”라고 강조했다.

 

*이 기사는 글로벌 정보보안 블로그 ‘시큐리티 어페어즈(Secutiry Affairs)’의 설립자이자 유럽네트워크정보보안기구(ENISA) 소속 보안 전문가 피에루이지 파가니니(Pierluigi Paganini)와의 공식 파트너십을 통해 작성됐습니다. 
 



댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
0 / 400
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.