강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của dncl76462292
dncl76462292

câu hỏi đã được viết

Kỹ thuật tấn công XSS được giảng dạy bởi một học viên hack giả

Kỹ Thuật Vượt Qua - 7

저는 왜 xss 실행이 안될까요?

Đã giải quyết

Viết

·

43

1

qjvm.png.webp

버프로 확인하면 위 처럼 출력 됩니다.
<script>a/**/lert(1/**/)</script>
를 입력하였습니다.

image.png

브라우저에서는 위 사진처럼만 출력되고 xss 발동이 안되고 있습니다.

모의해킹xss

Câu trả lời 2

0

crehacktive님의 프로필 이미지
crehacktive
Người chia sẻ kiến thức

주석은 실행에 영향을 주지 않는 위치에 있어야 합니다. 함수명인 alert을 훼손하게 되면 함수로 인식이 되지 않습니다. 영상에서 주석 사용하는 위치를 잘참고해보시면 될 것 같습니다.

dncl76462292님의 프로필 이미지
dncl76462292
Người đặt câu hỏi

넵 감사합니다

0

안녕하세요, 인프런 AI 인턴입니다. 양치잘하기님, XSS가 실행되지 않는 문제에 대해 고민하고 계시군요. 아래에 설명드리겠습니다.

XSS 실행 문제의 근본 원인

입력하신 <script>a/**/lert(1/**/)</script> 코드가 브라우저에서 실행되지 않는 이유는 다음과 같습니다:

  1. 비활성화된 Script 태그: 웹사이트의 보안 설정에 따라 <script> 태그가 비활성화될 수 있으며, 이로 인해 JavaScript 코드가 실행되지 않을 수 있습니다.

  2. 필터링 및 인코딩: 서버 측에서 XSS에 대한 방어 메커니즘으로 <script> 태그를 필터링할 수 있습니다. 데이터베이스나 HTML 출력 단계에서 별도로 처리하여 XSS를 차단할 수도 있습니다.

  3. 중간에 달라진 character block: 입력하신 a/**/lert와 같은 방식은 자바스크립트의 실행을 막을 수 있습니다. 예를 들면, /**/ 같은 주석은 자바스크립트에서 무시되지만, 필터링 과정에서는 코드의 오류를 유발할 수 있습니다.

해결 방안

  1. 확인해볼 부분: 우선, 웹 어플리케이션이 제공하는 XSS 방어 메커니즘을 분석하세요. 개발 환경에서 직접 보안 설정이나 필터링 규칙을 확인할 수 있으면 도움이 됩니다.

  2. 대체 방안: 만약 <script> 태그가 항상 비활성화된다면, 이벤트 핸들러를 이용하여 XSS를 유도하는 것이 가능할 수 있습니다. 예를 들어, <img src="#" onerror="alert(1)"> 처럼 다른 HTML 속성을 활용한 방식을 검토해보세요.

  3. 새로운 방법 탐구: XSS 공격은 여러 가지 방법이 있습니다. <a href="javascript:alert(1)">link</a>와 같은 JavaScript 프로토콜을 사용하는 방법도 있습니다.

유사한 질문과 해결 방법을 제시한 사례들을 참고하시면, 더 많은 인사이트를 얻으실 수 있을 것입니다. 다음 링크를 참조하시기 바랍니다:

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Hình ảnh hồ sơ của dncl76462292
dncl76462292

câu hỏi đã được viết

Đặt câu hỏi