블로그

코더정복 보안 OWASP 상위 10 API 시리즈 - 질량 할당

마티아스 마두, Ph.
게시일: 2020년 10월 21일

많은 최신 프레임워크는 개발자가 클라이언트의 입력을 코드 변수 및 내부 개체로 자동으로 바인딩하는 함수를 사용하도록 유도하기 때문에 대량 할당 취약점이 생깁니다. 이는 코드를 단순화하고 작업 속도를 높이기 위해 수행됩니다.

공격자는 이 방법론을 사용하여 클라이언트에서 업데이트해서는 안 되는 개체 속성에 변경 내용을 강제로 사용할 수 있습니다. 일반적으로 이로 인해 사용자가 웹 사이트를 가져오거나 회사 기밀을 훔치는 대신 관리자 권한을 자신에게 추가하는 것과 같은 비즈니스 별 문제가 발생합니다. 공격자는 또한 개체 간의 관계와 악용 중인 응용 프로그램의 비즈니스 논리에 대해서도 고려해야 합니다.

그러나, 그 중 어느 것도 대량 할당 취약점 영리하고 악의적 인 사용자의 손에 덜 위험하게만들지 않습니다.

전체 가이드를 시작하기 전에 게임화된 챌린지를 플레이하고 요금을 어떻게 알려주는지 확인하세요.

공격자는 대량 할당 취약점을 어떻게 악용할 수 있습니까?

OWASP에 의해 제시된 시나리오(그리고 당사가 약간 수정)는 질량 할당을 사용하여 코드의 개체에 바인딩된 다른 속성을 포함하는 차량 공유 응용 프로그램을 가정합니다. 여기에는 사용자가 변경할 수 있는 권한 관련 속성과 응용 프로그램에서만 내부적으로만 설정해야 하는 프로세스 종속 속성이 포함됩니다. 둘 다 질량 할당을 사용하여 속성을 개체에 바인딩합니다.

이 시나리오에서는 차량 공유 응용 프로그램을 통해 많은 사용자가 많은 사용자를 향한 응용 프로그램에서 흔히 볼 수 있듯이 프로필을 업데이트할 수 있습니다. 이 작업은 PUT로 전송된 API 호출을 사용하여 수행되며 다음 JSON 개체를 반환합니다.

{"user_name":"SneakySnake", "age":17, "is_admin":false}

이 경우 공격자인 SneakySnake씨가 속성과 개체 간의 관계를 파악했기 때문에 다음 문자열로 프로필을 업데이트하라는 원래 요청을 다시 보낼 수 있습니다.

{"user_name":"SneakySnake","age":24,, "is_admin":true}

끝점이 질량 할당에 취약하므로 새 입력을 유효한 것으로 받아들입니다. 뿐만 아니라 우리의 해커는 자신의 프로필에 몇 년을 추가 않았다, 그러나 그는 또한 자신에게 관리 권한을 할당.

대량 할당 취약점 제거

일부 프레임워크에서 대량 할당 함수를 사용하는 것이 편리할 수 있으므로 API를 안전하게 유지하려는 경우 이를 사용하지 않아야 합니다. 대신 요청 값을 개체에 직접 바인딩하는 대신 구문 분석합니다. 또한 감소된 데이터 전송 개체를 사용하여 관련 위험 없이만 개체 자체에 직접 바인딩하는 것과 거의 동일한 편의성을 제공할 수 있습니다.

추가 예방 조치로 위의 예제의 관리자 권한과 같은 중요한 속성은 거부되어 API 호출의 서버에서 허용되지 않을 수 있습니다. 더 나은 아이디어는 기본적으로 모든 속성을 거부 한 다음 사용자가 업데이트하거나 변경할 수 있도록 특정, 비 민감하지 않은 것들을 허용하는 것입니다. 이러한 작업을 수행하면 API를 잠그고 사용자 환경에서 대량 할당 취약점을 제거하는 데 도움이 될 수 있습니다.

체크 아웃 Secure Code Warrior 이 취약점에 대한 자세한 정보를 위한 블로그 페이지와 다른 보안 결함의 파괴로부터 조직과 고객을 보호하는 방법. 데모를 시도할 수도 있습니다. Secure Code Warrior 모든 사이버 보안 기술을 연마하고 최신 상태로 유지하기 위한 교육 플랫폼을 제공합니다.

