무기한 선물이란?
2026. 1. 16. 00:16
WEB3/Perpetual Futures
무기한 선물(Perpetual Futures)의 정의무기한 선물은 전통 금융(TradFi)의 일반적인 선물 계약과 달리 만기일이 존재하지 않는 암호화폐 시장 고유의 파생상품이다. 투자자는 유지 증거금(Maintenance Margin)을 충족하는 한, 별도의 롤오버 과정 없이 포지션을 영구적으로 유지할 수 있다는 점이 가장 큰 특징이다. 가격 유지의 원리: 펀딩비(Funding Rate)무기한 선물은 현물 가격을 실시간으로 추종하도록 설계되었으며, 선물 가격과 현물 가격 사이의 괴리를 최소화하기 위해 펀딩비라는 개념이 존재한다. 펀딩비는 일정 주기마다 롱(Long) 또는 숏(Short) 포지션 중 상대적으로 우세한 쪽이 반대 포지션에게 지불하는 비용이다. 이 매커니즘은 시장의 수요와 공급 균형을 인위적으..
Pay1oad 시스템 과제 6주차
2024. 11. 18. 17:43
카테고리 없음
문제1 코드에서도 RTL 기법을 이용하라고 알려준다.기본적으로 read로 입력받는 값의 크기가 버퍼의 크기보다 커 bof가 발생하고 있다.다음으로는 write를 통해 buf에 있는 값을 30바이트 만큼 출력을 해주는 코드를 확인할 수 있는데본인은 puts 함수의 실 주소를 알아내어 libc base 주소를 구할것이다.write 함수의 reference를 보면 두번째 인자가 point 형이다. 이는 buf의 주소가 가리키는 공간에 있는 값을 출력한다는 의미이다.여기서 rop기법으로 write함수의 인자값을 구성하고 *buf 인자에 puts 함수의 실 주소가 담겨있는 got(Global Offset Table)의 주소를 넣어주면 실 주소값을 얻을 수 있다. 더미로 준 a값 다음에 오는 0x7f80a3876..
Pay1oad 시스템 과제 5주차
2024. 11. 11. 21:16
카테고리 없음
문제 1번 전에 풀었던 문제와 동일하다.언뜻 보면 입력 값의 크기를 제한하는 것 같지만 음수에 대한 검증이 이루어지지 않아 정수 언더플로우가 일어난다. 위는 익스플로잇 코드인데 대충 적당한 음수값을 주고 문제에서 주어진 win 함수를 이용하여 코드를 작성하였다. 문제 풀이에 성공한 사진문제 2번문제를 보면 버퍼 주소를 제공해주긴 하는데 랜덤값을 176으로 나눈 나머지에 + 0x50 을 한 값을 buffer address에 +- 해서 준다. 그러나 이는 큰 문제가 되지 않는다. 대충 buffer에 최대한 가깝도록 buf-rand1에 일정 값을 더하면 한번에 buffer로 넘어갈 확률이 높아진다. 그 아래는 read 함수를 통해 버퍼보다 큰 사이즈를 입력을 할 수 있어 bof가 터진다는 사실은 이쯤되면 누..
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가 덜 하겠지만 가상 서버 여러개로 로드밸런싱하면 어떻게든 되겠지.. ) 종류 가상화의 종류로는 크게 세 종류로 나뉜다. 하이퍼바이저 가상화 전가상화 반가상화 호스트 가상화 ..