2022년 여름방학 & 2학기 What to Do? 포스팅 썸네일 이미지

Memo

2022년 여름방학 & 2학기 What to Do?

1. AFL/AFL++ 소스코드 분석 --> 함수단위로 기능 및 해당 소스코드를 쓴 이유 분석 --> 이미 다 읽어보긴 했지만 종강 후 다시 읽어볼 예정. 이미 대단하신 분이 분석을 어느정도 해놓으셨다. "그" 나라가 해킹 제일 잘한다는게 진짜였다 https://blog.csdn.net/weixin_50972562/article/details/124327119?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_baidulandingword~default-1-124327119-blog-123726541.pc_relevant_paycolumn_v3&spm=1001.2101.3001.4242.2&utm_relevant_index=4 AFL(..

2022.05.26 게시됨

TOOLS & Error

[ Linux ] error while loading shared libraries 라이브러리 찾지 못 할때

바이너리에서 필요로 하는 라이브러리를 찾지 못 할때 직접 라이브러리 경로를 지정해준다. LD_PRELOAD에도 등록시켜줄 수 있고 LD_LIBRARY_PATH에도 등록시켜줄 수 있다. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/library_경로 LD_PRELOAD나 LD_LIBRARY_PATH 환경변수가 설정되어 있으면 라이브러리를 찾기 전에 환경변수에 등록된 PATH에서 먼저 찾고자 하는 라이브러리가 있는지 확인한다. https://hyunmini.tistory.com/55 https://huneylove.tistory.com/5

2022.05.07 게시됨

[ AngstromCTF 2022 ] CTF 딱 1년 차 포스팅 썸네일 이미지

Memo

[ AngstromCTF 2022 ] CTF 딱 1년 차

느낀점 첫 CTF경험한게 이 Angstrom CTF 2021이었다. 그때 1인팀으로 나가서 최종 등수가 1502팀 중에 556등이었다. 이제 딱 1년이 지나 AngstromCTF 2022를 풀어보니 느낌이 뭔가 달랐다.(나이 먹었다는 뜻) 처음에 어떻게 공부할줄도 모르고 그냥 아무거나 닥치는대로 했었는데 이제는 대충 뭐뭐 공부 해야되고 공부하려면 어떻게 해야할지 쪼오금 감이 오고 있긴하다. (하지만 누가 퍼저나 리얼월드 알려주면 더 빨리 배울듯...) 이번에는 학교 동아리에서 5인팀으로 나갔다. (이번엔 45/1319등 했다.) 시험 기간에 할 일도 많고 과제도 많아서 제대로 한건 대충 하루?정도하고 그 이후에는 잠깐씩 문제 풀었다. 이제 CTF 1년차도 됐고, 학교에 무림 고수들이 많아서 문제는 슥슥 ..

2022.05.05 게시됨

[ 시스템 프로그래밍 ] fork()와 execve()의 차이를 알아보자 포스팅 썸네일 이미지

프로그래밍

[ 시스템 프로그래밍 ] fork()와 execve()의 차이를 알아보자

1. fork()란 무엇인가 - 새로운 프로세스를 생성한 뒤에 현재 프로세스의 메모리 상태를 새로운 프로세스에 그대로 복사하는 것이다. - 부모 프로세스의 메모리 상태에서 몇 가지를 제외하고 그대로 복사하는데 이 중에 부모 프로세스와 다른 것은 pid이다. - 아래 결과를 보면 부모 프로세스와 자식프로세스는 독립된 메모리 주소를 사용한다. ( Code 영역은 공유함 ) - 아래 출력 결과를 보면 자식 프로세스에서 printf를 찍어도 stdout으로 출력된다. 즉, 부모 프로세스의 파일 디스크럽터를 자식프로세스에서 복사한다. - fork로 만들어진 자식 프로세스 부모 프로세스 사이의 통신은 IPC통신을 한다. 대표적으로는 PIPE통신이 있다. - return값은 2개이고, 0과 프로세스 id이다. 0은 ..

2022.04.14 게시됨

[ 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 게시됨

[ Docker ] 도커로 로드밸런싱한 서비스 배포하기 포스팅 썸네일 이미지

프로그래밍

[ Docker ] 도커로 로드밸런싱한 서비스 배포하기

1. 로드밸런싱이란? - 로드밸런싱이란 클라이언트가 많아졌을 때를 대비해 하나의 대표 서버를 두고, 대표 서버 뒤에서는 각자의 역할만을 하는 서버를 여러대 두는 것입니다. - 아래의 gif를 보시면 한번에 이해될 것 입니다.(gif설명이 너무 좋아서 가져왔습니다) - 즉, 하나의 서버만을 이용하면 과부하가 걸려 요청을 받을 수 없게 되거나 서비스가 느려집니다. 이를 방지하기 위해 로드밸런서가 요청을 분담하거나 구별해 일을 나누어 처리하는 것입니다. 2. 도커를 이용한 로드밸런싱 실습 - 먼저 저는 Windows에서 로드밸런싱을 실습하기 위해 Docker Desktop과 node.js을 이용하였습니다. - "npm init"을 하여 package.json을 생성한 뒤에 웹 페이지와 도커 컨테이너를 만들어 ..

2022.03.24 게시됨

Web

CSS Injection이란

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

2022.03.18 게시됨