코더는 보안을 정복 : 공유 및 학습 시리즈 - 불충분한 전송 계층 보호

게시일: 2019년 6월 27일
by Jaap Karan Singh
사례 연구

코더는 보안을 정복 : 공유 및 학습 시리즈 - 불충분한 전송 계층 보호

게시일: 2019년 6월 27일
by Jaap Karan Singh
리소스 보기
리소스 보기

응용 프로그램 서버와 사용하는 백엔드 시스템을 완전히 확보한 경우에도 전송 계층 보호가 부족한 경우에도 통신이 스누핑에 취약할 수 있습니다. 물리적 세계에서, 하드 통화가 장갑차를 사용하여 주변에 이동하는 이유는 운송 중에 보호를 제공하기 위해서입니다. 상점이나 은행이 생성하는 돈이 마을을 가로 질러 드라이브를위한 골프 카트에로드되는 경우 정말 중요하지 않습니다.

사이버 영역의 운송 계층도 마찬가지입니다. 응용 프로그램이 안전하더라도 응용 프로그램이 들어오는 정보가 보호 없이 전송되는 경우에도 여전히 중요한 취약점이 있습니다. 또한 다른 서버 나 데이터베이스에 정보를 보내는 경우 일부 앱에 두 번째 취약점이 있습니다. 해당 정보는 해당 트랜잭션을 스누핑하는 비즈니스가 없는 내부자에게 노출될 수 있습니다.

사용자와 데이터를 완전히 보호하려면 전송 계층을 보호해야 합니다. 이를 통해서만 처음부터 끝까지 전체 트랜잭션을 완전히 보호할 수 있습니다.

이 에피소드에서는 다음을 배우게 됩니다.

  • 해커가 불충분 한 전송 계층 보호를 악용하는 방법
  • 운송 계층을 보호하는 것이 그렇게 위험하지 않는 이유는 무엇입니까?
  • 응용 프로그램 이나 서버를 통해 이동 하는 모든 데이터의 전송을 보호 하기 위해 무엇을 할 수 있습니다.

공격자는 어떻게 불충분 한 전송 계층 보호를 악용합니까?

전송 계층 보호가 부족하면 데이터 스트림 내의 두 지점에서 공격을 가능하게 할 수 있습니다. 가장 일반적으로 악용되는 스팟은 사용자와 응용 프로그램 서버 사이에 있습니다. 정보가 명확하거나 약한 암호화로 전송되는 경우 해커는 해당 정보를 모니터링, 도용 및 변경할 수 있습니다. 이렇게 하면 해커가 사용자의 신용 카드, 로그인 자격 증명 또는 응용 프로그램 서버로 전송된 기타 모든 것을 훔칠 수 있습니다. 서버 자체가 안전하더라도 해커가 서버와 사용자 간의 안전하지 않은 채널을 모니터링하면 많은 정보에 거의 무제한 액세스할 수 있습니다.

종종 보호되지 않은 상태로 남아 있는 두 번째 점은 응용 프로그램과 네트워크의 나머지 부분 간의 전송 계층입니다. 예를 들어 응용 프로그램 서버는 온라인 쇼핑 주문을 처리한 다음 주문 처리 시스템으로 보내거나 데이터가 저장소를 위해 데이터베이스로 오프로드될 수 있습니다. 이러한 내부 채널이 보호되지 않은 경우 내부 사용자는 해당 정보를 볼 수 있습니다.

모든 내부 사용자가 좋은 사람이라고 믿는 것은 좋지만, 사실은 내부자 위협이 많은 산업에서 증가하고 있다는 것입니다. 내부자는 공격자 또는 경쟁자에 대한 민감한 정보를 수집하는 대가로 뇌물을 수수한 혐의로 붙잡혔습니다. 그리고 수천 개의 유효한 신용 카드와 같은 것에 액세스 하는 것은 단순히 어떤 사람들이 무시 하는 너무 유혹 수 있습니다.

공격 기술의 관점에서, 보호되지 않은 통신을 가로채는 것은 그리 어렵지 않습니다. 심지어 낮은 수준의 해커는 암호화되지 않은 데이터 스트림에 대한 중간 공격을 수행하는 방법을 알고있다. 그렇지 않은 경우 온라인에서 반 시간 이내에 교육할 수 있는 동영상이 있습니다.

