기본 콘텐츠로 건너뛰기

Using an Access Control Matrix [ 엑세스 접근 제어 ]


Using an Access Control Matrix [ 엑세스 접근 제어 ]






[Description]

역할 기반 액세스 제어 체계는 일반적으로 역할 권한 관리와 역할 할당의 두 부분으로 구성됩니다.

만약 역할 기반 액세스 제어 체계가 손상되면 사용자는 자신이 할당 한 역할에 의해 허용되지 않은 액세스를 수행하거나 권한이없는 역할로 권한 에스컬레이션을 허용 할 수 있습니다.

다음은 [Moe] , [Curly] , [Larry] , [Shemp] 의 4개의 그룹이 존재합니다. 또한 모두 [일반] 그룹에 속하며 , [관리자] 그룹은 존재하지 않습니다. 위 취약점은 [관리자] 그룹 만 '계정 관리자'리소스에 액세스 할 수 있어야하며 , 일반 사용자 그룹은 [관리자] 그룹이 아니기때문에 접근이 불가능하여야 합니다. 따라서 일반 사용자를 통해 [관리자] 그룹에 엑세스 가능 여부에 대한 취약점 진단입니다.



[그림 1]



[그림 1] 은 [Curly] 계정의 일반 그룹의 사용자로 Check Access 시 엑세스 할 권한이 존재하지 않아 접근이 불가능하다는 화면이 출력됩니다.




[그림 2]


[그림 2] 은 [Larry] 계정의 일반 사용자로 Check Access 시 [관리자] 그룹만이 엑세스가 가능하여야 하지만 , 엑세스 접근 관련 통제가 재대로 이뤄지지 않고 있어 무단으로 접근 수행이 가능합니다.



[impact]


이 취약점으로 인해 공격자는 무단으로 [관리자] 만이 접근할수있는 영역에 접근이 가능하여 2차적인 공격에 악용될수있습니다. 

댓글

이 블로그의 인기 게시물

HackerOne Vulnerability Analysis 1

이 문서는  HackerOne 에서  제출된 많은 보고서들을 토대로 핵심 Payload만 요약하여 직접 작성하였습니다. Link :  https://hackerone.com/ Vulnerabilities list 1. CRLF Injection 2. Open Redirection  3. Cross-Site-Scripting 4. SQL-Injection 5. Path Traversal  CRLF Injection PoC http://www.myshopify.com/xxcrlftest%0aSet-Cookie:test=test3;domain=.myshopify.com; https://www.blackfan.myshopify.com/xxx%0aSet-Cookie:test=test2;domain=.myshopify.com; HTTP Response: HTTP/1.1 302 Moved Temporarily ... Location: http://myshopify.com/xxcrlftest Set-Cookie:test=test;domain=.myshopify.com; PoC: https://engineeringblog.yelp.com/xxcrlftest%0d%0aSet-Cookie:%20test=test;domain=.yelp.com HTTP Response: HTTP/1.1 301 Moved Permanently ... Location: http://engineeringblog.yelp.com/xxcrlftest Set-Cookie: test=test;domain=.yelp.com PoC (Chrome, Internet Explorer) http://gratipay.com/%0dSet-Cookie:csrf_token=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx; HTTP Resp...

XVWA Xpath Injection

XVWA Xpath I njection [그림 1] Summary [그림1]  는  Xpath Injection  공격을 시도해 볼 수 있도록 개발된 폼을 제공하고 있습니다. Description ' or substring(name(parent::*[position()=1]),1,1)='A ' or substring(name(parent::*[position()=1]),1,1)='B ' or substring(name(parent::*[position()=1]),1,1)='C 노드 대입을 통한 결과 다음과 같이 Xpath 에 취약한 결과가 나오는것을 확인할수있습니다. ' or '1'='1  주입결과. Steps to reproduce 1. ' or substring((//user[position()=1]/child::node()[position()=1]),1,1)="a" or ''=' Source Code Impact 공격자는 Xpath Query 주입을 통해  액세스 할 수없는 데이터에 접근할수있습니다.

Juice Shop XSS [ Dom based XSS ]

Juice Shop XSS [ Dom based XSS ] Search 입력란에 악성 스크립트를 넣어 XSS 취약점을 진단합니다. Payload :  <iframe src="javascript:alert(`xss`)">   다음과 같이 이는 < , > 는 &lt; , &gt; 로 특수문자를 필터링하지 않기에 XSS 에 취약합니다.