리소스 보기
리소스 보기

대량 할당 취약점은 개발자가 클라이언트의 입력을 코드 변수 및 내부 개체로 자동으로 바인딩하는 기능을 사용하도록 장려하는 많은 최신 프레임워크의 결과로 발생했습니다.

더 알고 싶으신가요?

마티아스 마두는 보안 전문가, 연구원, CTO이자 Secure Code Warrior 의 공동 설립자입니다. 마티아스는 겐트 대학교에서 정적 분석 솔루션에 중점을 둔 애플리케이션 보안 박사 학위를 취득했습니다. 이후 미국의 Fortify에 입사하여 개발자의 보안 코드 작성을 지원하지 않고 코드 문제만 탐지하는 것만으로는 충분하지 않다는 것을 깨달았습니다. 이를 계기로 개발자를 지원하고 보안에 대한 부담을 덜어주며 고객의 기대를 뛰어넘는 제품을 개발하게 되었습니다. 팀 어썸의 일원으로 책상에 앉아 있지 않을 때는 RSA 컨퍼런스, 블랙햇, 데프콘 등의 컨퍼런스에서 무대에 올라 발표하는 것을 즐깁니다.

Secure Code Warrior 는 전체 소프트웨어 개발 수명 주기에서 코드를 보호하고 사이버 보안을 최우선으로 생각하는 문화를 조성할 수 있도록 도와드립니다. 앱 보안 관리자, 개발자, CISO 등 보안과 관련된 모든 사람이 안전하지 않은 코드와 관련된 위험을 줄일 수 있도록 도와드릴 수 있습니다.

데모 예약
공유하세요:
저자
마티아스 마두, Ph.
게시일: 2020년 10월 21일

마티아스 마두는 보안 전문가, 연구원, CTO이자 Secure Code Warrior 의 공동 설립자입니다. 마티아스는 겐트 대학교에서 정적 분석 솔루션에 중점을 둔 애플리케이션 보안 박사 학위를 취득했습니다. 이후 미국의 Fortify에 입사하여 개발자의 보안 코드 작성을 지원하지 않고 코드 문제만 탐지하는 것만으로는 충분하지 않다는 것을 깨달았습니다. 이를 계기로 개발자를 지원하고 보안에 대한 부담을 덜어주며 고객의 기대를 뛰어넘는 제품을 개발하게 되었습니다. 팀 어썸의 일원으로 책상에 앉아 있지 않을 때는 RSA 컨퍼런스, 블랙햇, 데프콘 등의 컨퍼런스에서 무대에 올라 발표하는 것을 즐깁니다.

Matias는 15년 이상의 소프트웨어 보안 경험을 가진 연구원이자 개발자입니다. 그는 Fortify 소프트웨어와 같은 회사와 자신의 회사를 위한 솔루션을 개발했습니다. Sensei 안전. 그의 경력을 통해, Matias는 상용 제품으로 주도하고 자신의 벨트 아래 10 개 이상의 특허를 자랑하는 여러 응용 프로그램 보안 연구 프로젝트를 주도하고있다. 마티아스는 책상에서 떨어져 있을 때 고급 응용 프로그램 보안 교육을 위한 강사로 일했습니다. courses RSA 컨퍼런스, 블랙 햇, 데프콘, BSIMM, OWASP AppSec 및 브루콘을 포함한 글로벌 컨퍼런스에서 정기적으로 강연합니다.

마티아스는 겐트 대학교에서 컴퓨터 공학 박사 학위를 취득했으며, 프로그램 난독화를 통해 응용 프로그램 보안을 연구하여 응용 프로그램의 내부 작동을 숨깁니다.

공유하세요:

많은 최신 프레임워크는 개발자가 클라이언트의 입력을 코드 변수 및 내부 개체로 자동으로 바인딩하는 함수를 사용하도록 유도하기 때문에 대량 할당 취약점이 생깁니다. 이는 코드를 단순화하고 작업 속도를 높이기 위해 수행됩니다.