전송 계층 보호 취약점이 너무 위험한 이유는 무엇입니까?

해커가 중요한 정보를 수집하기가 매우 쉽기 때문에 전송 계층에 대한 보호가 부족하거나 존재하지 않는 것은 위험합니다. 앱 서버에 침입하거나 네트워크를 해킹할 필요가 없습니다. 그들은 단순히 중간 공격에 사람을 설정하고 사용자로부터 서버로 전송되는 모든 것을 읽습니다. 여기에는 유효한 자격 증명을 사용하여 나중에 보안을 우회하는 데 사용할 수 있는 사용자 이름과 암호가 포함될 수 있습니다. 응용 프로그램에 따라 신용 카드 정보 또는 사용자에 대한 기타 개인 데이터가 포함될 수도 있습니다.

그리고 이 모든 스누핑이 네트워크 외부에서 일어나고 있다는 점에 유의해야 합니다. 안전하지 않은 전송 채널을 사용하는 경우 다른 사람이 해당 정보를 캡처하는지 알 수 없습니다. 일반적으로 첫 번째 징후는 많은 사용자가 손상된 계정이나 신용 카드 구매를 보고하기 시작하는 경우이며, 일반적인 요소는 응용 프로그램입니다 "좋은 자리가 아닙니다. 해커는 정보를 일단 수정하거나, 배달 주소를 변경하거나, 사용자에게 전달하기 전에 서버 응답에 악성 스크립트를 삽입할 수도 있습니다.

백 엔드에서 전송 계층을 보호하지 못하면 내부자에게 데이터가 노출됩니다. 내부자가 외부에서 해커와 비교하여 운송 계층을 스누핑할 가능성이 훨씬 적을 것입니다. 그러나 내부자 위협이 사용자 데이터뿐만 아니라 앱 서버가 추가 한 독점 정보를 볼 수 있기 때문에 이러한 패킷이 발생하면 더 위험합니다.

전송 계층 보호 취약성 제거

충분한 운송 계층 보호가 가능한 만큼 위험할 수 있으므로 모든 운송 채널을 제대로 보호하는 것도 매우 어렵지 않습니다. 백엔드 인프라에서 시작합니다. 이것은 독점적으로 HTTPS해야한다, 사이트에 HTTPS와 HTTP를 혼합하지 않도록해야합니다. 마지막으로, 모든 사용자가 HTTP 엄격한 전송 보안(HSTS)을 사용하여 보안 브라우저를 사용하여 상호 작용하도록 강요하는 동안 최소 키 크기인 2048 비트의 유효한 SSL 인증서를 유지 관리합니다.

인프라가 구축되면 개발자는 강력한 프로토콜을 사용하여 전송 계층을 보호해야 합니다. TLS 1.1과 1.0도 절대적으로 필요한 경우 허용되지만 이상적인 TLS 1.2를 사용해야 합니다. 일단 제자리에 있으면 SSLv2와 같은 약한 프로토콜을 완전히 비활성화해야 하며 지원되지 않아야 합니다.

또한 백엔드에서 암호화 암호가 충분히 강력하도록 주의를 기울여야 합니다. 이상적으로 최소 세션 키 크기는 128비트여야 합니다. 프로토콜과 마찬가지로 DES 및 RC4-40과 같은 약한 암호화 알고리즘에 대한 지원을 비활성화해야 합니다. 마지막으로 서버 자체와 그 안팎으로 이어지는 모든 데이터 경로가 충분히 보호될 때까지 응용 프로그램을 진정으로 안전하게 고려하지 마십시오.

전송 계층 보호 취약점 부족에 대한 자세한 정보

자세한 내용은 OWASP 가이드를 살펴보고 전송 계층을 보호할 수 있습니다. 또한 새로운 방어 지식을 테스트에 넣을 수 있습니다. Secure Code Warrior 사이버 보안 팀이 궁극적인 사이버 전사가 될 수 있도록 하는 플랫폼. 이 취약점을 물리치는 것에 대해 자세히 알아보려면 Secure Code Warrior 블로그.

