한RSS 구독자수

최근 덧글

악용된 사례가 있을..
by darkhi at 03/10
http://rgb..
by xeraph at 02/04
공개되고 있습니다...
by aljjam at 02/03
오오 자비로운 MS..
by 고르엡 at 01/16
이런.. 무심결에 ..
by xeraph at 12/10
11월이 아니라 1..
by 벌새 at 12/09
;;
by xeraph at 09/23
자바 런타임을 검색..
by lemon at 09/23
제가 너무 늦었어요..
by xeraph at 07/18
지금 이내용을 포스..
by jay at 07/18
우와.. 경보단계가..
by 페리 at 07/10
iframe 안녕하..
by xeraph at 07/09
이 역시도 DDOS..
by Sun2Da at 07/09
정보 감사합니다~
by xeraph at 07/07
msVidCtl.d..
by ww0jef at 07/07

최근 트랙백

많은 보안관련 사이트에..
by Zasfe Note at 01/02
MS 10월 보안 패치
by nchovy's.. at 10/14
제로보드 4.1pl9 ..
by nchovy's.. at 09/25
SMB v2 제로데이 ..
by nchovy's.. at 09/18
MS09-048: TC..
by nchovy's.. at 09/09
MS 9월 보안 패치,..
by nchovy's.. at 09/09
IIS 5/6 FTP ..
by nchovy's.. at 09/01
Pinkren 플래시 ..
by nchovy's.. at 08/26
리눅스 sock_sen..
by nchovy's.. at 08/17
MS 8월 보안 패치,..
by nchovy's.. at 08/12

MS10-007 관련 개발자용 권고사항

이 글은 ShellExecute API와 관련된 URL 검증 취약점(CVE-2010-0027)를 다루고 있습니다. 관련된 PoC는 BID-37884를 참조하시고 원문은 마이크로소프트 SRD 블로그의 MS10-007: Additional information and recommendations for developers를 참고하시기 바랍니다.

어떻게 이 취약점을 악용할 수 있습니까?

이번 취약점은 유효한 URL처럼 보이지만 실제로는 임의의 코드 실행을 초래할 수 있는 변형된 URL을 ShellExecute가 처리하는 경우 발생합니다. 주변을 살펴보면 ShellExecute를 이용하여 브라우저를 시작시키도록 만들어놓은 경우가 많습니다. URL처럼 보이는 문자열은 ShellExecute로 넘겨서 실행하면 된다고 생각하는 개발자가 많은데 원래 ShellExecute API의 기능은 파일을 실행하는 것입니다. 이번 취약점처럼 유효한 URL처럼 보이더라도 실제로는 시스템 명령을 실행하게 되는 경우가 발생할 수 있습니다.

개발자 권고사항

ShellExecute를 써서 URL 기반 네비게이션을 구현하려는 경우 매개변수의 유효성 검증에 주의를 기울이시기 바랍니다. 단순히 [scheme]://[FQDN]/[path]?[querystring] 포맷인지만 확인하지 말고 넘어온 URL 스킴이 허용된 스킴인지 검증하셔야 합니다. 이 부분은 안전한 웹 응용 프로그램 작성을 위한 마이크로소프트 설계 가이드라인의 4장에도 나오는 내용입니다. 이런 식으로 확실하게 검증해야만 API에서 취약점이 발견되는 상황에서도 안전을 도모할 수 있습니다.

by xeraph | 2010-02-24 22:23:27 | 권고문 | 트랙백 (0) | 덧글 (1)

트랙백 주소 : http://nchovy.kr/forum/2/article/528/trackback
darkhi

악용된 사례가 있을지 궁금하군요.
개발자 입장에서 보면 정상적인 포맷인지 확인하는 예외처리만 두었어도 안정적인 코딩으로 볼 것 같습니다.
솔직히 권고문 보면서 살짝 소름돋았습니다. 사람이 이렇게 생각하기도 하는구나 싶기도 해서...취약점은 볼때마다 신기합니다.

2010-03-10 16:05 x
이름 암호

MS10-006, MS10-012 SMB 취약점 세부사항

원문은 마이크로소프트 SRD 블로그의 MS10-006 and MS10-012: SMB security bulletins 입니다.

이번 2월 보안 공지로 발표된 SMB 취약점 중 MS10-006은 SMBv1 클라이언트 구현에서 발견된 2개의 취약점에 대한 것이고, MS10-012는 SMB 서버 구현에서 발견된 4개의 취약점을 다루고 있습니다.