공격자는 이 방법론을 사용하여 클라이언트에서 업데이트해서는 안 되는 개체 속성에 변경 내용을 강제로 사용할 수 있습니다. 일반적으로 이로 인해 사용자가 웹 사이트를 가져오거나 회사 기밀을 훔치는 대신 관리자 권한을 자신에게 추가하는 것과 같은 비즈니스 별 문제가 발생합니다. 공격자는 또한 개체 간의 관계와 악용 중인 응용 프로그램의 비즈니스 논리에 대해서도 고려해야 합니다.

그러나, 그 중 어느 것도 대량 할당 취약점 영리하고 악의적 인 사용자의 손에 덜 위험하게만들지 않습니다.

전체 가이드를 시작하기 전에 게임화된 챌린지를 플레이하고 요금을 어떻게 알려주는지 확인하세요.

공격자는 대량 할당 취약점을 어떻게 악용할 수 있습니까?

OWASP에 의해 제시된 시나리오(그리고 당사가 약간 수정)는 질량 할당을 사용하여 코드의 개체에 바인딩된 다른 속성을 포함하는 차량 공유 응용 프로그램을 가정합니다. 여기에는 사용자가 변경할 수 있는 권한 관련 속성과 응용 프로그램에서만 내부적으로만 설정해야 하는 프로세스 종속 속성이 포함됩니다. 둘 다 질량 할당을 사용하여 속성을 개체에 바인딩합니다.

이 시나리오에서는 차량 공유 응용 프로그램을 통해 많은 사용자가 많은 사용자를 향한 응용 프로그램에서 흔히 볼 수 있듯이 프로필을 업데이트할 수 있습니다. 이 작업은 PUT로 전송된 API 호출을 사용하여 수행되며 다음 JSON 개체를 반환합니다.

{"user_name":"SneakySnake", "age":17, "is_admin":false}

이 경우 공격자인 SneakySnake씨가 속성과 개체 간의 관계를 파악했기 때문에 다음 문자열로 프로필을 업데이트하라는 원래 요청을 다시 보낼 수 있습니다.

{"user_name":"SneakySnake","age":24,, "is_admin":true}

끝점이 질량 할당에 취약하므로 새 입력을 유효한 것으로 받아들입니다. 뿐만 아니라 우리의 해커는 자신의 프로필에 몇 년을 추가 않았다, 그러나 그는 또한 자신에게 관리 권한을 할당.

대량 할당 취약점 제거

일부 프레임워크에서 대량 할당 함수를 사용하는 것이 편리할 수 있으므로 API를 안전하게 유지하려는 경우 이를 사용하지 않아야 합니다. 대신 요청 값을 개체에 직접 바인딩하는 대신 구문 분석합니다. 또한 감소된 데이터 전송 개체를 사용하여 관련 위험 없이만 개체 자체에 직접 바인딩하는 것과 거의 동일한 편의성을 제공할 수 있습니다.

추가 예방 조치로 위의 예제의 관리자 권한과 같은 중요한 속성은 거부되어 API 호출의 서버에서 허용되지 않을 수 있습니다. 더 나은 아이디어는 기본적으로 모든 속성을 거부 한 다음 사용자가 업데이트하거나 변경할 수 있도록 특정, 비 민감하지 않은 것들을 허용하는 것입니다. 이러한 작업을 수행하면 API를 잠그고 사용자 환경에서 대량 할당 취약점을 제거하는 데 도움이 될 수 있습니다.

체크 아웃 Secure Code Warrior 이 취약점에 대한 자세한 정보를 위한 블로그 페이지와 다른 보안 결함의 파괴로부터 조직과 고객을 보호하는 방법. 데모를 시도할 수도 있습니다. Secure Code Warrior 모든 사이버 보안 기술을 연마하고 최신 상태로 유지하기 위한 교육 플랫폼을 제공합니다.

리소스 보기
리소스 보기

아래 양식을 작성하여 보고서를 다운로드하세요.

우리는 당신에게 우리의 제품 및 / 또는 관련 보안 코딩 주제에 대한 정보를 보낼 수있는 귀하의 허가를 바랍니다. 우리는 항상 최대한의주의를 기울여 귀하의 개인 정보를 취급 할 것이며 마케팅 목적으로 다른 회사에 판매하지 않을 것입니다.

