전체 글

전체 글

    [Pwnable] fd

    오늘은 처음으로 pwnable.kr 문제를 풀어볼라 한다. 리눅스의 file descriptor와 관련된 문제인거 같다. 제시되어 있는 주소로 들어가보자 flag 파일이 있지만 당연하게도 읽히진 않는다. c 파일을 열어보자 #include #include #include char buf[32]; int main(int argc, char* argv[], char* envp[]){ if(argc

    [Pwnable] basic_exploitation_001

    보호되어 있는 글입니다.

    [Pwnable] basic_exploitation_000

    보호되어 있는 글입니다.

    [Pwnable] g++ pwn

    오늘은 g++ pwn 문제에 대해서 정리를 해보려한다. 32bit ELF파일이며 다이나믹 링킹되어 있다. NX만 enabled 되어 있으므로 쉘 코드 사용은 힘들어 보인다. 바로 아이다로 열어보자. 메인 함수에는 별게 없으니 넘기자 HackCTF에서는 처음 C++ 바이너리를 보는거 같다. 하나하나 분석을 해보자 우선 fgets로 입력을 받을 때 length check를 해주니 BOF는 힘들거 같다. 코드를 유심히 보면 replace 함수가 있다. 맞다. "I"라는 문자를 입력하게 되면 "you"라는 문자열로 변환을 해준다. 그럼 우리는 strcpy 함수를 이용해서 BOF를 터트릴 수 있다. 익스를 구상해보자면 1. "I"를 이용해서 buffer 0x3C만큼 채우기 2. Dummy 값으로 SFP 채우기 3..

    [ openCV ] Image Operation ( Blending, Operate Image Bit, ROI )

    오늘은 이미지 연산에 대해서 정리를 해볼까 한다. 바로 알아보자 1. Blending 첫번째 개념은 블렌딩이다. 블렌딩은 2개의 이미지의 투명도를 조정하여 2개의 이미지가 겹쳐보이도록 만드는 기술이다. openCV는 블렌딩을 위해 addWeighted() 함수를 이용한다. addWeighted() 함수는 밑과 같은 수식으로 동작한다 상수 alpha, beta가 Threshold로 이용되며, 입력 이미지 img1, img2의 투명도를 조절한다. 다만 Threshold인 alpha, beta가 가질 수 있는 범위는 0.0 ~ 1.0 사이며 0.0에 가까울 수록 투명한 상태가 되며 1.0에 가까워진다면 불투명해진다. gamma는 가중치 합에 추가로 더하는 상수이다. 이렇게 이론으로 주저리주저리 쓰는 것보다 직..

    [ Linux Error ]Could not get lock /var/lib/dpkg/lock-frontend

    진짜 패키지 설치할때마다 항상 왜 뜨는지 모르겠는 오류 E: Could not get lock /var/lib/dpkg/lock-frontend - open (11: Resource temporarily unavailable) E: Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it? 항상 저 오류 볼 떄마다 화병으로 돌아가실거 같아서 해결방법을 블로그에 정리를 해야겠따😥 1. sudo killall apt apt-get 2. sudo rm /var/lib/apt/lists/lock 3. sudo rm /var/lib/dpkg/lock* 4. sudo dpkg --configur..