
코더들이 보안을 정복하다: 공유 및 학습 시리즈 - 정보 노출
“입술이 느슨하면 배가 가라앉습니다“는 제2차 세계대전 중에 미국에서 유행한 문구입니다.영국에서는 “부주의한 대화는 생명을 앗아간다”는 말을 들었을 겁니다.이 속담의 요지는 민감한 정보에 대해 부주의하게 말하는 것은 스파이에게 들려 심각한 결과를 초래할 수 있다는 것이었습니다.
웹 애플리케이션을 구축할 때도 동일한 원칙이 적용됩니다.웹 앱이 너무 많은 정보를 노출하면 공격자가 더 쉽게 침입할 수 있습니다.
이 글에서는 정보 노출이 무엇인지, 왜 위험한지, 어떻게 방지할 수 있는지 알아보겠습니다.
정보 노출에 대한 이해
정보 노출은 내부 정보를 보지 말아야 하는 사람들에게 노출하는 웹 애플리케이션을 말합니다.또한 로그 파일이나 사용자 인터페이스를 통해 민감한 고객 정보를 노출하는 것을 의미할 수도 있습니다.어느 쪽이든 공격자는 발견한 정보를 이용해 시스템이나 사용자를 공격할 수 있습니다.
공격자의 첫 단계는 애플리케이션 내에서 오류를 생성하는 것인 경우가 많습니다.오류 처리 및 웹 애플리케이션 구성이 제대로 이루어지지 않으면 오류 메시지와 함께 정보가 노출될 수 있습니다.공격자가 애플리케이션 내에서 오류를 만들면 어떻게 되나요?스택 트레이스와 같은 기술적 세부 정보가 포함된 기술적 오류 메시지가 나타나면 너무 많은 정보가 유출된 것입니다.이러한 세부 정보에는 사용 중인 데이터베이스 또는 실행 중인 애플리케이션 서버의 버전이 포함될 수 있습니다.
민감한 정보 공개는 다른 방식으로 발생할 수 있습니다.양식에 민감한 정보가 들어 있는 숨겨진 필드가 있나요?공격자는 단순히 페이지의 소스를 보고 값을 볼 수 있습니다.
간단히 말해서, 정보 노출은 사용자가 반드시 알아야 하는 정보를 너무 쉽게 액세스할 수 있게 되면 발생합니다.
정보 노출이 위험한 이유 이해
공격자는 애플리케이션에서 노출한 정보로 무엇을 할 수 있습니까?민감한 정보인 경우 공격자는 ID나 사용자 자격 증명을 도용할 수 있습니다.이로 인해 금전적 손해, 개인 정보 침해 및 규제 벌금이 부과될 수 있습니다.
공격자가 오류 메시지를 사용하여 응용 프로그램에 대한 정보를 얻으면 해당 정보가 향후 공격에 사용될 수 있습니다.사실, OWASP 테스트 가이드 에 대한 전체 섹션이 있습니다. 정보 수집.
OWASP 테스트 가이드는 검색 엔진을 사용하여 의도하지 않은 웹 사이트에 대한 정보를 찾을 것을 권장합니다.예를 들어 관리 페이지가 검색 엔진에 노출되어 있나요?robots.txt 파일을 사용하여 검색 엔진에 특정 페이지의 색인을 생성하지 않도록 지시할 수 있습니다.이와 동시에 robots.txt 파일에서도 정보가 유출될 수 있습니다.민감한 URL은 때때로 robots.txt 파일에 있을 수 있습니다.공격자는 파일을 끌어내려 사이트의 일부 디렉터리 구조를 파악하기 시작합니다.
Google은 웹사이트를 심층적으로 검사할 수 있는 고급 검색 엔진 옵션을 제공합니다.예를 들어 'site: <domain>'구문을 사용하여 특정 사이트를 검색할 수 있습니다.이전 인덱싱 작업에서 삭제되었지만 여전히 캐시에 있는 캐시된 페이지를 볼 수 있습니다.Bing 및 DuckDuckGo와 같은 다른 검색 엔진을 사용하면 결과가 달라질 수 있으므로 웹 애플리케이션에 대해 어떤 정보가 노출되었는지 각 검색 엔진에서 테스트해</domain> 보세요.
HTTP 헤더, 웹 사이트 배너, 심지어 HTML과 JavaScript 코드 내의 댓글에도 공격자가 볼 수 없는 정보가 있을 수 있습니다.HTTP 헤더는 애플리케이션 서버와 버전 번호를 나타낼 수 있습니다.공격자는 이 정보를 사용하여 특정 버전에 사용할 익스플로잇을 찾을 수 있습니다.공격자가 사용자 정보를 찾을 수 있는 다양한 장소와 정보를 적절하게 숨기는 방법을 모두 이해해야 합니다.
정보 노출 방지
정보 공개는 종종 웹 애플리케이션 구성에서 문제가 됩니다.대부분의 애플리케이션 서버는 기본적으로 오류 메시지에 스택 트레이스를 반환합니다.문제 해결을 위해 오류를 기록하는 동안 프로덕션 애플리케이션이 일반 오류 페이지로 리디렉션되도록 하려면 이 설정을 변경해야 합니다.자세한 오류 메시지가 사용자의 브라우저에 반환되어서는 안 됩니다.
민감한 정보가 포함된 애플리케이션에 필요한 파일이 있는 경우 애플리케이션 자체만 해당 파일을 읽을 수 있도록 적절한 액세스 제어를 해야 합니다.서버에서 디렉터리 목록을 비활성화하고 이러한 파일을 웹 루트 디렉터리 외부로 이동합니다.이렇게 하면 공격자가 브라우저를 사용하여 파일을 탐색하는 것을 방지할 수 있습니다. 디렉터리 트래버설 공격.
제대로 구성되지 않은 경우 로그를 사용하여 정보를 수집할 수 있습니다.오류가 발생하면 암호, 세션 토큰 또는 개인 식별 정보 (PII) 와 같은 민감한 정보를 기록하지 마십시오.공격자가 로그 파일에 액세스할 수 있다면 훔쳐야 할 중요한 정보를 많이 찾을 수 있을 것입니다.일반적으로 계정 식별자, 자세한 오류 메시지, 오류가 발생한 방법 또는 수행 중인 작업 등을 필요 이상으로 기록하지 마십시오.로그 파일은 비밀이 아니며 민감한 정보를 그 안에 넣고 싶지 않을 거라고 가정해 봅시다.
웹 앱을 싱크하지 마세요
친구와 대화하다가 정보가 유출되어 제2차 세계대전에서 전함을 잃게 된 것이 정말 가능했을까요?아닐 수도 있습니다.그런데 왜 위험을 감수해야 할까요?이것이 바로 “입술이 느슨하면 배를 가라앉힌다”는 말의 교훈입니다.
마찬가지로 웹 애플리케이션의 내부 동작을 외부에 노출할 이유도 없습니다.신용카드 번호나 암호 전체를 볼 이유는 없습니다.로그 파일에 PII 데이터를 포함할 이유가 없습니다.그러니 그러지 마세요. 학습 리소스를 확인해 보세요 정보 노출에 대해 자세히 알아보십시오.
애플리케이션의 내부 작업을 원래 위치에 보관하세요.웹 앱을 침몰시키지 마세요.
지금 당장 정보 노출을 막을 수 있다고 생각하십니까?한 걸음 더 나아가세요, 전사: [여기서 시작]