전송
양식을 제출하려면 '분석' 쿠키를 활성화하세요. 완료되면 언제든지 다시 비활성화할 수 있습니다.

많은 최신 프레임워크는 개발자가 클라이언트의 입력을 코드 변수 및 내부 개체로 자동으로 바인딩하는 함수를 사용하도록 유도하기 때문에 대량 할당 취약점이 생깁니다. 이는 코드를 단순화하고 작업 속도를 높이기 위해 수행됩니다.

공격자는 이 방법론을 사용하여 클라이언트에서 업데이트해서는 안 되는 개체 속성에 변경 내용을 강제로 사용할 수 있습니다. 일반적으로 이로 인해 사용자가 웹 사이트를 가져오거나 회사 기밀을 훔치는 대신 관리자 권한을 자신에게 추가하는 것과 같은 비즈니스 별 문제가 발생합니다. 공격자는 또한 개체 간의 관계와 악용 중인 응용 프로그램의 비즈니스 논리에 대해서도 고려해야 합니다.

그러나, 그 중 어느 것도 대량 할당 취약점 영리하고 악의적 인 사용자의 손에 덜 위험하게만들지 않습니다.

전체 가이드를 시작하기 전에 게임화된 챌린지를 플레이하고 요금을 어떻게 알려주는지 확인하세요.

공격자는 대량 할당 취약점을 어떻게 악용할 수 있습니까?

OWASP에 의해 제시된 시나리오(그리고 당사가 약간 수정)는 질량 할당을 사용하여 코드의 개체에 바인딩된 다른 속성을 포함하는 차량 공유 응용 프로그램을 가정합니다. 여기에는 사용자가 변경할 수 있는 권한 관련 속성과 응용 프로그램에서만 내부적으로만 설정해야 하는 프로세스 종속 속성이 포함됩니다. 둘 다 질량 할당을 사용하여 속성을 개체에 바인딩합니다.

이 시나리오에서는 차량 공유 응용 프로그램을 통해 많은 사용자가 많은 사용자를 향한 응용 프로그램에서 흔히 볼 수 있듯이 프로필을 업데이트할 수 있습니다. 이 작업은 PUT로 전송된 API 호출을 사용하여 수행되며 다음 JSON 개체를 반환합니다.

{"user_name":"SneakySnake", "age":17, "is_admin":false}

이 경우 공격자인 SneakySnake씨가 속성과 개체 간의 관계를 파악했기 때문에 다음 문자열로 프로필을 업데이트하라는 원래 요청을 다시 보낼 수 있습니다.

{"user_name":"SneakySnake","age":24,, "is_admin":true}

끝점이 질량 할당에 취약하므로 새 입력을 유효한 것으로 받아들입니다. 뿐만 아니라 우리의 해커는 자신의 프로필에 몇 년을 추가 않았다, 그러나 그는 또한 자신에게 관리 권한을 할당.

대량 할당 취약점 제거

일부 프레임워크에서 대량 할당 함수를 사용하는 것이 편리할 수 있으므로 API를 안전하게 유지하려는 경우 이를 사용하지 않아야 합니다. 대신 요청 값을 개체에 직접 바인딩하는 대신 구문 분석합니다. 또한 감소된 데이터 전송 개체를 사용하여 관련 위험 없이만 개체 자체에 직접 바인딩하는 것과 거의 동일한 편의성을 제공할 수 있습니다.

추가 예방 조치로 위의 예제의 관리자 권한과 같은 중요한 속성은 거부되어 API 호출의 서버에서 허용되지 않을 수 있습니다. 더 나은 아이디어는 기본적으로 모든 속성을 거부 한 다음 사용자가 업데이트하거나 변경할 수 있도록 특정, 비 민감하지 않은 것들을 허용하는 것입니다. 이러한 작업을 수행하면 API를 잠그고 사용자 환경에서 대량 할당 취약점을 제거하는 데 도움이 될 수 있습니다.

체크 아웃 Secure Code Warrior 이 취약점에 대한 자세한 정보를 위한 블로그 페이지와 다른 보안 결함의 파괴로부터 조직과 고객을 보호하는 방법. 데모를 시도할 수도 있습니다. Secure Code Warrior 모든 사이버 보안 기술을 연마하고 최신 상태로 유지하기 위한 교육 플랫폼을 제공합니다.

