본문 바로가기

3. 웹 애플리케이션 취약점 진단/비박스를 활용한 웹 애플리케이션 취약점 진단62

[비박스를 활용한 웹 취약점 진단] 11-1. 기능 수준의 접근 통제 누락 [디렉터리 리스팅 취약점(파일)] [난이도 하] 이번 페이지도 디렉터리를 이동한 것처럼 GET 방식으로 인해 변수가 노출된다. 변수 값이 파일에 대한 값을 받을 때에 파일 디렉터리 리스팅이 가능한듯 하다. 이제 etc 폴더의 passwd 파일을 살펴보자 ../../../etc/passwd 경로를 넣어준 결과 서버의 passwd 파일이 페이지에 노출된 것을 볼 수 있다. passwd 파일은 비박스 서버에 접근할 수 있는 아이디와 접근 권한 등을 기록한 파일이다. 이번엔 절대경로로 지정해주어 파일을 확인해 보자. admin/phpinfo.php 경로를 넣어주어 phpinfo 파일의 내용이 페이지에 출력된 것을 볼 수 있다. 이처럼 파일이 저장된 디렉터리와 파일명을 정확이 알고 있으면 쉽게 파일의 내용을 출력할 수 있다. [난이도 중] 난이도.. 2023. 12. 14.
[비박스를 활용한 웹 취약점 진단] 11. 기능 수준의 접근 통제 누락 [디렉터리 리스팅 취약점(디렉터리)] 접근 권한 통제는 모든 단계에서 제어해야 한다. 관리자페이지, 비인가페이지에 대한 올바른 접근 제한 레벨을 설정해야 한다. 기능 수준의 접근 통제 누락은 접근 통제가 서버의 설정이나 관리 측면에서 제대로 이루어지지 않을 때 발생하는 취약점이다. 공격자는 이 취약점을 통해 요청을 변조하여 권한이 없는 기능을 사용할 수 있다. 대표적으로 파일 다운로드와 업로드 취약점을 이용 웹서버에 접근하는 공격 유형이 존재한다. 경로 탐색 취약점(Directory Traversal)은 주로 파일 다운로드 취약점과 같은 뜻으로 사용한다. 상대경로나 파일명, 디렉터리 명을 통해 관리자가 접근을 허용하지 않은 디렉터리나 파일에 접근한다. 경로 탐색 취약점이 있으면 공격자는 시스템과 DB의 정보를 수집할 수 있게 된다. ​ [난.. 2023. 12. 14.
[비박스를 활용한 웹 취약점 진단] 10-4. 민감한 데이터 노출 [하트블리드 취약점] 하트블리드 취약점이란? - OpenSSL의 소프트웨어 버그로 인한 취약점으로(CVE-2014-0160) 사상 최악의 취약점 중 하나로 꼽힌다. 이 취약점을 통해 사용자나 관리자의 아이디,비밀번호,SSL 비밀키 등이 노출될 수 있는 위험한 취약점이다. OpenSSL 1.0.1 이후 'Heartbeat' 라는 세션 연결을 확인하는 방법을 제공하게 되었다. 하지만 전달되는 값의 길이를 검증하지 않아서 버퍼 초과 읽기(buffer overflow)가 발생하여 Heartbeat 마다 최대 64KB의 응용프로그램 메모리 내용을 요청할 수 있어 외부에서 서버의 메모리 정보를 평문으로 계속 볼 수 있게 된다. 이를 공격하여 정보들을 합하면 여러 정보들이 노출되는 것이다. [난이도 하] 하트블리드 스크립트는 기본으로 4.. 2023. 12. 14.
[비박스를 활용한 웹 취약점 진단] 10-3. 민감한 데이터 노출 [중요정보 텍스트파일 저장] 이번 페이지는 입력한 사용자 계정 정보를 텍스트 파일로 웹 서버에 저장 후 사용자가 계정 정보가 저장된 파일을 다운하는 기능을 제공한다. [난이도 하] 계정정보를 입력하고 Insert를 누르면 파일을 다운로드하거나 삭제하는 링크가 생긴다. Download를 누르면 저장된 데이터가 평문으로 노출되어 민감한 데이터 노출에 취약한 것을 확인할 수 있다. [난이도 중] 난이도 중에서는 보다시피 비밀번호 값이 해시값으로 저장된 것을 볼 수 있다. 이 해시값을 복호화 해보자. 해시 함수는 일방향 함수기 때문에 해시값으로 원문을 찾아내는것은 힘들지만, 이미 깨진 해시 함수를 사용하거나 salt값을 쓰지 않으면 원문을 찾아낼 수도 있다. https://crackstation.net/ CrackStation - Onli.. 2023. 12. 14.