SMB 서버 취약점은 무엇이고 어떻게 익스플로잇이 가능합니까?

첫번째 문제는 사용자 인증된 상태에서 원격 코드 실행이 가능한 취약점(CVE-2010-0020)이 모든 윈도우 버전의 SMBv1 서버 구현에 존재한다는 점입니다. 긴 파일 이름은 오류를 처리하는 코드 경로에서 커널 풀 메모리를 오염 시킬 수 있습니다. 이 취약점은 공격을 하려면 먼저 인증을 필요로 하기 때문에 중요 등급을 받았습니다.

두번째 취약점(CVE-2010-0021)과 세번째 취약점(CVE-2010-0022)은 SMBv1과 SMBv2 서버 구현 모두에서 인증 없이 서비스 거부 공격(DoS)이 가능한 취약점입니다. CVE-2010의 경우 Negotiation 요청을 처리하는 부분의 경쟁 조건이 원인이고, CVE-2010-0022는 SMB 요청의 경로 이름을 처리할 때 정수 언더플로우가 발생하는 것이 원인입니다.

마지막 취약점은 서버 쪽 취약점(CVE-2010-0231)으로 모든 버전의 윈도우에서 원격지에서 권한 상승이 가능한 취약점입니다. SMB가 생성하는 Challenge의 엔트로피가 충분하지 않았던 것이 원인입니다.

SMB 클라이언트 취약점은 무엇입니까?

첫번째 취약점(CVE-2010-0016)은 커널 풀 메모리 오염이 가능한 취약점제으로 윈도우 2003 이하 모든 SMBv1 클라이언트 구현에 존재합니다. 이 취약점은 SMB 클라이언트와 서버가 협상하는 과정에서 발생하므로 인증을 필요로 하지 않습니다. 공격자는 원격지에서 이 취약점을 이용하여 대상 시스템의 완전한 권한을 획득할 수 있습니다.

두번째 취약점(CVE-2010-0017)은 윈도우 비스타 이상의 SMBv1 클라이언트 코드의 경쟁 조건이 원인입니다. 이 취약점도 SMB 클라이언트와 서버의 협상 과정에서 발생하므로 인증이 필요하지 않습니다. 위험도는 클라이언트 윈도우의 버전에 따라 나뉘어져 있습니다.

  • 비스타나 윈도우 서버 2008의 경우 공격자가 대상 시스템의 제어 권한을 얻을 수는 없고 서비스 거부를 일으킬 수는 있습니다. 하지만 로컬의 인증된 사용자라면 이 취약점을 익스플로잇 할 수 있을 것이고 완전한 제어를 얻을 수 있을 것입니다.
  • 윈도우 7과 서버 2008 R2는 이 취약점의 다양한 변용을 통해 대상 시스템의 제어를 얻을 가능성이 있습니다. 원격 코드 실행이 가능한 위험 때문에 이 플랫폼에서는 해당 취약점이 긴급 등급으로 분류됩니다. 이번 업데이트는 원격 코드 실행 가능성 때문에 이루어진 것이긴 하지만 대부분 그 영향은 서비스 거부로 끝날 가능성이 높습니다.

왜 SMB 클라이언트 업데이트가 윈도우 7과 서버 2008 R2에서는 긴급 등급이고 비스타나 서버 2008에서는 중요 등급인 것입니까?

그 이유는 윈도우 7 개발 과정에서 설계를 바꾸면서 SMB 클라이언트 코드가 커널 모드 네트워킹 I/O 방식을 사용하도록 변경되었기 때문입니다. (Winsock Kernel 참조) 이 때문에 SMB 클라이언트 코드가 서로 다른 타이밍 조건에 노출되면서 경쟁 조건이 만들어진 것입니다. 하지만 WSK 자체가 취약점의 원인은 아니며 이번 업데이트로 인해 WSK가 변경되는 부분은 없습니다.

어떤 식으로 SMB 클라이언트 취약점을 익스플로잇 할 수 있습니까?

MS10-006의 취약점은 서버 쪽이 아닌 클라이언트 구현 쪽에 존재합니다. 따라서 이 취약점을 공략하려면 악성 SMB 서버를 만들어놓고 클라이언트가 이 서버로 접속하도록 유도해야 합니다. 여러분의 네트워크 환경이 외부 인터넷으로의 SMB 연결을 허용하지 않도록 되어있다면 인터넷을 통한 공격은 막을 수 있습니다. 하지만 로컬 네트워크에 해킹된 컴퓨터가 있다면 MITM 공격을 수행하여 인트라넷 내부의 클라이언트가 전송한 SMB 요청에 악의적인 응답을 보내는 방식으로 공격이 가능합니다.