웹 앱이 너무 많은 정보를 노출하면 공격자가 더 쉽게 침입할 수 있습니다. 이 게시물에서는 정보 노출의 정의, 위험한 이유, 방지 방법에 대해 알아보겠습니다.
Jaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.

Secure Code Warrior está aquí para ayudar a las organizaciones a proteger el código durante todo el ciclo de vida del desarrollo de software y a crear una cultura que priorice la ciberseguridad. Ya seas administrador de AppSec, desarrollador, CISO o cualquier persona relacionada con la seguridad, podemos ayudarte a reducir los riesgos asociados al código inseguro en tu organización.
Reserva de demostraciónJaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.


“입술이 느슨하면 배가 가라앉습니다“는 제2차 세계대전 중에 미국에서 유행한 문구입니다.영국에서는 “부주의한 대화는 생명을 앗아간다”는 말을 들었을 겁니다.이 속담의 요지는 민감한 정보에 대해 부주의하게 말하는 것은 스파이에게 들려 심각한 결과를 초래할 수 있다는 것이었습니다.
웹 애플리케이션을 구축할 때도 동일한 원칙이 적용됩니다.웹 앱이 너무 많은 정보를 노출하면 공격자가 더 쉽게 침입할 수 있습니다.
이 글에서는 정보 노출이 무엇인지, 왜 위험한지, 어떻게 방지할 수 있는지 알아보겠습니다.
정보 노출에 대한 이해
정보 노출은 내부 정보를 보지 말아야 하는 사람들에게 노출하는 웹 애플리케이션을 말합니다.또한 로그 파일이나 사용자 인터페이스를 통해 민감한 고객 정보를 노출하는 것을 의미할 수도 있습니다.어느 쪽이든 공격자는 발견한 정보를 이용해 시스템이나 사용자를 공격할 수 있습니다.
공격자의 첫 단계는 애플리케이션 내에서 오류를 생성하는 것인 경우가 많습니다.오류 처리 및 웹 애플리케이션 구성이 제대로 이루어지지 않으면 오류 메시지와 함께 정보가 노출될 수 있습니다.공격자가 애플리케이션 내에서 오류를 만들면 어떻게 되나요?스택 트레이스와 같은 기술적 세부 정보가 포함된 기술적 오류 메시지가 나타나면 너무 많은 정보가 유출된 것입니다.이러한 세부 정보에는 사용 중인 데이터베이스 또는 실행 중인 애플리케이션 서버의 버전이 포함될 수 있습니다.
민감한 정보 공개는 다른 방식으로 발생할 수 있습니다.양식에 민감한 정보가 들어 있는 숨겨진 필드가 있나요?공격자는 단순히 페이지의 소스를 보고 값을 볼 수 있습니다.
간단히 말해서, 정보 노출은 사용자가 반드시 알아야 하는 정보를 너무 쉽게 액세스할 수 있게 되면 발생합니다.
정보 노출이 위험한 이유 이해
공격자는 애플리케이션에서 노출한 정보로 무엇을 할 수 있습니까?민감한 정보인 경우 공격자는 ID나 사용자 자격 증명을 도용할 수 있습니다.이로 인해 금전적 손해, 개인 정보 침해 및 규제 벌금이 부과될 수 있습니다.
공격자가 오류 메시지를 사용하여 응용 프로그램에 대한 정보를 얻으면 해당 정보가 향후 공격에 사용될 수 있습니다.사실, OWASP 테스트 가이드 에 대한 전체 섹션이 있습니다. 정보 수집.
OWASP 테스트 가이드는 검색 엔진을 사용하여 의도하지 않은 웹 사이트에 대한 정보를 찾을 것을 권장합니다.예를 들어 관리 페이지가 검색 엔진에 노출되어 있나요?robots.txt 파일을 사용하여 검색 엔진에 특정 페이지의 색인을 생성하지 않도록 지시할 수 있습니다.이와 동시에 robots.txt 파일에서도 정보가 유출될 수 있습니다.민감한 URL은 때때로 robots.txt 파일에 있을 수 있습니다.공격자는 파일을 끌어내려 사이트의 일부 디렉터리 구조를 파악하기 시작합니다.
Google은 웹사이트를 심층적으로 검사할 수 있는 고급 검색 엔진 옵션을 제공합니다.예를 들어 'site: <domain>'구문을 사용하여 특정 사이트를 검색할 수 있습니다.이전 인덱싱 작업에서 삭제되었지만 여전히 캐시에 있는 캐시된 페이지를 볼 수 있습니다.Bing 및 DuckDuckGo와 같은 다른 검색 엔진을 사용하면 결과가 달라질 수 있으므로 웹 애플리케이션에 대해 어떤 정보가 노출되었는지 각 검색 엔진에서 테스트해</domain> 보세요.
HTTP 헤더, 웹 사이트 배너, 심지어 HTML과 JavaScript 코드 내의 댓글에도 공격자가 볼 수 없는 정보가 있을 수 있습니다.HTTP 헤더는 애플리케이션 서버와 버전 번호를 나타낼 수 있습니다.공격자는 이 정보를 사용하여 특정 버전에 사용할 익스플로잇을 찾을 수 있습니다.공격자가 사용자 정보를 찾을 수 있는 다양한 장소와 정보를 적절하게 숨기는 방법을 모두 이해해야 합니다.
정보 노출 방지
정보 공개는 종종 웹 애플리케이션 구성에서 문제가 됩니다.대부분의 애플리케이션 서버는 기본적으로 오류 메시지에 스택 트레이스를 반환합니다.문제 해결을 위해 오류를 기록하는 동안 프로덕션 애플리케이션이 일반 오류 페이지로 리디렉션되도록 하려면 이 설정을 변경해야 합니다.자세한 오류 메시지가 사용자의 브라우저에 반환되어서는 안 됩니다.
민감한 정보가 포함된 애플리케이션에 필요한 파일이 있는 경우 애플리케이션 자체만 해당 파일을 읽을 수 있도록 적절한 액세스 제어를 해야 합니다.서버에서 디렉터리 목록을 비활성화하고 이러한 파일을 웹 루트 디렉터리 외부로 이동합니다.이렇게 하면 공격자가 브라우저를 사용하여 파일을 탐색하는 것을 방지할 수 있습니다. 디렉터리 트래버설 공격.
제대로 구성되지 않은 경우 로그를 사용하여 정보를 수집할 수 있습니다.오류가 발생하면 암호, 세션 토큰 또는 개인 식별 정보 (PII) 와 같은 민감한 정보를 기록하지 마십시오.공격자가 로그 파일에 액세스할 수 있다면 훔쳐야 할 중요한 정보를 많이 찾을 수 있을 것입니다.일반적으로 계정 식별자, 자세한 오류 메시지, 오류가 발생한 방법 또는 수행 중인 작업 등을 필요 이상으로 기록하지 마십시오.로그 파일은 비밀이 아니며 민감한 정보를 그 안에 넣고 싶지 않을 거라고 가정해 봅시다.
웹 앱을 싱크하지 마세요
친구와 대화하다가 정보가 유출되어 제2차 세계대전에서 전함을 잃게 된 것이 정말 가능했을까요?아닐 수도 있습니다.그런데 왜 위험을 감수해야 할까요?이것이 바로 “입술이 느슨하면 배를 가라앉힌다”는 말의 교훈입니다.
마찬가지로 웹 애플리케이션의 내부 동작을 외부에 노출할 이유도 없습니다.신용카드 번호나 암호 전체를 볼 이유는 없습니다.로그 파일에 PII 데이터를 포함할 이유가 없습니다.그러니 그러지 마세요. 학습 리소스를 확인해 보세요 정보 노출에 대해 자세히 알아보십시오.
애플리케이션의 내부 작업을 원래 위치에 보관하세요.웹 앱을 침몰시키지 마세요.
지금 당장 정보 노출을 막을 수 있다고 생각하십니까?한 걸음 더 나아가세요, 전사: [여기서 시작]