리소스에 접근

아래 링크를 클릭하여 이 자료의 PDF를 다운로드하세요.

Secure Code Warrior 는 전체 소프트웨어 개발 수명 주기에서 코드를 보호하고 사이버 보안을 최우선으로 생각하는 문화를 조성할 수 있도록 도와드립니다. 앱 보안 관리자, 개발자, CISO 등 보안과 관련된 모든 사람이 안전하지 않은 코드와 관련된 위험을 줄일 수 있도록 도와드릴 수 있습니다.

보고서 보기데모 예약
공유하세요:
더 알고 싶으신가요?

공유하세요:
저자
마티아스 마두, Ph.
게시일: 2020년 10월 21일

마티아스 마두는 보안 전문가, 연구원, CTO이자 Secure Code Warrior 의 공동 설립자입니다. 마티아스는 겐트 대학교에서 정적 분석 솔루션에 중점을 둔 애플리케이션 보안 박사 학위를 취득했습니다. 이후 미국의 Fortify에 입사하여 개발자의 보안 코드 작성을 지원하지 않고 코드 문제만 탐지하는 것만으로는 충분하지 않다는 것을 깨달았습니다. 이를 계기로 개발자를 지원하고 보안에 대한 부담을 덜어주며 고객의 기대를 뛰어넘는 제품을 개발하게 되었습니다. 팀 어썸의 일원으로 책상에 앉아 있지 않을 때는 RSA 컨퍼런스, 블랙햇, 데프콘 등의 컨퍼런스에서 무대에 올라 발표하는 것을 즐깁니다.

Matias는 15년 이상의 소프트웨어 보안 경험을 가진 연구원이자 개발자입니다. 그는 Fortify 소프트웨어와 같은 회사와 자신의 회사를 위한 솔루션을 개발했습니다. Sensei 안전. 그의 경력을 통해, Matias는 상용 제품으로 주도하고 자신의 벨트 아래 10 개 이상의 특허를 자랑하는 여러 응용 프로그램 보안 연구 프로젝트를 주도하고있다. 마티아스는 책상에서 떨어져 있을 때 고급 응용 프로그램 보안 교육을 위한 강사로 일했습니다. courses RSA 컨퍼런스, 블랙 햇, 데프콘, BSIMM, OWASP AppSec 및 브루콘을 포함한 글로벌 컨퍼런스에서 정기적으로 강연합니다.

마티아스는 겐트 대학교에서 컴퓨터 공학 박사 학위를 취득했으며, 프로그램 난독화를 통해 응용 프로그램 보안을 연구하여 응용 프로그램의 내부 작동을 숨깁니다.

공유하세요:

많은 최신 프레임워크는 개발자가 클라이언트의 입력을 코드 변수 및 내부 개체로 자동으로 바인딩하는 함수를 사용하도록 유도하기 때문에 대량 할당 취약점이 생깁니다. 이는 코드를 단순화하고 작업 속도를 높이기 위해 수행됩니다.

공격자는 이 방법론을 사용하여 클라이언트에서 업데이트해서는 안 되는 개체 속성에 변경 내용을 강제로 사용할 수 있습니다. 일반적으로 이로 인해 사용자가 웹 사이트를 가져오거나 회사 기밀을 훔치는 대신 관리자 권한을 자신에게 추가하는 것과 같은 비즈니스 별 문제가 발생합니다. 공격자는 또한 개체 간의 관계와 악용 중인 응용 프로그램의 비즈니스 논리에 대해서도 고려해야 합니다.

그러나, 그 중 어느 것도 대량 할당 취약점 영리하고 악의적 인 사용자의 손에 덜 위험하게만들지 않습니다.

전체 가이드를 시작하기 전에 게임화된 챌린지를 플레이하고 요금을 어떻게 알려주는지 확인하세요.

공격자는 대량 할당 취약점을 어떻게 악용할 수 있습니까?

