코더는 보안 OWASP 상위 10 API 시리즈를 정복 - 부적절한 자산 관리

게시일: 2020년 12월 22일
작성자: 마티아스 마두, Ph.
사례 연구

코더는 보안 OWASP 상위 10 API 시리즈를 정복 - 부적절한 자산 관리

게시일: 2020년 12월 22일
작성자: 마티아스 마두, Ph.
리소스 보기
리소스 보기

OWASP API 상위 10위권의 대부분의 취약점과 달리 부적절한 자산 관리는 코딩 결함에 특별히 중심을 두지 않습니다. 대신 이 취약점은 더 새롭고 안전한 버전으로 대체되어야 하는 오래된 API를 오래 동안 제자리에 유지할 수 있는 인간 또는 관리 문제에 가까울 수 있습니다. 또한 아직 개발 중인 API가 위협에 완전히 강화되기 전에 프로덕션 환경에 노출되는 경우에도 발생할 수 있습니다.

이 취약점은 마이크로 서비스 및 클라우드 컴퓨팅의 출현으로 인해 관리하기가 특히 어렵습니다. 이러한 환경에서는 일시적인 필요를 충족시키기 위해 새로운 서비스가 신속하게 스폰된 다음 잊어버렸고 결코 폐기되지 않을 수 있습니다. 이전 API가 프로덕션 환경에 연결되어 있으면 전체 네트워크를 위험에 빠뜨릴 수 있습니다.

이 보안 버그에 게임 챌린지를 시도하고 싶으신가요? 경기장으로 들어오세요: [여기에서 시작]

부적절한 자산 관리 결함이 API에 어떤 영향을 미칩니까?

부적절한 자산 관리 결함은 현대의 산물입니다. 비즈니스 속도로 이동하는 조직은 때때로 매일 수백 또는 수천 개의 서비스와 마이크로 서비스를 스핀업할 수 있습니다. 이 작업은 종종 수반되는 문서를 작성하거나 관련 API가 사용되는 것, 필요한 기간 또는 그 중요도에 대한 설명 없이 신속하게 수행됩니다. 이렇게 하면 시간이 지남에 따라 길들여질 수 없는 API 스프롤이 생성될 수 있으며, 특히 API가 얼마나 오래 존재할 수 있는지 를 정의하는 담요 정책이 없는 경우 더욱 그렇다.

이러한 환경에서일부 API가 손실되거나 잊혀지거나 폐기되지 않을 가능성이 큽분입니다.

정상적인 프로세스 이외의 새로운 서비스를 만들 수 있는 권한이 있는 사용자도 때때로 비난할 수 있습니다. 예를 들어 마케팅 그룹은 제품 출시와 같은 예정된 이벤트를 지원하는 데 도움이 되는 서비스를 만든 다음 이벤트가 완료된 후에는 다시 중단하지 않을 수 있습니다. 나중에 해당 서비스와 관련 API를 보는 사람은 왜 존재하는지 전혀 알지 못할 수 있으며 문서가 없으면 수수께끼로 남을 수 있습니다. 그들은 생산 환경에서 이러한 API를 제거하거나 그들이 얼마나 중요한지 또는 무엇을 하는지 전혀 알지 못하기 때문에 더 새로운 버전으로 업그레이드하는 것이 불편할 수 있습니다.

프레임워크의 API 보안이 시간이 지남에 따라 향상되므로 취약점이 위험해집니다. 연구원은 취약점을 발견하거나 점점 더 인기 있는 유형의 공격을 막기 위해 추가 보안을 추가할 수 있습니다. 이전 API는 업그레이드하지 않는 한 이러한 공격에 취약할 수 있으므로 해커는 종종 해당 API를 검색하거나 자동화된 도구를 사용하여 이를 검색합니다.

OWASP에서 제공하는 실제 예제에서 회사는 중요한 결함을 패치하기 위해 사용자 데이터베이스를 검색하는 데 사용되는 API를 업그레이드했습니다. 그러나 그들은 실수로 기존의 API를 제자리에 두드했습니다.

공격자는 새 API의 위치가 api.criticalservice.com/v2)와 같다는 것을 발견했습니다. URL을 (api.criticalservice.com/v1)로 대체하여 이전 API를 알려진 취약점으로 사용할 수 있었습니다. 이것은 궁극적으로 1 억 명 이상의 사용자의 개인 기록을 노출.

부적절한 자산 관리 결함 제거

