본문 바로가기

node js4

[VUE JS] source map 파일을 통한 Frontend 소스 코드 획득 일반적으로 vue.js 애플리케이션을 빌드하면, 코드가 압축되어 사용자에게 제공됩니다. 이때 원래 코드의 흐름과 파일 구조가 왜곡될 수 있어, 브라우저에서 발생한 오류를 추적하기가 어려울 수 있습니다. 이러한 상황에서 디버깅을 쉽게 하기 위해 source map 파일을 제공하고 있는데, 해당 파일을 이용하여 압축된 코드를 원래의 코드로 디코딩할 수 있습니다. 그런데 만약, 실제 운영 환경에서 source map 파일이 존재할 경우 Frontend의 소스 코드를 획득할 수 있는 등의 취약점이 발생할 수 있습니다. Source Map 파일 찾기 개발자 도구 > "SourceMappingURL" 검색 > app.*.js 파일 찾기 app.*.js 경로에 .map을 붙여서 접속 시도 (app.*.js.map) .. 2023. 2. 21.
[Node.js] MiddleWare 작동 과정 Middleware란 Request와 Response의 중간에 위치하며 여러 가지 행위(Request 및 Response 조작, Request Drop)를 할 수 있습니다. Node.js에서는 여러 가지 방법이 있을 수 있지만, app.use를 이용한 기본적인 방법에 대하여 포스팅 하도록 하겠습니다. 예제 환경 구성하기 1. 저는 NestJS(Node.js 기반)를 이용하여 예제 환경을 구성하였는데요. 아래의 명령어를 통하여 설치 가능합니다. $ npm i -g @nestjs/cli $ nest new project-name 2. 소스 코드 수정 후 아래의 명령어를 이용하여 애플리케이션을 실행할 수 있습니다. $ npm run start Middleware (미들웨어) Node.js에서 Middlewar.. 2022. 12. 6.
TypeScript 시작하기 - 환경 구성 지난 포스팅에서 TypeScript에 대한 간략한 설명을 드렸는데요. 해당 포스팅이 궁금하신 분들은 아래의 링크를 참고해주세요. TypeScript에 대하여 알아보자 TypeScript가 필요해진 이유 초기 javascript의 경우 Web 환경이 이렇게 커질 것이라고 생각을 하지 못했기 때문에 짧은 형태의 간단한 코드들로 이뤄질 것이라고 생각하여 단순한 형태의 간단한 Scripti hacksms.tistory.com TypeScript 환경 구성하기 먼저 더 편하고 쉽게 코드를 입력하기 위해 Visaul Sutdio Code를 설치합니다. Visual Studio Code - Code Editing. Redefined Visual Studio Code is a code editor redefined a.. 2022. 10. 3.
Node js Prototype Pollution 개요Node JS Prototype Pollution은 Prototype의 특성을 이용하여 다른 객체들의 값을 오염시키는 공격 기법입니다. 객체의 프로토타입은 객체.__proto__를 통하여 참조할 수 있으며, 객체의 프로타입이 변경되면 해당 객체와 같은 프로토타입을 가진 모든 객체들에 변경사항이 적용되게 됩니다. 또한, 객체의 프로토타입은 Object.prototype과 동일하기 때문에 프로토타입의 변조를 통하여 일반적인 객체들의 속성을 제어할 수 있게됩니다. 아래의 예제를 통해 obj 객체의 프로토타입에 polluted 속성을 1로 지정한 결과, obj와 같은 프로토타입을 갖고 있는 obj2에도 polluted 속성이 1로 설정된 것을 확인할 수 있습니다.const obj = {};console.lo.. 2020. 9. 22.