Pay1oad 시스템 과제 2주차
2024. 10. 5. 16:58
카테고리 없음
과제 1더이상의 설명은 생략한다. 과제 2이 문제의 포인트는 if 문인데 size 입력받은 값을 조건문에서 잘 검증하지 않아 발생하였다.입력 값이 19보다 크면 안되지만 -큰수를 입력하면 결국 19보다는 작으니 통과 가능하다.그 다음으로는 read의 size 부분에서 타입 캐스팅 unsigned 형이라 자료형 최대값-입력한 음수값이 되어 상당히 큰 사이즈의 값을 입력할 수 있다. 그 이후는 일반적인 bof을 터뜨려 리턴주소를 win으로 수정해주면 된다.
Pay1oad 시스템 과제 1주차
2024. 9. 18. 00:48
보안/etc..
1-1#includeint func(int a, int b){ return a+b;}int main(){ int a, b = 0; int i; int sum; puts("Hello World"); printf("Input digit A: "); scanf("%d", a); printf("Input digit B: "); scanf("%d", b); sum = func(a, b); printf("Sum a, b: %d\n", sum); while(sum != 0){ sum -= 1; i++; printf("repeat %d\n", i); } return 0;}1-22-1from pwn impor..
실행 컨텍스트
2022. 7. 7. 00:39
언어 & 프레임워크/JavaScript
ES5 기준 실행 컨텍스트란? 코드를 실행하기 위한 정보를 담고있는 객체를 의미한다. 실행 컨텍스트의 종류 Global Execution Context Function Execution Context 자바스크립트 엔진은 실행 컨텍스트에 코드가 실행되기 전 정보를 수집을 한다. 처음 코드가 실행될 때 Call Stack에 Global Execution Context가 쌓이게 되고 함수를 이용하면 그 위에 (func name) Execution Context가 쌓이게 된다. 이후로 함수가 종료되면 LIFO (Last In First Out) 순서로 pop 된다. 다음으로 실행 컨텍스트의 구성을 살펴보면 1. Lexical Enviroment, Variable Enviroment 변수, 매개변수와 인수정보, ..
가상화
2022. 7. 5. 20:35
인프라/기술 정리
기술의 등장 가상화 기술 등장 전 서버를 사용하는 모습을 보면 각 서버당 한 대의 컴퓨터와 OS가 필수적이었다. 그래서 가벼운 서비스를 돌리려고 해도 한 대의 자원을 통째로 이용하는 방법뿐이었다. 그러나 가상화 기술이 등장하고 나서 부터 매우 효율적인 서버관리가 가능해졌다. 한 대의 컴퓨터에서 Host 컴퓨터의 자원을 분배해 Guest 컴퓨터에 할당하고 각 Guest 마다 다른 OS를 이용할 수 있어 한 대의 컴퓨터가 여러대의 서버인 것 처럼 역할을 할 수 있게 됬다. ( 물론 서버 한대를 통째로 이용할 때 보다는 perfomance가 덜 하겠지만 가상 서버 여러개로 로드밸런싱하면 어떻게든 되겠지.. ) 종류 가상화의 종류로는 크게 세 종류로 나뉜다. 하이퍼바이저 가상화 전가상화 반가상화 호스트 가상화 ..
웹 해킹 문제 만들어본 이야기 - 문제 제작 및 풀이 편
2022. 6. 30. 01:54
카테고리 없음
저번에 우리는 문제를 출제하기 위한 소재로 취약점을 정하고 분석해보는 시간을 가졌다. 이제 문제를 출제하기 위한 틀을 만들고 취약점을 터트릴 부분을 찾아보자. 코드는 별거 없다. 기본적인 CRUD 에 회원가입, 로그인, 로그아웃 정도가 끝이다. 소스는 아래 링크에 남겨두었다. https://github.com/nogie-dev/CTF-ETC/tree/main/%EB%82%B4%EB%B6%80-%EB%A9%B4%EC%A0%91%EC%9A%A9-Web%EB%AC%B8%EC%A0%9C 🚩 시작 문제의 메인 페이지를 살펴보면 //main.hbs {{#if isLogin}} hello {{username}} {{#if isAdmin}} You are Admin flag{haha_this_is_flag} {{els..
웹 해킹 문제 만들어본 이야기 - express-handlebars 취약점 분석 편
2022. 6. 27. 20:47
보안/CTF
나는 현재 어느 CTF팀의 멤버로 활동하고 있다. CTF에 대해 대략적으로 설명을 하자면 해킹대회 정도로 생각을 하면 될 것 같다. 대회의 방식은 대회 사이트에 문제가 주어지는데 이를 해결하면 Flag 라는 점수 획득에 필요한 요소를 얻을 수 있고 대회 사이트에 이 Flag 를 인증하면 점수가 반영된다. https://demo.ctfd.io/ 위의 링크에서 해킹 대회가 어떤식으로 진행되는지 확인해 볼 수 있다. 본문으로 넘어가서 🚩 시작 얼마 전에 팀에서 팀원 공개모집을 했었는데 지원자들의 문제 풀이 능력을 확인하기 위해 내부 면접용 CTF를 진행하기로 했다. 그 중에서 나는 Web Hacking 분야의 문제를 *중 * 난이도에 맞춰 한 문제 출제를 담당하게 되었다. 사실 이전에 문제를 출제해본 적이 없..
Dreamhack CTF Season 1 Round #5 mongoboard
2021. 3. 18. 14:54
보안/CTF
이번 CTF에서는 한문제밖에 못풀었다 오랜만의 CTF라 감이 잘 잡히지 않아 쉬운문제 하나밖에 풀지 못했다. 이 문제는 관리자이름으로 작성된 비밀글을 읽어내는것이었다. 비밀글을 접근하려고 누르면 이런 이벤트가 발생한다. 자바스크립트를 수정하면 될 줄 알았지만 수정이 안됬다. 그러다 no 부분의 해시로 보이는 부분이 규칙이 있는것같아 파이썬으로 브루트포싱 코드를 간단히 짜서 돌려본 결과 FLAG를 얻어낼 수 있었다. #익스코드와 보드의 no가 다른 이유는 CTF를 하는동안 캡쳐를 하지 못해 대회가 끝나고 문제로 올라온것을 찍었기때문이다. 정석풀이를 보았는데 상당히 어려워보았다. 어쩌면 운이 좋아서 풀 수 있었던것같다.