사용자 환경에서 부적절한 자산 관리 결함을 제거하는 유일한 방법은 모든 API, 사용 및 버전에 대한 엄격한 인벤토리를 유지하는 것입니다. 이는 기존 API의 인벤토리로 시작하여 프로덕션 또는 개발과 같이 배포해야 하는 환경, 네트워크에 액세스할 수 있어야 하는 사용자 및 버전과 같은 요인에 중점을 두어야 합니다.

완료되면 작성된 새 API 또는 서비스에 문서가 자동으로 추가되는 프로세스를 구현해야 합니다. 여기에는 속도 제한, 요청 및 응답 처리 방법, 연결할 수 있는 엔드포인트, 적용되는 관련 정책, 나중에 감사하는 데 필요한 기타 모든 것을 포함하여 API의 모든 측면이 포함되어야 합니다. 또한 비생산 API 또는 프로덕션 환경에서 개발 환경의 API를 사용하지 않아야 합니다. 또한 자동 폐기를 방지하기 위해 소유자가 계속 사용해야 하는 API에 시간 제한을 추가하는 것도 고려해 보십시오.

활성 API의 새 버전을 사용할 수 있게 될 때마다 위험을 수행하십시오. assessment 업그레이드해야 하는지, 생산 환경의 방해를 피하기 위해 해당 프로세스가 어떻게 수행되어야 하는지 확인합니다. 새 API로 마이그레이션한 후 이전 API를 환경에서 완전히 제거합니다.

이러한 모든 작업을 수행하면 부적절한 자산 관리 취약점이 조직, 사용자 또는 네트워크에 해를 끼치지 않도록 할 수 있습니다. 체크 아웃 Secure Code Warrior 이 취약점에 대한 자세한 정보를 위한 블로그 페이지와 다른 보안 결함의 파괴로부터 조직과 고객을 보호하는 방법. 데모를 시도할 수도 있습니다. Secure Code Warrior 모든 사이버 보안 기술을 연마하고 최신 상태로 유지하기 위한 교육 플랫폼을 제공합니다.

리소스 보기
리소스 보기

저자

마티아스 마두, Ph.

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

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

더 알고 싶으신가요?

블로그에서 최신 보안 코딩 인사이트에 대해 자세히 알아보세요.

Atlassian의 광범위한 리소스 라이브러리는 안전한 코딩 숙련도를 확보하기 위한 인적 접근 방식을 강화하는 것을 목표로 합니다.

블로그 보기
더 알고 싶으신가요?

개발자 중심 보안에 대한 최신 연구 보기

광범위한 리소스 라이브러리에는 개발자 중심의 보안 코딩을 시작하는 데 도움이 되는 백서부터 웨비나까지 유용한 리소스가 가득합니다. 지금 살펴보세요.

리소스 허브

코더는 보안 OWASP 상위 10 API 시리즈를 정복 - 부적절한 자산 관리

게시일: 2020년 12월 22일
마티아스 마두, Ph.

OWASP API 상위 10위권의 대부분의 취약점과 달리 부적절한 자산 관리는 코딩 결함에 특별히 중심을 두지 않습니다. 대신 이 취약점은 더 새롭고 안전한 버전으로 대체되어야 하는 오래된 API를 오래 동안 제자리에 유지할 수 있는 인간 또는 관리 문제에 가까울 수 있습니다. 또한 아직 개발 중인 API가 위협에 완전히 강화되기 전에 프로덕션 환경에 노출되는 경우에도 발생할 수 있습니다.

이 취약점은 마이크로 서비스 및 클라우드 컴퓨팅의 출현으로 인해 관리하기가 특히 어렵습니다. 이러한 환경에서는 일시적인 필요를 충족시키기 위해 새로운 서비스가 신속하게 스폰된 다음 잊어버렸고 결코 폐기되지 않을 수 있습니다. 이전 API가 프로덕션 환경에 연결되어 있으면 전체 네트워크를 위험에 빠뜨릴 수 있습니다.

이 보안 버그에 게임 챌린지를 시도하고 싶으신가요? 경기장으로 들어오세요: [여기에서 시작]

부적절한 자산 관리 결함이 API에 어떤 영향을 미칩니까?

부적절한 자산 관리 결함은 현대의 산물입니다. 비즈니스 속도로 이동하는 조직은 때때로 매일 수백 또는 수천 개의 서비스와 마이크로 서비스를 스핀업할 수 있습니다. 이 작업은 종종 수반되는 문서를 작성하거나 관련 API가 사용되는 것, 필요한 기간 또는 그 중요도에 대한 설명 없이 신속하게 수행됩니다. 이렇게 하면 시간이 지남에 따라 길들여질 수 없는 API 스프롤이 생성될 수 있으며, 특히 API가 얼마나 오래 존재할 수 있는지 를 정의하는 담요 정책이 없는 경우 더욱 그렇다.