인터넷을 이용한 공격 경로에는 SMB 서버로 향하는 링크를 포함하고 있는 감염된 사이트를 방문하거나 HTML 이메일을 받는 것도 포함됩니다. HTML 파일에 링크가 걸린 내용을 가져오려고 외부로 나가는 SMB 연결이 만들어지고 이 때 방화벽에서 차단하지 않는다면 공격이 가능합니다.

참고 문헌

  1. Winsock Kernel on MSDN (영문)
  2. SMB 클라이언트/서버 역할 (영문)

by xeraph | 2010-02-24 20:52:52 | 권고문 | 트랙백 (0) | 덧글 (0)

트랙백 주소 : http://nchovy.kr/forum/2/article/526/trackback
이름 암호

시스코 ASA5500 보안 업데이트

원문: Multiple Vulnerabilities in Cisco ASA 5500 Series Adaptive Security Appliances

지난 주에 시스코 ASA5500 제품군 보안 권고문이 발표되었습니다. 대부분 서비스 거부 취약점(DoS)이고 NTLM 인증을 우회할 수 있는 취약점이 하나 있습니다.

  • TCP 커넥션 고갈 DoS 취약점 (CVE-2010-0149, CSCsz77717)
    TCP 연결이 종료되는 도중에 특정한 TCP 세그먼트를 받으면 TCP 연결이 고갈되는 취약점이 있습니다.
  • SIP 검사 DoS 취약점 (CVE-2010-0150, CVE-2010-0569, CSCsy91157, CSCtc96018)
    SIP 검사 기능을 활성화 한 상태에서 SIP를 처리하는 도중에 어플라이언스가 재시작되는 취약점이 있습니다.
  • SCCP 검사 DoS 취약점 (CVE-2010-0151, CSCsz79757)
    SCCP 검사 기능을 활성화 한 상태에서 변조된 제어 메시지를 처리하게 되면 어플라이언스가 재시작 되는 취약점이 있습니다.
  • WebVPN DTLS DoS 취약점 (CVE-2010-0565, CSCtb64913)
    WebVPN과 DTLS 전송이 설정된 상태에서 DTLS 포트로 변조된 DTLS 메시지를 보내면 어플라이언스가 재시작 되는 취약점이 있습니다.
  • 조작된 TCP 세그먼트를 이용한 DoS 취약점 (CVE-2010-0566, CSCtb37219)
    변조된 TCP 세그먼트를 받아서 nailed 옵션이 걸린 정적 NAT 변환을 거치고 인라인 모드로 Cisco AIP-SSM의 처리가 이어지는 경우 어플라이언스가 재시작되는 취약점이 있습니다.
  • 조작된 IKE 메시지 DoS 취약점 (CVE-2010-0567, CSCtc47782)
    어플라이언스가 UDP 4500 포트에서 IPsec 터널을 거쳐 전달된 변조된 IKE 메시지를 처리하게 되면, 모든 IPsec 터널이 종료되고 새로운 터널이 생성되지도 않는 취약점이 있습니다. 메시지를 처리하자마자 당장 죽지는 않고 다음번 rekey가 발생할 때까지 IPsec 트래픽은 정상적으로 처리되지만, 다음번 rekey는 실패하고 터널은 전부 닫히게 됩니다.
  • NTLMv1 인증 우회 취약점 (CVE-2010-0568)
    어플라이언스가 윈도우 서버와 NTLMv1 프로토콜을 이용하여 사용자를 인증하도록 설정된 경우 인증을 우회할 수 있습니다. 사용자는 인증 요청에 유효하지 않고 변조된 사용자 이름을 보내어 인증을 우회할 수 있습니다. NTMLv1 인증 프로토콜을 사용하도록 설정된 AAA 서버 그룹을 사용하는 모든 서비스가 영향을 받습니다. (텔넷, SSH, HTTPS, 시리얼, VPN 접속 등)

by xeraph | 2010-02-24 17:36:43 | 권고문 | 트랙백 (0) | 덧글 (0)

트랙백 주소 : http://nchovy.kr/forum/2/article/525/trackback
이름 암호