리소스 보기
리소스 보기

저자

야프 카란 싱

더 알고 싶으신가요?

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

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

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

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

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

리소스 허브

코더는 보안을 정복 : 공유 및 학습 시리즈 - 불충분한 전송 계층 보호

게시일: 2019년 6월 27일
Jaap Karan Singh

응용 프로그램 서버와 사용하는 백엔드 시스템을 완전히 확보한 경우에도 전송 계층 보호가 부족한 경우에도 통신이 스누핑에 취약할 수 있습니다. 물리적 세계에서, 하드 통화가 장갑차를 사용하여 주변에 이동하는 이유는 운송 중에 보호를 제공하기 위해서입니다. 상점이나 은행이 생성하는 돈이 마을을 가로 질러 드라이브를위한 골프 카트에로드되는 경우 정말 중요하지 않습니다.

사이버 영역의 운송 계층도 마찬가지입니다. 응용 프로그램이 안전하더라도 응용 프로그램이 들어오는 정보가 보호 없이 전송되는 경우에도 여전히 중요한 취약점이 있습니다. 또한 다른 서버 나 데이터베이스에 정보를 보내는 경우 일부 앱에 두 번째 취약점이 있습니다. 해당 정보는 해당 트랜잭션을 스누핑하는 비즈니스가 없는 내부자에게 노출될 수 있습니다.

사용자와 데이터를 완전히 보호하려면 전송 계층을 보호해야 합니다. 이를 통해서만 처음부터 끝까지 전체 트랜잭션을 완전히 보호할 수 있습니다.

이 에피소드에서는 다음을 배우게 됩니다.

  • 해커가 불충분 한 전송 계층 보호를 악용하는 방법
  • 운송 계층을 보호하는 것이 그렇게 위험하지 않는 이유는 무엇입니까?
  • 응용 프로그램 이나 서버를 통해 이동 하는 모든 데이터의 전송을 보호 하기 위해 무엇을 할 수 있습니다.

공격자는 어떻게 불충분 한 전송 계층 보호를 악용합니까?

전송 계층 보호가 부족하면 데이터 스트림 내의 두 지점에서 공격을 가능하게 할 수 있습니다. 가장 일반적으로 악용되는 스팟은 사용자와 응용 프로그램 서버 사이에 있습니다. 정보가 명확하거나 약한 암호화로 전송되는 경우 해커는 해당 정보를 모니터링, 도용 및 변경할 수 있습니다. 이렇게 하면 해커가 사용자의 신용 카드, 로그인 자격 증명 또는 응용 프로그램 서버로 전송된 기타 모든 것을 훔칠 수 있습니다. 서버 자체가 안전하더라도 해커가 서버와 사용자 간의 안전하지 않은 채널을 모니터링하면 많은 정보에 거의 무제한 액세스할 수 있습니다.

종종 보호되지 않은 상태로 남아 있는 두 번째 점은 응용 프로그램과 네트워크의 나머지 부분 간의 전송 계층입니다. 예를 들어 응용 프로그램 서버는 온라인 쇼핑 주문을 처리한 다음 주문 처리 시스템으로 보내거나 데이터가 저장소를 위해 데이터베이스로 오프로드될 수 있습니다. 이러한 내부 채널이 보호되지 않은 경우 내부 사용자는 해당 정보를 볼 수 있습니다.

모든 내부 사용자가 좋은 사람이라고 믿는 것은 좋지만, 사실은 내부자 위협이 많은 산업에서 증가하고 있다는 것입니다. 내부자는 공격자 또는 경쟁자에 대한 민감한 정보를 수집하는 대가로 뇌물을 수수한 혐의로 붙잡혔습니다. 그리고 수천 개의 유효한 신용 카드와 같은 것에 액세스 하는 것은 단순히 어떤 사람들이 무시 하는 너무 유혹 수 있습니다.

공격 기술의 관점에서, 보호되지 않은 통신을 가로채는 것은 그리 어렵지 않습니다. 심지어 낮은 수준의 해커는 암호화되지 않은 데이터 스트림에 대한 중간 공격을 수행하는 방법을 알고있다. 그렇지 않은 경우 온라인에서 반 시간 이내에 교육할 수 있는 동영상이 있습니다.

