목록전체 글 (430)
오래 못 할 짓 하지 않기
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.

Redundant Array Of Inexpensive Disks📌 사용 목적 : 서버에 저장된 데이터가 손실되었을 때를 대비하여,Disk를 추가하는 방식을 통해 속도 / 안정성 / 가용성을 증대하는 방법 📌 장점1) 운용 가용성, 데이터 안정성2) 디스크 용량 증설 용이성3) 디스크 I/O 성능이 올라간다. 📌 종류1) Concatenate 방식2) Stripe 방식 (Proposed in our Project) Concatenate 여러 개의 Disk에 데이터를 적재하는 방식이다.그냥 물리적으로 두 개의 Disk를 사용한다. - 장점 : 1번 Disk에 공간이 모자란 경우에, 2번 Disk 공간을 사용할 수 있다. 공간이 2배. (당연함) - 단점 : 하나의 Disk에 ..

v4에 입력을 하고, v5를 1337로 만들면 되는 게 아닌가 싶었는데생각해보니 v5가 changeme가 아니다. changeme는 전역변수라서 스택에 없음. 그럼 우리가 해야하는 건, changme의 위치를 알아내서 그 안에 1337을 넣어주면 된다.우리가 입력한 내용이 buf에 들어가고, 그 buf를 printf() 에 넣기 때문에 1. changeme의 주소 구하기2. 해당 주소에 1337 넣기
보호되어 있는 글입니다.
보호되어 있는 글입니다.
보호되어 있는 글입니다.

heap을 넘치게 해서 overflow로 조작하는 형태인 것 같다.41번 줄을 통해서 공격하는 것 같은데메모리가 세부적으로 어떻게 구성되어 있는지 알아보자. heap은 동적할당이기 때문에 동적 디버깅을 해야한다.따라서, IDA로는 한계가 있음. gdb를 써야한다. gdb로 heap을 봤을 때 생김새는 위와 같다.이 둘의 거리는 0x30 , 10진수로는 48만큼 차이가 난다. (근데 어떻게 -8바이트 하는거지?) 우린 scanf를 통해 ptr 공간을 넘어서 over 위치에 get_shell()을 넣으면 된다.구상하는 모습은 아래와 같다. 우선 get_shell()은 0804867B 위치에 있다. (Return address로 쓸 예정)