“입술이 느슨하면 배가 가라앉습니다“는 제2차 세계대전 중에 미국에서 유행한 문구입니다.영국에서는 “부주의한 대화는 생명을 앗아간다”는 말을 들었을 겁니다.이 속담의 요지는 민감한 정보에 대해 부주의하게 말하는 것은 스파이에게 들려 심각한 결과를 초래할 수 있다는 것이었습니다.
웹 애플리케이션을 구축할 때도 동일한 원칙이 적용됩니다.웹 앱이 너무 많은 정보를 노출하면 공격자가 더 쉽게 침입할 수 있습니다.
이 글에서는 정보 노출이 무엇인지, 왜 위험한지, 어떻게 방지할 수 있는지 알아보겠습니다.
정보 노출에 대한 이해
정보 노출은 내부 정보를 보지 말아야 하는 사람들에게 노출하는 웹 애플리케이션을 말합니다.또한 로그 파일이나 사용자 인터페이스를 통해 민감한 고객 정보를 노출하는 것을 의미할 수도 있습니다.어느 쪽이든 공격자는 발견한 정보를 이용해 시스템이나 사용자를 공격할 수 있습니다.
공격자의 첫 단계는 애플리케이션 내에서 오류를 생성하는 것인 경우가 많습니다.오류 처리 및 웹 애플리케이션 구성이 제대로 이루어지지 않으면 오류 메시지와 함께 정보가 노출될 수 있습니다.공격자가 애플리케이션 내에서 오류를 만들면 어떻게 되나요?스택 트레이스와 같은 기술적 세부 정보가 포함된 기술적 오류 메시지가 나타나면 너무 많은 정보가 유출된 것입니다.이러한 세부 정보에는 사용 중인 데이터베이스 또는 실행 중인 애플리케이션 서버의 버전이 포함될 수 있습니다.
민감한 정보 공개는 다른 방식으로 발생할 수 있습니다.양식에 민감한 정보가 들어 있는 숨겨진 필드가 있나요?공격자는 단순히 페이지의 소스를 보고 값을 볼 수 있습니다.
간단히 말해서, 정보 노출은 사용자가 반드시 알아야 하는 정보를 너무 쉽게 액세스할 수 있게 되면 발생합니다.
정보 노출이 위험한 이유 이해
공격자는 애플리케이션에서 노출한 정보로 무엇을 할 수 있습니까?민감한 정보인 경우 공격자는 ID나 사용자 자격 증명을 도용할 수 있습니다.이로 인해 금전적 손해, 개인 정보 침해 및 규제 벌금이 부과될 수 있습니다.
공격자가 오류 메시지를 사용하여 응용 프로그램에 대한 정보를 얻으면 해당 정보가 향후 공격에 사용될 수 있습니다.사실, OWASP 테스트 가이드 에 대한 전체 섹션이 있습니다. 정보 수집.
OWASP 테스트 가이드는 검색 엔진을 사용하여 의도하지 않은 웹 사이트에 대한 정보를 찾을 것을 권장합니다.예를 들어 관리 페이지가 검색 엔진에 노출되어 있나요?robots.txt 파일을 사용하여 검색 엔진에 특정 페이지의 색인을 생성하지 않도록 지시할 수 있습니다.이와 동시에 robots.txt 파일에서도 정보가 유출될 수 있습니다.민감한 URL은 때때로 robots.txt 파일에 있을 수 있습니다.공격자는 파일을 끌어내려 사이트의 일부 디렉터리 구조를 파악하기 시작합니다.
Google은 웹사이트를 심층적으로 검사할 수 있는 고급 검색 엔진 옵션을 제공합니다.예를 들어 'site: <domain>'구문을 사용하여 특정 사이트를 검색할 수 있습니다.이전 인덱싱 작업에서 삭제되었지만 여전히 캐시에 있는 캐시된 페이지를 볼 수 있습니다.Bing 및 DuckDuckGo와 같은 다른 검색 엔진을 사용하면 결과가 달라질 수 있으므로 웹 애플리케이션에 대해 어떤 정보가 노출되었는지 각 검색 엔진에서 테스트해</domain> 보세요.
HTTP 헤더, 웹 사이트 배너, 심지어 HTML과 JavaScript 코드 내의 댓글에도 공격자가 볼 수 없는 정보가 있을 수 있습니다.HTTP 헤더는 애플리케이션 서버와 버전 번호를 나타낼 수 있습니다.공격자는 이 정보를 사용하여 특정 버전에 사용할 익스플로잇을 찾을 수 있습니다.공격자가 사용자 정보를 찾을 수 있는 다양한 장소와 정보를 적절하게 숨기는 방법을 모두 이해해야 합니다.
정보 노출 방지
정보 공개는 종종 웹 애플리케이션 구성에서 문제가 됩니다.대부분의 애플리케이션 서버는 기본적으로 오류 메시지에 스택 트레이스를 반환합니다.문제 해결을 위해 오류를 기록하는 동안 프로덕션 애플리케이션이 일반 오류 페이지로 리디렉션되도록 하려면 이 설정을 변경해야 합니다.자세한 오류 메시지가 사용자의 브라우저에 반환되어서는 안 됩니다.
민감한 정보가 포함된 애플리케이션에 필요한 파일이 있는 경우 애플리케이션 자체만 해당 파일을 읽을 수 있도록 적절한 액세스 제어를 해야 합니다.서버에서 디렉터리 목록을 비활성화하고 이러한 파일을 웹 루트 디렉터리 외부로 이동합니다.이렇게 하면 공격자가 브라우저를 사용하여 파일을 탐색하는 것을 방지할 수 있습니다. 디렉터리 트래버설 공격.
제대로 구성되지 않은 경우 로그를 사용하여 정보를 수집할 수 있습니다.오류가 발생하면 암호, 세션 토큰 또는 개인 식별 정보 (PII) 와 같은 민감한 정보를 기록하지 마십시오.공격자가 로그 파일에 액세스할 수 있다면 훔쳐야 할 중요한 정보를 많이 찾을 수 있을 것입니다.일반적으로 계정 식별자, 자세한 오류 메시지, 오류가 발생한 방법 또는 수행 중인 작업 등을 필요 이상으로 기록하지 마십시오.로그 파일은 비밀이 아니며 민감한 정보를 그 안에 넣고 싶지 않을 거라고 가정해 봅시다.
웹 앱을 싱크하지 마세요
친구와 대화하다가 정보가 유출되어 제2차 세계대전에서 전함을 잃게 된 것이 정말 가능했을까요?아닐 수도 있습니다.그런데 왜 위험을 감수해야 할까요?이것이 바로 “입술이 느슨하면 배를 가라앉힌다”는 말의 교훈입니다.
마찬가지로 웹 애플리케이션의 내부 동작을 외부에 노출할 이유도 없습니다.신용카드 번호나 암호 전체를 볼 이유는 없습니다.로그 파일에 PII 데이터를 포함할 이유가 없습니다.그러니 그러지 마세요. 학습 리소스를 확인해 보세요 정보 노출에 대해 자세히 알아보십시오.
애플리케이션의 내부 작업을 원래 위치에 보관하세요.웹 앱을 침몰시키지 마세요.
지금 당장 정보 노출을 막을 수 있다고 생각하십니까?한 걸음 더 나아가세요, 전사: [여기서 시작]