전송 계층 보호 취약점이 너무 위험한 이유는 무엇입니까?

해커가 중요한 정보를 수집하기가 매우 쉽기 때문에 전송 계층에 대한 보호가 부족하거나 존재하지 않는 것은 위험합니다. 앱 서버에 침입하거나 네트워크를 해킹할 필요가 없습니다. 그들은 단순히 중간 공격에 사람을 설정하고 사용자로부터 서버로 전송되는 모든 것을 읽습니다. 여기에는 유효한 자격 증명을 사용하여 나중에 보안을 우회하는 데 사용할 수 있는 사용자 이름과 암호가 포함될 수 있습니다. 응용 프로그램에 따라 신용 카드 정보 또는 사용자에 대한 기타 개인 데이터가 포함될 수도 있습니다.

그리고 이 모든 스누핑이 네트워크 외부에서 일어나고 있다는 점에 유의해야 합니다. 안전하지 않은 전송 채널을 사용하는 경우 다른 사람이 해당 정보를 캡처하는지 알 수 없습니다. 일반적으로 첫 번째 징후는 많은 사용자가 손상된 계정이나 신용 카드 구매를 보고하기 시작하는 경우이며, 일반적인 요소는 응용 프로그램입니다 "좋은 자리가 아닙니다. 해커는 정보를 일단 수정하거나, 배달 주소를 변경하거나, 사용자에게 전달하기 전에 서버 응답에 악성 스크립트를 삽입할 수도 있습니다.

백 엔드에서 전송 계층을 보호하지 못하면 내부자에게 데이터가 노출됩니다. 내부자가 외부에서 해커와 비교하여 운송 계층을 스누핑할 가능성이 훨씬 적을 것입니다. 그러나 내부자 위협이 사용자 데이터뿐만 아니라 앱 서버가 추가 한 독점 정보를 볼 수 있기 때문에 이러한 패킷이 발생하면 더 위험합니다.

전송 계층 보호 취약성 제거

충분한 운송 계층 보호가 가능한 만큼 위험할 수 있으므로 모든 운송 채널을 제대로 보호하는 것도 매우 어렵지 않습니다. 백엔드 인프라에서 시작합니다. 이것은 독점적으로 HTTPS해야한다, 사이트에 HTTPS와 HTTP를 혼합하지 않도록해야합니다. 마지막으로, 모든 사용자가 HTTP 엄격한 전송 보안(HSTS)을 사용하여 보안 브라우저를 사용하여 상호 작용하도록 강요하는 동안 최소 키 크기인 2048 비트의 유효한 SSL 인증서를 유지 관리합니다.

인프라가 구축되면 개발자는 강력한 프로토콜을 사용하여 전송 계층을 보호해야 합니다. TLS 1.1과 1.0도 절대적으로 필요한 경우 허용되지만 이상적인 TLS 1.2를 사용해야 합니다. 일단 제자리에 있으면 SSLv2와 같은 약한 프로토콜을 완전히 비활성화해야 하며 지원되지 않아야 합니다.

또한 백엔드에서 암호화 암호가 충분히 강력하도록 주의를 기울여야 합니다. 이상적으로 최소 세션 키 크기는 128비트여야 합니다. 프로토콜과 마찬가지로 DES 및 RC4-40과 같은 약한 암호화 알고리즘에 대한 지원을 비활성화해야 합니다. 마지막으로 서버 자체와 그 안팎으로 이어지는 모든 데이터 경로가 충분히 보호될 때까지 응용 프로그램을 진정으로 안전하게 고려하지 마십시오.

전송 계층 보호 취약점 부족에 대한 자세한 정보

자세한 내용은 OWASP 가이드를 살펴보고 전송 계층을 보호할 수 있습니다. 또한 새로운 방어 지식을 테스트에 넣을 수 있습니다. Secure Code Warrior 사이버 보안 팀이 궁극적인 사이버 전사가 될 수 있도록 하는 플랫폼. 이 취약점을 물리치는 것에 대해 자세히 알아보려면 Secure Code Warrior 블로그.

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

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