[ Web ] XSS에 대해 자세히 공부해보자 / XSS CheetSheet 포스팅 썸네일 이미지

Web

[ Web ] XSS에 대해 자세히 공부해보자 / XSS CheetSheet

XSS란? - Attacker가 웹페이지에 스크립트 구문을 추가해 원하는 자바스크립트 코드나 원하는 코드를 실행 시키는 것 - XSS가 가능한 이유 -> 웹브라우저는 서버에서 웹페이지에 대한 정보를 받으면서 한줄 한줄 실행하기 때문에 응답헤더나 다른 본문 내용에 나 다른 스크립트를 실행하게 하는 구문이 있다면 유효한 코드인지 확인을 하지 않고 바로 실행해버린다. XSS는 2000년도에 마이크로소프트 다니시는 형님이 발견해냈다고 한다. 근데 왜 지금까지 막지 못하냐..? 내가 생각하기엔 웹 애플리케이션에서 웹서버 클라이언트의 상호작용은 엄청나게 많아지고 있고 웹 애플리케이션 구현에 있어서 클라이언트의 입력값을 웹 페이지에 넣어야 하는 것은 필수적이다. 직접 웹 애플리케이션을 조금 만들어 봐도 의도치 않은 ..

2022.04.07 게시됨

[ Web ] 웹린이 시점에서 prototype pollution알아보자 포스팅 썸네일 이미지

Web

[ Web ] 웹린이 시점에서 prototype pollution알아보자

근황 최근에 학교 프로젝트 덕분에 간단한 server client가 통신하는 웹 페이지를 만들어야 했습니다. 웹에 무지랭이었던 저는 하루 날 잡고 node js를 공부했습니다. 지금껏 포너블 문제만 풀었던 저는 현실을 깨닫고 이제야 웹을 시작하는 웹린이로 다시 태어났습니다. 웹 공부 계획은 이렇습니다. 1. 웹 개발 기초 공부 2. Wargame 및 대회 문제 풀이 3. CTF 4. Bugbounty 5. To be Real Hacker 공부 방법은 포너블때처럼 대부분 탑 다운 방식으로 할 것이며 난이도 있는 문제들 위주로 개념학습 후 라업을 해석해가면서 취약점이 Trigger될 상황을 기억해가는 방식으로 공부할 예정입니다. 잘못 된 내용이 있을 시에 도움 부탁드립니다. 프로토타입 오염을 알아봐야 하는데..

2022.03.28 게시됨

Web

CSS Injection이란

최근에 웹 공부 중에 NGA님꺼 블로그 보고 정리해봤습니다 https://ngaa.tistory.com/2?category=684400 CSS Injection이란 -> 사이에 아무런 검증이 없고 값을 추가할 수 있을 때 임의의 주소에 요청을 보낼 수 있는 것이다. 웹은 뭔가 사용자의 input벡터를 먼저 다 찾고 sanitizer가 없으면 웬만하면 취약점인듯 바이너리는 최소한 stack canary같은 gcc가 알아서 보호기법도 걸어주고 하는데 어지럽다. POC

2022.03.18 게시됨

[ web & v8] Web Assembly, wasm에 대해서 포스팅 썸네일 이미지

Web

[ web & v8] Web Assembly, wasm에 대해서

Web Assembly로 할 수 있는 것들 - 웹 브라우저에서 windows 95 돌리기 - Unity로 프로그래밍한 게임을 웹 브라우저로 실행 - 티스토리 이미지 편집 기능 또한 Web assembly를 이용함 JS대신 왜 굳이 Web Assembly를 이용하냐? - Java Script는 High Level Language이기 때문에 변수의 타입을 자동으로 지정해주고 느린 부분을 최적화 해주는 작업이 필요하다. 이 과정은 v8 엔진의 TurboFan에서 일어난다. TurboFan을 여러번 거쳐서 최적화된 바이트 코드는 Ignition에서 실행되게 된다. Web Assembly는 이런 과정과는 다르다. Web Assembly는 Liftoff에서 실행되는데 이것은 Assembly를 바로 실행시켜주기 때문..

2022.01.31 게시됨

[ web ] websocket통신 시에 checksum이 같은 이유. 포스팅 썸네일 이미지

Web

[ web ] websocket통신 시에 checksum이 같은 이유.

산학연 일을 하는 중에 websocket을 이용하고 패킷 정리하는 일이 있었다. 엑셀로 정리해나가면서 특이했던 점은 각 세션마다 Checksum이 같다는 것이다. 처음에는 내가 wireshark에서 옮기는 과정에서 실수한줄 알았다. 왜 세션이 다른데도 Checksum이 항상 같은지 이유를 알아보자. 먼저 웹통신을 하는 과정은 이렇다. 레퍼런스 코드 1. AWS 인스턴스에서 웹소켓 서버를 돌린다. 2. 웹에서 ws://를 통해서 웹 소켓 통신을 한다. 위의 과정을 wireshark로 잡아보면 요로코롬 나온다. 보면 checksum이 0xa7d3으로 패킷들의 체크섬이 모두 같다. 체크섬이 같은 이유를 생각해봤다. 먼저 체크섬이란 오류를 잡아내기 위해서 헤더의 값들을 모두 더하여 CRC연산을 하는 것이다. 즉..

2022.01.27 게시됨

[ Web ] 정규표현식 포스팅 썸네일 이미지

Web

[ Web ] 정규표현식

1. 원하는 문자 그대로 입력해주기( 대소문자, 공백을 구분함 ) ex) 찾고자 하는 값 "Hello" --> Hello wolrd 2. ^who는 who로 시작하는 텍스트를 선택, who$는 who로 끝나는 텍스트 선택 ex) 찾고자 하는 값 "who"--> ^who ---> who is who $who ---> who is who 3. .은 어떠한 임의의 문자를 지칭한다. ex) ..... ---> 5글자짜리 아무거나 ---> Hello wolrd 4. [ ] 안에 있는 것에 해당하는것이 있으면 선택, [ ] 하나는 문자 하나에 1대1 매칭됌. 두 개 이상문자를 선택하려면 [abc][abc] 이렇게 써야함. range를 적용하면 더 줄이기 가능 [abcde][abcde] --> [a-e][a-e], ..

2022.01.24 게시됨

[ Web ] 버프 스위트 (Burp suite) 설치 및 사용법 (최신 버전) 포스팅 썸네일 이미지

Web

[ Web ] 버프 스위트 (Burp suite) 설치 및 사용법 (최신 버전)

Burp Suite란, Client와 Server사이에서 통신을 주고 받는 것을 가로채 확인/수정해서 패킷을 다시 보내줄 수 있는 프로그램입니다. 흔히 말해 쁘락지(Proxy)라고 합니다. 1. Burp Suite 다운로드 https://portswigger.net/burp/communitydownload Download Burp Suite Community Edition - PortSwigger Burp Suite Community Edition is PortSwigger's essential manual toolkit for learning about web security testing. Free download. portswigger.net 위의 링크에서 다운로드 누르기, 전부 다 next누르면 ..

2021.12.25 게시됨