이러한 환경에서일부 API가 손실되거나 잊혀지거나 폐기되지 않을 가능성이 큽분입니다.

정상적인 프로세스 이외의 새로운 서비스를 만들 수 있는 권한이 있는 사용자도 때때로 비난할 수 있습니다. 예를 들어 마케팅 그룹은 제품 출시와 같은 예정된 이벤트를 지원하는 데 도움이 되는 서비스를 만든 다음 이벤트가 완료된 후에는 다시 중단하지 않을 수 있습니다. 나중에 해당 서비스와 관련 API를 보는 사람은 왜 존재하는지 전혀 알지 못할 수 있으며 문서가 없으면 수수께끼로 남을 수 있습니다. 그들은 생산 환경에서 이러한 API를 제거하거나 그들이 얼마나 중요한지 또는 무엇을 하는지 전혀 알지 못하기 때문에 더 새로운 버전으로 업그레이드하는 것이 불편할 수 있습니다.

프레임워크의 API 보안이 시간이 지남에 따라 향상되므로 취약점이 위험해집니다. 연구원은 취약점을 발견하거나 점점 더 인기 있는 유형의 공격을 막기 위해 추가 보안을 추가할 수 있습니다. 이전 API는 업그레이드하지 않는 한 이러한 공격에 취약할 수 있으므로 해커는 종종 해당 API를 검색하거나 자동화된 도구를 사용하여 이를 검색합니다.

OWASP에서 제공하는 실제 예제에서 회사는 중요한 결함을 패치하기 위해 사용자 데이터베이스를 검색하는 데 사용되는 API를 업그레이드했습니다. 그러나 그들은 실수로 기존의 API를 제자리에 두드했습니다.

공격자는 새 API의 위치가 api.criticalservice.com/v2)와 같다는 것을 발견했습니다. URL을 (api.criticalservice.com/v1)로 대체하여 이전 API를 알려진 취약점으로 사용할 수 있었습니다. 이것은 궁극적으로 1 억 명 이상의 사용자의 개인 기록을 노출.

부적절한 자산 관리 결함 제거

사용자 환경에서 부적절한 자산 관리 결함을 제거하는 유일한 방법은 모든 API, 사용 및 버전에 대한 엄격한 인벤토리를 유지하는 것입니다. 이는 기존 API의 인벤토리로 시작하여 프로덕션 또는 개발과 같이 배포해야 하는 환경, 네트워크에 액세스할 수 있어야 하는 사용자 및 버전과 같은 요인에 중점을 두어야 합니다.

완료되면 작성된 새 API 또는 서비스에 문서가 자동으로 추가되는 프로세스를 구현해야 합니다. 여기에는 속도 제한, 요청 및 응답 처리 방법, 연결할 수 있는 엔드포인트, 적용되는 관련 정책, 나중에 감사하는 데 필요한 기타 모든 것을 포함하여 API의 모든 측면이 포함되어야 합니다. 또한 비생산 API 또는 프로덕션 환경에서 개발 환경의 API를 사용하지 않아야 합니다. 또한 자동 폐기를 방지하기 위해 소유자가 계속 사용해야 하는 API에 시간 제한을 추가하는 것도 고려해 보십시오.

활성 API의 새 버전을 사용할 수 있게 될 때마다 위험을 수행하십시오. assessment 업그레이드해야 하는지, 생산 환경의 방해를 피하기 위해 해당 프로세스가 어떻게 수행되어야 하는지 확인합니다. 새 API로 마이그레이션한 후 이전 API를 환경에서 완전히 제거합니다.

이러한 모든 작업을 수행하면 부적절한 자산 관리 취약점이 조직, 사용자 또는 네트워크에 해를 끼치지 않도록 할 수 있습니다. 체크 아웃 Secure Code Warrior 이 취약점에 대한 자세한 정보를 위한 블로그 페이지와 다른 보안 결함의 파괴로부터 조직과 고객을 보호하는 방법. 데모를 시도할 수도 있습니다. Secure Code Warrior 모든 사이버 보안 기술을 연마하고 최신 상태로 유지하기 위한 교육 플랫폼을 제공합니다.

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

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