Haga clic en el siguiente enlace y descargue el PDF de este recurso.
Secure Code Warrior está aquí para ayudar a las organizaciones a proteger el código durante todo el ciclo de vida del desarrollo de software y a crear una cultura que priorice la ciberseguridad. Ya seas administrador de AppSec, desarrollador, CISO o cualquier persona relacionada con la seguridad, podemos ayudarte a reducir los riesgos asociados al código inseguro en tu organización.
Ver informeReserva de demostraciónJaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.
“입술이 느슨하면 배가 가라앉습니다“는 제2차 세계대전 중에 미국에서 유행한 문구입니다.영국에서는 “부주의한 대화는 생명을 앗아간다”는 말을 들었을 겁니다.이 속담의 요지는 민감한 정보에 대해 부주의하게 말하는 것은 스파이에게 들려 심각한 결과를 초래할 수 있다는 것이었습니다.
웹 애플리케이션을 구축할 때도 동일한 원칙이 적용됩니다.웹 앱이 너무 많은 정보를 노출하면 공격자가 더 쉽게 침입할 수 있습니다.
이 글에서는 정보 노출이 무엇인지, 왜 위험한지, 어떻게 방지할 수 있는지 알아보겠습니다.
정보 노출에 대한 이해
정보 노출은 내부 정보를 보지 말아야 하는 사람들에게 노출하는 웹 애플리케이션을 말합니다.또한 로그 파일이나 사용자 인터페이스를 통해 민감한 고객 정보를 노출하는 것을 의미할 수도 있습니다.어느 쪽이든 공격자는 발견한 정보를 이용해 시스템이나 사용자를 공격할 수 있습니다.
공격자의 첫 단계는 애플리케이션 내에서 오류를 생성하는 것인 경우가 많습니다.오류 처리 및 웹 애플리케이션 구성이 제대로 이루어지지 않으면 오류 메시지와 함께 정보가 노출될 수 있습니다.공격자가 애플리케이션 내에서 오류를 만들면 어떻게 되나요?스택 트레이스와 같은 기술적 세부 정보가 포함된 기술적 오류 메시지가 나타나면 너무 많은 정보가 유출된 것입니다.이러한 세부 정보에는 사용 중인 데이터베이스 또는 실행 중인 애플리케이션 서버의 버전이 포함될 수 있습니다.
민감한 정보 공개는 다른 방식으로 발생할 수 있습니다.양식에 민감한 정보가 들어 있는 숨겨진 필드가 있나요?공격자는 단순히 페이지의 소스를 보고 값을 볼 수 있습니다.
간단히 말해서, 정보 노출은 사용자가 반드시 알아야 하는 정보를 너무 쉽게 액세스할 수 있게 되면 발생합니다.
정보 노출이 위험한 이유 이해
공격자는 애플리케이션에서 노출한 정보로 무엇을 할 수 있습니까?민감한 정보인 경우 공격자는 ID나 사용자 자격 증명을 도용할 수 있습니다.이로 인해 금전적 손해, 개인 정보 침해 및 규제 벌금이 부과될 수 있습니다.
공격자가 오류 메시지를 사용하여 응용 프로그램에 대한 정보를 얻으면 해당 정보가 향후 공격에 사용될 수 있습니다.사실, OWASP 테스트 가이드 에 대한 전체 섹션이 있습니다. 정보 수집.
OWASP 테스트 가이드는 검색 엔진을 사용하여 의도하지 않은 웹 사이트에 대한 정보를 찾을 것을 권장합니다.예를 들어 관리 페이지가 검색 엔진에 노출되어 있나요?robots.txt 파일을 사용하여 검색 엔진에 특정 페이지의 색인을 생성하지 않도록 지시할 수 있습니다.이와 동시에 robots.txt 파일에서도 정보가 유출될 수 있습니다.민감한 URL은 때때로 robots.txt 파일에 있을 수 있습니다.공격자는 파일을 끌어내려 사이트의 일부 디렉터리 구조를 파악하기 시작합니다.
Google은 웹사이트를 심층적으로 검사할 수 있는 고급 검색 엔진 옵션을 제공합니다.예를 들어 'site: <domain>'구문을 사용하여 특정 사이트를 검색할 수 있습니다.이전 인덱싱 작업에서 삭제되었지만 여전히 캐시에 있는 캐시된 페이지를 볼 수 있습니다.Bing 및 DuckDuckGo와 같은 다른 검색 엔진을 사용하면 결과가 달라질 수 있으므로 웹 애플리케이션에 대해 어떤 정보가 노출되었는지 각 검색 엔진에서 테스트해</domain> 보세요.
HTTP 헤더, 웹 사이트 배너, 심지어 HTML과 JavaScript 코드 내의 댓글에도 공격자가 볼 수 없는 정보가 있을 수 있습니다.HTTP 헤더는 애플리케이션 서버와 버전 번호를 나타낼 수 있습니다.공격자는 이 정보를 사용하여 특정 버전에 사용할 익스플로잇을 찾을 수 있습니다.공격자가 사용자 정보를 찾을 수 있는 다양한 장소와 정보를 적절하게 숨기는 방법을 모두 이해해야 합니다.
정보 노출 방지
정보 공개는 종종 웹 애플리케이션 구성에서 문제가 됩니다.대부분의 애플리케이션 서버는 기본적으로 오류 메시지에 스택 트레이스를 반환합니다.문제 해결을 위해 오류를 기록하는 동안 프로덕션 애플리케이션이 일반 오류 페이지로 리디렉션되도록 하려면 이 설정을 변경해야 합니다.자세한 오류 메시지가 사용자의 브라우저에 반환되어서는 안 됩니다.
민감한 정보가 포함된 애플리케이션에 필요한 파일이 있는 경우 애플리케이션 자체만 해당 파일을 읽을 수 있도록 적절한 액세스 제어를 해야 합니다.서버에서 디렉터리 목록을 비활성화하고 이러한 파일을 웹 루트 디렉터리 외부로 이동합니다.이렇게 하면 공격자가 브라우저를 사용하여 파일을 탐색하는 것을 방지할 수 있습니다. 디렉터리 트래버설 공격.
제대로 구성되지 않은 경우 로그를 사용하여 정보를 수집할 수 있습니다.오류가 발생하면 암호, 세션 토큰 또는 개인 식별 정보 (PII) 와 같은 민감한 정보를 기록하지 마십시오.공격자가 로그 파일에 액세스할 수 있다면 훔쳐야 할 중요한 정보를 많이 찾을 수 있을 것입니다.일반적으로 계정 식별자, 자세한 오류 메시지, 오류가 발생한 방법 또는 수행 중인 작업 등을 필요 이상으로 기록하지 마십시오.로그 파일은 비밀이 아니며 민감한 정보를 그 안에 넣고 싶지 않을 거라고 가정해 봅시다.
웹 앱을 싱크하지 마세요
친구와 대화하다가 정보가 유출되어 제2차 세계대전에서 전함을 잃게 된 것이 정말 가능했을까요?아닐 수도 있습니다.그런데 왜 위험을 감수해야 할까요?이것이 바로 “입술이 느슨하면 배를 가라앉힌다”는 말의 교훈입니다.
마찬가지로 웹 애플리케이션의 내부 동작을 외부에 노출할 이유도 없습니다.신용카드 번호나 암호 전체를 볼 이유는 없습니다.로그 파일에 PII 데이터를 포함할 이유가 없습니다.그러니 그러지 마세요. 학습 리소스를 확인해 보세요 정보 노출에 대해 자세히 알아보십시오.
애플리케이션의 내부 작업을 원래 위치에 보관하세요.웹 앱을 침몰시키지 마세요.
지금 당장 정보 노출을 막을 수 있다고 생각하십니까?한 걸음 더 나아가세요, 전사: [여기서 시작]
Índice
Jaap Karan Singh es un evangelista de la codificación segura, jefe Singh y cofundador de Secure Code Warrior.

