목록Server Penetesting/CVE-XXXX (6)
외로운 Nova의 작업실
- 취약점 소개 Android 4.3 이하 환경에서 WebView와 관련된 알려진 취약점이 있습니다. WebView는 개발자가 애플리케이션 내에 웹 콘텐츠를 표시할 수 있도록 하는 Android 시스템의 구성 요소입니다. 주목할만한 취약점 중 하나는 "JavaScript 인터페이스" 문제입니다. Android 4.3 이하에서 JavaScript가 활성화된 WebView를 사용하는 앱은 Java 개체를 WebView에서 실행되는 JavaScript 코드에 노출할 수 있습니다. 앱이 입력을 적절하게 검증 및 삭제하지 않았거나 노출된 Java 개체를 통해 액세스할 수 있는 중요한 정보가 있는 경우 잠재적인 보안 위험이 발생할 수 있습니다. - 취약점 진단 만약 아래와 같은 소스코드를 포함한 webview 소스..
- 취약점 소개 이용자로부터 입력값을 받아 html을 만들고 pdf를 만들게 될때, 이용자의 입력값을 검증하지않으면 html에서 xss 공격을 실행할 수 있습니다. - 취약점 진단 cup과 Bin을 쇼핑몰에서 사게되고 영수증을 보게되면 우리는 서버에게 패킷으로 아래와 같은 패킷을 보냅니다. 이후 pdf 파일로 아래처럼 보여줍니다. 이때 패킷내에 title 값을 아래와 같이 변경하면 파일의 내용이 나옵니다. - 취약점 대응 패킷값이 유효한 값인지 검증후에 html을 만들어야합니다.
- 취약점 대상 Nibbleblog 4.0.3 이하 버전들 - 취약점 원리 CVE-2015-6967는 Nibbleblog CMS의 4.0.3 버전에서 발견된 취약점으로, 임의의 파일 업로드를 통해 공격자가 원격에서 시스템에 악성 파일을 업로드할 수 있는 취약점입니다. 이 취약점의 원리는 다음과 같습니다. Nibbleblog CMS는 파일 업로드를 처리하기 위해 "nb/actions.php" 파일을 사용합니다. 이 파일은 업로드된 파일의 확장자를 검사하여 허용된 파일 형식인지 확인하고, 허용된 파일인 경우 "/content" 디렉토리 내에 업로드합니다. 공격자는 업로드된 파일의 이름을 조작하여 파일 확장자를 변경할 수 있습니다. 이를 통해 공격자는 악성 파일을 "nb/actions.php"를 통해 업로드하..
- 취약점 원리 CVE-2007-2447 취약점은 Samba 서비스의 smb.conf 파일에서 설정된 "user map script" 옵션에서 발생합니다. 이 옵션은 SMB 클라이언트가 인증되는 과정에서 사용자 이름을 매핑하기 위해 스크립트를 실행하는 데 사용됩니다. 하지만 이 옵션에 임의의 명령어를 삽입할 경우, Samba 서비스의 권한으로 해당 명령어가 실행될 수 있습니다. 이러한 취약점을 이용하면 원격에서 코드 실행, 권한 상승 등의 공격을 수행할 수 있습니다. - 영향 받는 제품군 3.0.25rc3 3.0.20x 3.0.10x 2.2.8 - exploit code https://github.com/amriunix/CVE-2007-2447 GitHub - amriunix/CVE-2007-2447: ..
- 원리 NetBIOS 기반의 공유 기능을 담당하는 NetAPI32.dll 라이브러리 파일에서 Stack BoF가 발생해서 생겨난 취약점입니다. 이를 악용해 원격 명령 실행이 가능합니다. 또한 특정 운영체제에 대해서는 NX 우회가 가능하다고 알려져 있습니다. - 영향받는 제품군 window xp window 2000 window server 2003 window server 2008 window vista - 탐지 방법 nmap으로 탐지 방법은 아래와 같습니다. nmap -p445 --script smb-vuln-ms08-067.nse --script-args=unsafe=1 만약 취약하다면 아래처럼 나옵니다. Host script results: | smb-check-vulns: | MS08-067: ..
- ShellShock 해당 취약점의 이름은 ShellShock이라고 부릅니다. 왜냐하면 shell상에서 일어난 취약점이기 때문입니다. - 원리 해당 취약점의 원리를 이해하려면 bash상의 환경변수에대해서 이해해야합니다. 먼저 환경변수에대해서 알아봅시다. $env nova='test' $printenv nova => test 보통 위와 같이 환경변수는 문자열에 해당합니다. 함수도 환경변수에 저장할 수 있습니다. $nova() { echo hi; } $env nova $nova => hi 위와 같이 말입니다. 문제는 함수를 문자열로 저장할때 발생합니다. 아래와 같이말입니다. $env nova = '() { echo hihi; }' $printenv nova => () { echo hihi; } 위처럼 함수..