// Setup app const express = require("express"); const app = express(); const port = 3000; // Select ejs templating library app.set('view engine', 'ejs'); // Routes app.get("/", (req, res) =>...
ejs.render() prototype pollution 취약점 분석
[HackTheBox] racecar
문제 풀이 파일은 바이너리만 제공해주고, 보호기법은 모두 적용되어 있네요. ❯ ls racecar ❯ checksec racecar [*] '/HTB/pwn_racecar/racecar' Arch: i386-32-little RELRO: Full RELRO Stack: Canary found NX: ...
[Lazenca] Hello world!
Hello world! OS Information Installing the Development Environment Linux Kernel Module을 만들기 위해서는 아래 패키지들을 설치해야합니다. sudo apt install build-essential make Simple Linux Kernel Module 아래 코드는...
jekyll chirpy theme Troubleshooting h1 tag not visible in toc
문제 상황 chirpy 테마를 사용하던 중 마크 다운 파일을 업로드 했을 때 # 하나만 사용하는 h1 태그는 toc에서 제외되고 h2, h3 태그만 toc에 표시되는 문제를 겪었다. 이 문제 때문에 스트레스를 좀 많이 받아서 무조건 해결을 하겠다고 마음을 먹었다.. 참고로 나는 웹 개발에 대한 지식이 전무한 편이여서 모든 파일을 하나하나 수정해보며...
[Dreamhack] Overwrite _rtld_global Write up
// Name: ow_rtld.c // Compile: gcc -o ow_rtld ow_rtld.c #include <stdio.h> #include <stdlib.h> void init() { setvbuf(stdin, 0, 2, 0); setvbuf(stdout, 0, 2, 0); } int main() { l...
Tcache Poisoning
libc > 2.25 이후부터 적용된 heap 관리 방법이며, 2.29부터는 패치 되었다고 한다. 두번의 32 byte heap 영역 할당을 통해 아래와 같이 데이터가 들어있다고 가정하자. gef➤ heap chunks Chunk(addr=0x602010, size=0x290, flags=PREV_INUSE) [0x00000000006...
[pwn.college] ROP Level10.1 Write up
문제 분석 입력 버퍼 주소를 알려주네요. 이번 문제는 너무 안 풀려서 IDA의 도움을 받았습니다. 9번째 라인을 보면 sub_2038 함수를 dest[0]에 복사합니다. 그리고 입력 버퍼는 dest[1]에 존재합니다. sub_2038함수를 보면 win 함수인걸 알 수 있습니다. 일단 시나리오를 짜기전 필요한 정보들부터 정리해보겠습니...
[pwn.college] ROP Level9.0 Write up
List of Contents 문제분석 gdb 정적분석 복사되는 사이즈 복사되는 위치 Stack pivoting Ex...
Stack pivoting
Stack pivoting이란? ROP를 해야하는데 ret까지 밖에 bof가 가능할 때 사용 가능한 기법입니다. 특정 영역에 Write 권한이 있을때 영역에 가젯들을 세팅해놓고 sfp를 조작하고 ret에 leave; ret 가젯을 넣어서 원하는 주소를 실행시킬 수 있습니다. leave; ret 가젯 leave와 ret 명령어는 각각 아래와 같...
[Dreamhack] rop Write up
문제 분석 // Name: rop.c // Compile: gcc -o rop rop.c -fno-PIE -no-pie #include <stdio.h> #include <unistd.h> int main() { char buf[0x30]; setvbuf(stdin, 0, _IONBF, 0); setv...