일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- gui
- C++ library
- 코딩
- 리듬게임
- JUCE library
- 자료구조
- vim-go
- 공룡책
- JUCE 튜토리얼
- C++
- c++ heap
- Docker
- C언어
- go channel
- go
- 연결리스트
- 알고리즘
- 운영체제
- 백준
- tour of go
- OS
- Nebula
- LOB
- C++ gui 라이브러리
- BOJ
- 프로그래밍
- JUCE라이브러리
- a tour of go
- C++ gui
- JUCE
- Today
- Total
목록CafeM0ca (266)
CafeM0ca
server.c123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960#include#include#include#include#include#include#includeint main(){ printf("create server socket discripter \n"); int serv_socket = socket(AF_INET,SOCK_STREAM,0); if(serv_socket == -1){ printf("fail creating socker\n"); exit(1); } printf("create server structure\n"); struct sock..
임계 구역(critical section) == 공유변수 영역 둘 이상의 쓰레드가 동시에 접근해서는 안되는 공유 자원(ex: 자료 구도 또는 장치)에 접근하는 코드의 일부. 임계구역은 지정도니 시간 이후에 종료됨. 임계 구역에 들어가고자 한다면 그 시간만큼 대기해야함. 임계구역에 들어가거나 나올때에는 세마포어 같은 동기화 메커니즘이 사용된다. 세마포어세마포 혹은 세마포어는 동기화 도구로서 wait()와 signal()로만 접근 A와 B가 방에 들어가려한다.방에는 카드 52장이 있다. A와 B는 정해진 시간동안 번갈아가면서 카드를 뒤집을 수 있다.A는 앞면으로 B는 뒷면으로 뒤집는다.먼저, A가 방으로 들어갔다. B는 대기하고 있다.A가 카드를 뒤집고 방에서 나왔다.방은 비어있으므로 B가 방에 들어간다.방..
https://github.com/RPISEC/MBE
gdb 로 열자 info file하면 엔트리포인터 0x80487a0를 확인해보면 start함수가 보이는데 저기에 첫번째인자(인자전달 거꾸로 들어간다.)가 main함수 포인터이다. 저 함수를 까보면 메인함수가 잘보인다.
ID:dark_stonePW:let there be light 득템~~ 후기FC3를 풀면서 메모리에 대한 이해가 확실히 전보다 나아졌다. 다만 나는 아직 파이썬 스크립트짜는게 익숙하지가 않다..ㅠㅠ 편리한만큼 더 공부해야겠다.코드게이트 예선이 2일남았다.. 2일안에 힙을 조금이라도 공부하고 예선 붙었으면 좋겠다.
1.nvim설치 http://mjae.kr/2016/10/01/vimlinux-2-neovim-%EC%84%A4%EC%B9%98%ED%95%98%EA%B3%A0-24bit-%EC%BB%AC%EB%9F%AC-%EC%A0%81%EC%9A%A9%ED%95%98%EA%B8%B0/ 2.한글설정 http://progtrend.blogspot.com/2018/06/ubuntu-1804-uim.html 4.터미네이터,구글,vmware5.테마 http://blog.naver.com/PostView.nhn?blogId=peacehd2014&logNo=220967408194&redirect=Dlog&widgetTypeCall=true6.카톡 https://imitator.kr/Linux/1221
ID:evil_wizardPW:get down like that이전 문제에서 로컬->리모트로 바뀌였다. 따라서 심볼릭링크를 못쓴다. 필요한걸 구해보자 NULL: 0x8049814payload는 아래와 같다."A"*268+"strcpy+ppr+"memcpy_got1+c0+strcpy+ppr+memcpy_got2+07+strcpy+ppr+memcpy_got3+75+strcpy+ppr+memcpy_got4+NULL+memcpy+AAAA+&(/binsh) 12345678910111213141516171819202122232425262728293031323334353637383940import socketimport structp = lambda x : struct.pack("
ID:hell_firePW:sign me upret썰매가 불가능하고 argv[1]의 길이만큼만 냅두고 스택을 초기화해버린다. 모카는 bss영역에 execv인자들을 구성해줄꺼다. bss영역 0x80498b0 //bss(block started by symbol)영역은 초기화되지 않은 전역 데이터들이 있다. buffer는 ebp-264부분이다. strcpy: 0x8048494 bss영역이 텅텅 비어있다. /bin/sh 바이너리들(/,b,i,n,/,s,h)을 1바이트씩 덮어씌워줄꺼다.0x80498b0에는 덮어씌운 execv의 주소를, 0x80498b0+8에는 /, 0x80498b0+9에는 b, 0x80498b0+10에는 i ...이런식으로 구성해줄거다. 인자를 찾자.memcpy got: 0x8049888 pp..
LOB FC3,xavis풀기 //완료플레이페어 암호화 구현boost asio써보기 스테가노그래피
ID:dark_eyesPW:because of you리모트라서 심볼릭링크가 불가능하다.일단 어셈블리부터 보자.ebp-1304가 temp다. 인자를 보면 fgets임을 알 수 있다.strcpy부분. ebp-264가 버퍼다.temp를 꽉체워서 buffer를 덮으면 편하겠지만 1024밖에 못채운다.따라서 모카는 stdin에 execv를 셋팅하고 strcpy로 memcpy의 got를 execv의 주소로 덮어씌우고 memcpy를 호출할꺼다.strcpy와 memcpy를 거꾸로해도 되지만 인자구성이 까다로워진다. execv의 주소는 stdin의 주소로 사용하면 됀다.(plt와 got의 설명은 생략. 구글링 ㄲ) payload"A"*268+strcpy+memcpy+memcpy's got+&(execv)strcpy의 호..