꾸크리 개발 블로그
  • 홈
  • 태그
  • 방명록
  • 메뉴 닫기
  • 글작성
  • 방명록
  • 환경설정
    • 분류 전체보기 (58)
      • 배포 (5)
      • TypeScript (15)
      • JavaScript (1)
      • Network (2)
      • 웹 보안 (2)
      • DB (1)
      • 기타 (6)
      • NestJS (14)
      • TypeOrm (10)
      • NextJS (2)
  • 홈
  • 태그
  • 방명록
웹 보안

웹 보안 방어 정리

웹 보안 방어 기법 정리1. HTTPS웹 보안의 첫 단계는 HTTPS를 적용하여 데이터 전송 중 도청 및 변조를 방지하는 것입니다. 하지만 HTTPS만으로는 방어할 수 없는 애플리케이션 레벨의 공격이 있기 때문에 추가적인 보안 대책이 필요합니다.2. 애플리케이션 레벨 공격 방어SQL Injection 방어SQL Injection은 악의적인 SQL 쿼리를 입력하여 데이터베이스에 접근하거나 데이터를 탈취하는 공격입니다. 방어 방법으로는 다음과 같은 기법이 있습니다:Prepared Statements: SQL 쿼리에서 사용자 입력을 매개변수로 받는 준비된 문장(Prepared Statements)을 사용해 직접적인 쿼리 삽입을 방지합니다.예시 코드: 안전한 Prepared Statements 사용ORM/ODM..

2024. 10. 26. 14:58
TypeScript

TypeScript 정리3 (함수와 타입)