OWASP에 의해 제시된 시나리오(그리고 당사가 약간 수정)는 질량 할당을 사용하여 코드의 개체에 바인딩된 다른 속성을 포함하는 차량 공유 응용 프로그램을 가정합니다. 여기에는 사용자가 변경할 수 있는 권한 관련 속성과 응용 프로그램에서만 내부적으로만 설정해야 하는 프로세스 종속 속성이 포함됩니다. 둘 다 질량 할당을 사용하여 속성을 개체에 바인딩합니다.

이 시나리오에서는 차량 공유 응용 프로그램을 통해 많은 사용자가 많은 사용자를 향한 응용 프로그램에서 흔히 볼 수 있듯이 프로필을 업데이트할 수 있습니다. 이 작업은 PUT로 전송된 API 호출을 사용하여 수행되며 다음 JSON 개체를 반환합니다.

{"user_name":"SneakySnake", "age":17, "is_admin":false}

이 경우 공격자인 SneakySnake씨가 속성과 개체 간의 관계를 파악했기 때문에 다음 문자열로 프로필을 업데이트하라는 원래 요청을 다시 보낼 수 있습니다.

{"user_name":"SneakySnake","age":24,, "is_admin":true}

끝점이 질량 할당에 취약하므로 새 입력을 유효한 것으로 받아들입니다. 뿐만 아니라 우리의 해커는 자신의 프로필에 몇 년을 추가 않았다, 그러나 그는 또한 자신에게 관리 권한을 할당.

대량 할당 취약점 제거

일부 프레임워크에서 대량 할당 함수를 사용하는 것이 편리할 수 있으므로 API를 안전하게 유지하려는 경우 이를 사용하지 않아야 합니다. 대신 요청 값을 개체에 직접 바인딩하는 대신 구문 분석합니다. 또한 감소된 데이터 전송 개체를 사용하여 관련 위험 없이만 개체 자체에 직접 바인딩하는 것과 거의 동일한 편의성을 제공할 수 있습니다.

추가 예방 조치로 위의 예제의 관리자 권한과 같은 중요한 속성은 거부되어 API 호출의 서버에서 허용되지 않을 수 있습니다. 더 나은 아이디어는 기본적으로 모든 속성을 거부 한 다음 사용자가 업데이트하거나 변경할 수 있도록 특정, 비 민감하지 않은 것들을 허용하는 것입니다. 이러한 작업을 수행하면 API를 잠그고 사용자 환경에서 대량 할당 취약점을 제거하는 데 도움이 될 수 있습니다.

체크 아웃 Secure Code Warrior 이 취약점에 대한 자세한 정보를 위한 블로그 페이지와 다른 보안 결함의 파괴로부터 조직과 고객을 보호하는 방법. 데모를 시도할 수도 있습니다. Secure Code Warrior 모든 사이버 보안 기술을 연마하고 최신 상태로 유지하기 위한 교육 플랫폼을 제공합니다.

목차

리소스 보기
더 알고 싶으신가요?

마티아스 마두는 보안 전문가, 연구원, CTO이자 Secure Code Warrior 의 공동 설립자입니다. 마티아스는 겐트 대학교에서 정적 분석 솔루션에 중점을 둔 애플리케이션 보안 박사 학위를 취득했습니다. 이후 미국의 Fortify에 입사하여 개발자의 보안 코드 작성을 지원하지 않고 코드 문제만 탐지하는 것만으로는 충분하지 않다는 것을 깨달았습니다. 이를 계기로 개발자를 지원하고 보안에 대한 부담을 덜어주며 고객의 기대를 뛰어넘는 제품을 개발하게 되었습니다. 팀 어썸의 일원으로 책상에 앉아 있지 않을 때는 RSA 컨퍼런스, 블랙햇, 데프콘 등의 컨퍼런스에서 무대에 올라 발표하는 것을 즐깁니다.

Secure Code Warrior 는 전체 소프트웨어 개발 수명 주기에서 코드를 보호하고 사이버 보안을 최우선으로 생각하는 문화를 조성할 수 있도록 도와드립니다. 앱 보안 관리자, 개발자, CISO 등 보안과 관련된 모든 사람이 안전하지 않은 코드와 관련된 위험을 줄일 수 있도록 도와드릴 수 있습니다.

데모 예약다운로드
공유하세요:
리소스 허브

시작할 수 있는 리소스

더 많은 게시물
리소스 허브

시작할 수 있는 리소스

더 많은 게시물