취약한 접근 제어(Broken Access Control)를 알아보자

휴먼스케이프

😃 안녕하세요. 휴먼스케이프 loowin입니다. 😃

오늘은 휴먼의 공통 교양책인 [웹 해킹과 시큐어코딩]의 Part2 A4 - 취약한 접근 제어(Broken Access Control)에 대해 알아보겠습니다.

A4-취약한 접근 제어(Broken Access Control)란?

취약한 접근 제어는 인증된 사용자가 수행할 수 있는 것에 대한 제한이 제대로 적용되지 않는 것을 의미합니다.

공격자는 이러한 취약점을 악용하여 사용자의 계정 액세스, 중요한 파일 보기, 사용자의 데이터 수정, 액세스 권한 변경 등과 같은 권한 없는 기능, 또는 데이터에 액세스할 수 있습니다.

이러한 취약한 접근 제어 유형 중에 파일다운로드, 파일업로드, URL파라미터 조작 우회 방법에 대해 알아보겠습니다.

파일 다운로드

SQL 파라미터를 조작하여 시스템파일 등에 접근하는 공격기법을 의미합니다.

널바이트 인젝션 — C/C++에서 널바이트 문자열(%00, 0x00)은 문자열의 끝을 의미하기 때문에 특정 확장자를 숨기기 위한 목적으로 사용될 수 있습니다.

test.png를 호출하는 경우,

http://xxx.xxx.xxx/bbs.php?file=./test.png

널바이트를 삽입하여 호출하게 되면

http://xxx.xxx.xxx/bbs.php?file=./log.txt%00test.png

test.png를 무시하기 때문에 같은 위치에 있는 log.txt파일을 읽을 수 있게 됩니다.

php.ini의 설정 값 중, magic_quotes_gpc = On으로 설정하면 널바이트 공격에 대한 대비를 할 수 있습니다.

파일 업로드

게시판 업로드 기능에서 파일 확장자에 대한 검수가 수행되지 않는 경우 취약점이 발생하게 됩니다.

Content-Type값 변조 — 일반적으로 확장자 검사를 통해 파일업로드 공격을 막고 있습니다. 그러나 파일타입 변조를 통해 우회 공격을 시도해볼 수 있습니다.

Content-Type

application/octet-stream -> image/jpeg로 변조하여 다시 웹 서버로 전송하면 업로드 우회공격이 가능합니다.

Zero-Day 관련 업로드 취약점 — 매일매일 다양한 신규 취약점이 릴리즈되고 있는데요, 이러한 부분도 함께 매일 체크하면서 대응하는 것도 좋은 방법입니다.

“file upload vulnerability” 구글 검색을 통해서도 다양한 취약점을 확인할 수도 있습니다.

ex) CVE-2017–7695

CVE-2017–7695

파일업로드 시 xxx.php[space]를 이용하면 우회가 가능한 오류가 발견되었었습니다.

널바이트 인젝션 — 위의 파일다운로드 널바이트 인젝션과 같은 방식으로 우회 업로드가 가능합니다.

URL 파라미터 조작

타인 비밀글 보기 — URL파라미터 조작으로 비밀글로 등록되어 볼 수 없는 비밀글을 우회하여 보는 방법이 가능합니다.

자신이 쓴 비밀글의 수정페이지의 글 번호를 확인 후 수정하여 어떻게 변경되는지 추적을 해봅니다.

http://xxx.xxx.xxx/xxxxxxx.xxxxxx?seq=13

이렇게 글번호를 11로 변경한 후 비밀글 접근가능여부를 확인해볼 수 있습니다.

http://xxx.xxx.xxx/xxxxxxx.xxxxxx?seq=11

공지사항 글 변조 — 관리자만 접근 가능한 공지사항 등은 일반적으로 보기기능 밖에 제공되지 않기 때문에, 주소 및 파라미터 값을 변조하여 접근을 시도해볼 수 있습니다.

페이지에서 사용되는 cmd파라미터의 값을 변경해봅니다.

http://xxx.xxx.xxx/xxxxxxx.xxxxxx?cmd=view&no=13

view -> write로 변경한 후 접근가능여부를 확인해볼 수 있습니다.

http://xxx.xxx.xxx/xxxxxxx.xxxxxx?cmd=write&no=13

2. 페이지 주소에 view키워드를 이용한 페이지가 있다면 페이지 주소를 변경해 봅니다.

http://xxx.xxx.xxx/bbs/notice_view.asp?xxxxxxxx

view -> write로 변경한 후 접근가능여부를 확인해볼 수 있습니다.

http://xxx.xxx.xxx/bbs/notice_write.asp?xxxxxxxx

지금까지 OWASP에서 선정한 웹 취약점 A4 — 취약한 접근 제어(Broken Access Control)에 대하여 알아보았습니다.

다음 포스팅에서는 A5 — Security misconfiguration 에 대한 소개가 계속될 예정이니 기대해주세요.😃 감사합니다. 😄

[출처]

웹 해킹과 시큐어코딩 [탐지 수정 실습가이드]

Get to know us better! Join our official channels below.

Telegram(EN) : t.me/Humanscape KakaoTalk(KR) : open.kakao.com/o/gqbUQEM Website : humanscape.io Medium : medium.com/humanscape-ico Facebook : www.facebook.com/humanscape Twitter : twitter.com/Humanscape_io Reddit : https://www.reddit.com/r/Humanscape_official Bitcointalk announcement : https://bit.ly/2rVsP4T Email : support@humanscape.io

기업문화 엿볼 때, 더팀스

로그인

/