함수의 타입 정의함수 타입 정의: 함수의 매개변수와 반환값에 타입을 지정하여 함수의 동작을 명확히 설명할 수 있습니다.function add(a: number, b: number): number { return a + b; }화살표 함수: 화살표 함수도 매개변수와 반환값에 타입을 지정할 수 있습니다.const add = (a: number, b: number): number => a + b;선택적 매개변수: 매개변수 뒤에 **?**를 붙이면 선택적으로 값을 받을 수 있으며, 해당 매개변수는 **undefined**와 유니온 타입으로 추론됩니다.function introduce(name = "이정환", tall?: number) { console.log(`name: ${name}`); if (typeof ..

2024. 10. 25. 07:39
TypeScript

TypeScript 정리2 (이해하기)

1. object 타입 정의의 문제점자바스크립트에서 객체는 자유롭게 다양한 프로퍼티를 가질 수 있고, 타입스크립트에서도 object 타입을 사용할 수 있습니다. 하지만 object 타입은 객체임을 표현하는 것 외에 객체의 프로퍼티에 대한 정보를 제공하지 않는 타입입니다.예시:let user: object = { id: 1, name: "김수현",};// user.id; // 오류 발생: 'object' 타입에는 'id' 프로퍼티가 없습니다이 경우 user 변수를 object 타입으로 정의했지만, **id**와 같은 특정 프로퍼티에 접근하려고 하면 오류가 발생합니다. 이는 object 타입이 객체의 구조에 대한 정보가 없기 때문입니다.2. 객체 리터럴 타입으로 타입 정의하기객체의 구조를 명확하게 타입..

2024. 10. 25. 07:38
TypeScript

TypeScript 정리1

Node개발을 하면서 JavaScript로만 개발을 진행하다보면null, undefined이 변수에 저장되어 있다거나파라미터에 마우스를 가져다대면 any라고 되어있었는데 왜 이렇게 설정되어 있는지 몰랐습니다.null은 무엇이고 언제 사용되는거고 undefined와 차이점은 무엇인지 또 타입스크립트를 배우면서타입 계층도에 unknown라인에 있는 타입들은 무엇인지 궁금하여 다시 정리하고 공부해보았고정리해놓은 글입니다.1. unknownunknown 타입은 TypeScript에서 사용할 수 있는 가장 제한적인 "알 수 없는" 타입입니다.정의: 어떤 값이 unknown 타입으로 정의되면, 이 값의 정확한 타입을 알 수 없다는 것을 의미합니다특징:**any**와 비슷하지만, 안전성이 높습니다.unknown 타입..

2024. 10. 25. 07:35
TypeScript

TypeScript 기본

강의(winterlood 이정환님의 인프런강의 ‘한 입 크기로 잘라먹는 타입스크립트’) 를 보고 정리한 블로그입니다.타입스크립트의 원시 타입 (Primitive Types)타입스크립트(TypeScript)에서 "원시 타입"은 동시에 하나의 값만 저장할 수 있는 기본적인 타입들을 말합니다. 예를 들어, 배열이나 객체 같은 비 원시 타입들은 여러 개의 값을 동시에 저장할 수 있는 반면, 원시 타입은 한 번에 하나의 값만을 저장합니다. 원시 타입은 프로그래밍 언어의 가장 기본적인 데이터 구조로, 자바스크립트와 타입스크립트 모두에서 중요한 역할을 합니다.타입스크립트의 원시 타입에는 다음과 같은 것들이 있습니다number (숫자)string (문자열)boolean (불리언)nullundefined리터럴 타입이제 ..

2024. 10. 25. 07:33
TypeScript

TypeScript 개론

강의(winterlood 이정환님의 인프런강의 ‘한 입 크기로 잘라먹는 타입스크립트’) 를 보고 정리한 블로그입니다.타입스크립트(TypeScript)는 자바스크립트(JavaScript)에 정적 타입 체계를 추가한 프로그래밍 언어입니다. 기본적으로 자바스크립트는 동적 타입 언어로, 변수에 어떤 타입이든 할당할 수 있고, 타입에 대해 엄격한 검사를 하지 않습니다. 하지만 타입스크립트는 변수나 함수의 매개변수, 반환값 등에 타입을 미리 지정해 주므로, 코드 작성 시점에서 타입 관련 오류를 방지할 수 있습니다.1. 타입 안정성(Type Safety)타입 오류를 미리 방지: 자바스크립트는 런타임에 타입 오류가 발생할 수 있는데, 타입스크립트는 코드 작성 시점에서 타입 오류를 발견해 예방할 수 있습니다. 예를 들어..

2024. 10. 25. 07:32
배포

AWS EC2인스턴스로 배포하다 해킹당한썰

배포하기2까지 하고나면 내 인스턴스로 브라우저를 켜서 서버 인스턴스 공인IP로 접근하면 사이트에 잘 들어가집니다. 근데 문제가 하나 생겼는데 해킹을 당했었습니다.... 내 aws 몽고디비가 다 날라갔다오늘 혼술을 하고 잠깐쉬고 팀원의 슬랙메세지를 본다음 내 인스턴스 아이피에 올린 프로젝트를 테스트해보려고 했는데 뭔가 이상하다 로그인이 안된다???????????????데이터가 다 날라가있다…? 싹~ 아주 싹~~~~ 날라갔다1byte도 안남기고 싹 날려버렸다aws에 올려놓은 내 몽고디비에 접속한다음 mongodb로그를 까봤고누가 delete했는지 찾아봤다sudo grep “delete” mongod.log ⇒ 아무것도 안나온다sudo grep “drop” mongod.log ⇒ 나왔다 찾았다 요놈conn13..

2024. 10. 25. 07:28
Network

OSI 7계층 정리

OSI(Open Systems Interconnection) 모델은 네트워크 통신을 7개의 계층으로 나누어 각 계층이 특정한 기능을 담당하도록 정의한 모델입니다.각 계층은 특정한 네트워크 기능을 수행하며, 이 계층 구조를 통해 복잡한 네트워크 통신을 체계적으로 관리할 수 있습니다. 아래는 OSI 7계층의 간단한 정의입니다. 1계층 Physical Layer 데이터를 보낼때 0과 1로 보낼수있는데 0과 1을 인코딩하여 아날로그 신호로 바꾼다음랜선을 이용해서 이동한다음 다시 디코딩하여 0과 1을 받을수있음 1계층은 하드웨어적으로 구현되는것 1계층이 구현되는곳은 PHY칩이라는 건데데스크탑의 메인보드나 서버에 장착되는 네트워크 인터페이스 카드에도 들어가있고 라우터나 스위치에도 들어가있습니다. 모뎀에도 들어있구요..

2024. 10. 24. 00:04
배포

AWS 인스턴스로 배포해보기2

ssh까지 접속을 성공하고인스턴스에 NODE 설치접속한다음 내 인스턴스에 NODE를 설치해야하는데원래 내 윈도우에 NODE버전이 20.x버전이라 20버전을 시도했지만 아마존2 리눅스에는 지원을 하지 않아 18.x버전으로 시도하였지만 18버전도 지원하지 않는다고 합니다.그래서 기존 인스턴스를 삭제하고 다시 아마존1리눅스를 설치하고 다시 진행18.x버전을 설치할수 있었습니다. 일단 아마존 리눅스 인스턴스를 생성한다음sudo yum update -y로 운영체제를 업데이트 해준다음curl -sL https://rpm.nodesource.com/setup_18.x | sudo bash - sudo yum install -y nodejs이렇게해서 node를 설치한다음 node -v를 쳐서 제대로 깔렸다면 설치된 버..

2024. 10. 24. 00:02
배포

AWS EC2 인스턴스로 배포해보기1

AWS 인스턴스를 생성하여 거기에 배포하려고 합니다. AWS 운영체제는 아마존 리눅스1로 선택했습니다. 아무래도 AWS에서 아마존 리눅스의 호환이 제일 좋습니다.아마존2 리눅스도 있는데 당시 node버전을 16버전까지밖에 지원을 안해줘서 18버전을 지원해준 아마존1 리눅스로 선택하였습니다.제 프로젝트는서버는 익스프레스프론트는 리액트로 진행을 했습니다.디비는 다른 인스턴스를 만들어서 아마존 리눅스2로 선택하여서 구축했습니다. 지금 만드는 인스턴스는 아마존 리눅스1에 도커를 사용하지 않고 배포하는 무식한 방법을 선택해서하나하나 해보면서 느낀점들을 공유하려고 블로그를 작성하려고 합니다.   이렇게 선택한다음  무료로 사용할수 있는 인스턴스를 선택하고 키페어를 선택합니다.저는 키페어가 없으므로 새 키 페어생성을..

2024. 10. 23. 23:44
  • «
  • 1
  • 2
  • 3
  • 4
  • 5
  • »

공지사항

전체 카테고리

  • 분류 전체보기 (58)
    • 배포 (5)
    • TypeScript (15)
    • JavaScript (1)
    • Network (2)
    • 웹 보안 (2)
    • DB (1)
    • 기타 (6)
    • NestJS (14)
    • TypeOrm (10)
    • NextJS (2)
애드센스 광고 영역
  • 최근 글
  • 최근 댓글

최근 글

최근댓글

태그

  • #타입스크립트
  • #무습다
  • #pipe
  • #options
  • #핫리로드
  • #데코레이터
  • #dacorator
  • #Access Token
  • #티스토리챌린지
  • #TypeORM
  • #오블완
  • #class-transformer
  • #page
  • #Postman
  • #DTO
  • #inheritance
  • #Embedding
  • #refresh token
  • #typescript
  • #guard
  • #nestjs
  • #Token
  • #class validator
  • #pagination
  • #async
  • #node
  • #Interceptor
  • #class-validator
  • #페이징처리
  • #웹 보안
MORE

전체 방문자

오늘
어제
전체

블로그 인기글

Powered by Privatenote Copyright © 꾸크리 개발 블로그 All rights reserved. TistoryWhaleSkin3.4

티스토리툴바