코스 소개
사람이 웹페이지를 하나하나 직접 만드는것에 지침 ==> 통합적을 관리하는 것에 대한 필요성을 느낌
또한 웹사이트의 소유자만이 컨텐츠를 관리(수정,생상,제거)를 할 수 있었다.
+ 사용자에게 전송할 데이터를 생성 한다.
그래서 HTML 작성을 기계에게 맞기고 싶다는 생각을 하게 되었고 왼쪽과 같은 기술들이 생겨나게 되었다.
즉, 웹사이트가 자동으로 컨텐츠를 HTML로 만든다. !
URL
동기와 비동기
노드는 비동기 처리를 하는데 아주 유용한 도구가 있다.
call back 다른 함수에 전달되어 나중에 호출되는 함수
HTML - Form
post방식으로하면 쿼리스트링을
url에 노출 안시키고 접근 가능
JavaScipt - 객체
둘다 정보를 정리하는 수납 상자와 같다.
배열은 순서대로 정리를 하고 숫자를 식별자로 준다.
객체는 순서가 없는 정보를 저장하기에 좋고 이름으로 식별자를 줄 수 있다.
OOP(Object Oriented Programming) ==>데이터를 담는 그릇으로서의 객체
즉, 함수는 데이터로 쓸 수 있다 !
Module
배열, 객체, 함수와 같이 비슷한 것들끼리 뭉쳐놓은 끝판왕이 모듈이다.
이 모듈 밖에도 사용할 수 있게 !
보안
1. 오염된 정보가 들어올때
2.오염된 정보가 나갈때 ex)XSS
XSS (Cross-Site Scripting)는 웹 애플리케이션의 보안 취약점 중 하나로, 악의적인 사용자가 악성 스크립트를 삽입하여 다른 사용자의 웹 브라우저에서 실행되도록 하는 공격이다.
XSS 공격은 사용자가 입력한 데이터를 신뢰하지 않고 웹 페이지에 출력할 때 발생할 수 있다.
XSS 공격은 크로스 사이트 스크립팅이라는 용어에서 유래했습니다. 이 공격에서는 주로 HTML, JavaScript, CSS와 같은 클라이언트 측 스크립트 언어를 이용하여 악성 스크립트를 삽입합니다. 이 스크립트는 웹 페이지를 열람하는 다른 사용자의 브라우저에서 실행되어, 사용자의 세션을 탈취하거나 개인 정보를 유출하는 등의 악의적인 행동을 할 수 있습니다.
XSS 공격을 방지하기 위해서는 사용자로부터 입력 받은 데이터를 신뢰할 수 없다고 가정하고, 이를 안전하게 처리해야 합니다. 주요한 방어 방법은 다음과 같습니다:
- 입력 검증(Validation): 서버 측에서 사용자 입력을 검증하여 악성 스크립트를 필터링하거나 제거합니다.
- 출력 이스케이프(Output Escaping): 사용자 입력을 웹 페이지에 출력할 때, 특수 문자를 이스케이프하여 브라우저에서 스크립트로 해석되지 않도록 합니다.
- 콘텐츠 타입 설정(Content-Type): HTTP 응답 헤더에서 올바른 콘텐츠 타입을 설정하여 브라우저가 악성 스크립트를 실행하지 않도록 합니다.
- 쿠키 보호(Cookie Security): 보안 플래그를 설정하여 쿠키를 안전하게 전송하고, 쿠키에 중요한 정보를 저장하지 않도록 합니다.
XSS 공격은 웹 애플리케이션 보안을 위해 신경써야 할 중요한 취약점 중 하나입니다. 따라서 웹 개발자들은 입력 검증과 출력 이스케이프 등의 보안 조치를 적용하여 XSS 공격으로부터 애플리케이션을 보호해야 합니다.
'모카 스터디 > Node' 카테고리의 다른 글
리액트, 노드 쇼핑몰 -상품 디테일 페이지- [John Ahn] (0) | 2023.07.31 |
---|---|
리액트, 노드 쇼핑몰 -상품 생성, 메인 페이지- [John Ahn] (0) | 2023.07.31 |
리액트, 노드 쇼핑몰 -로그인 기능- [John Ahn] (0) | 2023.07.31 |
리액트, 노드 쇼핑몰 -백엔드 기본 구조 생성하기- [John Ahn] (0) | 2023.07.31 |
리액트, 노드 쇼핑몰 -프론트엔드 기본 구조 생성하기- [John Ahn] (0) | 2023.07.31 |