Secure Code Warrior está aquí para ayudar a las organizaciones a proteger el código durante todo el ciclo de vida del desarrollo de software y a crear una cultura que priorice la ciberseguridad. Ya seas administrador de AppSec, desarrollador, CISO o cualquier persona relacionada con la seguridad, podemos ayudarte a reducir los riesgos asociados al código inseguro en tu organización.
Reserva de demostraciónDescargarRecursos útiles para empezar
Temas y contenidos de la formación sobre códigos de seguridad
El mejor contenido del sector evoluciona constantemente para adaptarse al entorno de desarrollo de software en constante cambio, teniendo en cuenta el papel de los clientes. Se ofrecen temas que abarcan desde la inteligencia artificial hasta la inyección de XQuery, para diversas funciones, desde arquitectos e ingenieros hasta gestores de productos y control de calidad. Eche un vistazo al contenido que ofrece el catálogo por temas y funciones.
La Cámara de Comercio establece el estándar para la seguridad impulsada por desarrolladores a gran escala
Kamer van Koophandel comparte cómo ha integrado la codificación segura en el desarrollo diario mediante certificaciones basadas en roles, evaluaciones comparativas de Trust Score y una cultura de responsabilidad compartida en materia de seguridad.
Modelado de amenazas con IA: convertir a cada desarrollador en un modelador de amenazas
Saldrá mejor equipado para ayudar a los desarrolladores a combinar ideas y técnicas de modelado de amenazas con las herramientas de IA que ya utilizan para reforzar la seguridad, mejorar la colaboración y crear software más resistente desde el principio.
Recursos útiles para empezar
Cybermon ha vuelto: la misión de IA para derrotar al jefe ahora está disponible bajo demanda.
Cybermon 2025 Bit the Boss ya está disponible en SCW durante todo el año. Implemente tareas de seguridad avanzadas de IA/LLM para impulsar el desarrollo de IA de seguridad a gran escala.
Explicación de la Ley de Resiliencia Cibernética: El significado del diseño de seguridad en el desarrollo de software
Descubra los requisitos y el ámbito de aplicación de la Ley de Resiliencia Cibernética (CRA) de la UE, y cómo el equipo de ingeniería puede prepararse de forma segura mediante el diseño, las prácticas, la prevención de vulnerabilidades y la creación de un entorno de desarrollo.
Factor de éxito 1: Criterios de éxito definidos y medibles
El habilitador 1 ofrece una serie de 10 partes sobre los habilitadores del éxito, mostrando cómo la codificación segura puede mejorar los resultados empresariales, como la reducción de riesgos y costes y la aceleración de la madurez de los programas a largo plazo.




%20(1).avif)
.avif)
