이메일 템플릿에 HTML 주입
회사를 대신하여 이메일을 보내시겠습니까? 여러 대기업에서 쉽게 포상금을 받을 수 있는 이 취약점을 발견한 방법은 다음과 같습니다.
안녕하세요 사냥꾼 입니다. 여기서 목표는 회사를 대신하여 이메일 주소 에서 콘텐츠 및 HTML 템플릿 을 변경/사용자 정의할 수 있는 기능을 사용 하여 이메일을 보낼 수 있도록 하는 것 입니다.
이러한 취약점의 영향은 무엇입니까?
이 취약점의 영향은 상당할 수 있습니다. 공격자는 사용자를 사기성 사이트(피싱 등)로 리디렉션하거나 계정에서 바람직하지 않은 작업을 수행하도록 강요하기 위해 플랫폼에 대한 사용자의 신뢰를 이용합니다. 프로그램은 일반적으로 낮음과 보통 사이에서 이 취약점의 심각도를 고려합니다 .
어떻게 작동합니까?
HTML 주입은 애플리케이션이 사용자 입력을 수락한 다음 입력을 HTML에 포함시키는 취약점입니다. 공격자는 사용자 입력에서 HTML을 삽입하여 악성 코드가 응용 프로그램에서 생성된 전체 템플릿에 포함되도록 할 수 있습니다.
이는 사용자 입력이 제대로 정리되지 않았기 때문입니다. 수정하기는 매우 쉽지만 특히 이 공격 벡터는 버그 사냥꾼의 기쁨을 위해 매우 자주 레이더 아래로 이동합니다.
개발자를 위한 유명한 황금률: 절대 사용자 입력을 신뢰하지 마십시오.
다양한 공격 벡터 및 익스플로잇 식별
이 취약점을 식별하기 위해 가장 먼저 해야 할 일은 이메일을 보내는 애플리케이션에서 기능을 찾는 것입니다. 대부분의 애플리케이션에는 회사 팀에 요청을 보낼 수 있는 "문의하기" 섹션 또는 "도움말" 섹션이 있습니다. 이러한 기능은 가장 기본적이며 목록이 완전하지 않으며 응용 프로그램의 특성에 따라 메일을 보내는 다양한 기능을 찾을 수 있습니다.
이러한 기능이 발견되면 다음과 같은 몇 가지 기준 이 있는지 테스트하고 확인해야 합니다 .
회사의 기술 직원에게 요청(도움 요청)을 보낼 수 있는 양식을 예로 들어 보겠습니다.
[1] 양식 제출 시 이메일(양식에 명시된 이메일 주소 또는 요청을 보낸 계정에 연결된 이메일 주소)을 받나요?
그렇지 않은 경우 시간이 좀 걸릴 수 있으므로 확인하십시오. 그러면 더 이상 볼 필요가 없습니다. 템플릿에 코드를 삽입하기 전에 해당 템플릿이 여전히 존재해야 합니다.
[2] 양식을 제출할 때 이메일을 받으면 양식/쿼리에 이메일 주소를 지정할 수 있습니까?
취약점을 악용하려면 다른 사람을 대상으로 할 수 있어야 하므로 문제의 양식을 통해 내가 선택한 이메일을 지정할 수 있거나 양식을 제출하기 위해 연결되어 있어야 이메일이 자동으로 다음 주소로 전송됩니다. 이메일 주소는 연결된 계정에 바인딩됩니다.
이 경우 선호하는 프록시에서 요청을 가로채어 HTTP 요청(POST 원칙)에 이메일 주소가 없는지 확인하고 원하는 이메일 주소로 변경해 보십시오.
[3] 양식에 제공된 정보 중 일부가 수신된 이메일에 반영되었습니까?
그렇지 않은 경우 계정에 연결된 경우 사용자 이름, 성 또는 이름과 같은 일부 개인 정보가 이메일에 반영되어 있는지 확인하십시오.
이 경우 반영된 정보를 수정하고 거기에 페이로드를 입력해 보십시오. 문제의 정보가 응용 프로그램에서 해석되지 않더라도 이메일에서 해석될 수 있으며, 이를 2차 주입 이라고 하며 양식의 사용자 입력에서 직접 주입이 수행되지 않고 다른 곳에 기록된 정보에서 주입이 수행됩니다. , 예를 들어 계정에서.
그렇지 않으면 코드를 삽입하거나 필터를 우회할 수 없습니다.
[4] 마지막 단계는 해당 템플릿에 의해 해석될 HTML 코드를 삽입하는 것입니다.
앞서 언급한 바와 같이 이러한 종류의 취약점은 종종 눈에 띄지 않으며 일부 애플리케이션에는 프런트엔드 또는 백엔드 측 필터가 없으며 HTML 코드를 포함하는 간단한 페이로드로 충분합니다.
vul<strong>ne</strong>rable
,
특정 문자에 대한 필터를 우회하는 데 문제가 있습니까? 보세요 :https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/XSS%20Injection/README.md
처음 쓰는 글이었는데 읽어주셔서 감사합니다. 질문이 있으시면 언제든지 알려주세요.
내 트위터 계정:https://twitter.com/blank_cold

![연결된 목록이란 무엇입니까? [1 부]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































