컴퓨터는 정보를 기록하기 위해 데이터베이스 (DataBase)사용하며, 이러한 데이터베이스를 관리하는 어플리케이션을 DBMS (DataBase Management System)이라고 한다. > DataBase Management System (DBMS) * 데이터베
$ ./haruster $(python -c 'print "A" \* 128 + "\\xef\\xbe\\xad\\xde"')$ ./haruster $(perl -e 'print "A" \* 128 + "\\xef\\xbe\\xad\\xde"')$ (python -c '
오늘은 웹해킹 워게임 사이트인 Webhacking.kr의 old-01 문제를 풀어보도록 하겠습니다.일단 문제에 접속을 해보면, 아래와 같이 view-source라고 해서 소스코드를 볼 수 있는 사이트로 이동하는 부분과 level : 1이라고 적혀 있는 부분이 보이네요.
스택 영역은 실행 중에 크기가 동적으로 확장될 수 있지만, 한정된 크기의 메모리 안에서 스택이 무한히 확장할 수는 없습니다.(즉, 스택 오버플로우 (Stack Overflow)는 스택 영역이 너무 많이 확장돼서 발생하는 취약점을 말합니다.)반면, 스택 버퍼 오버플로우는
Pwntools를 사용하기 전에는 socket() 함수로 Pwnable 문제를 풀거나 혹은 한 줄 익스플로잇 코드로 Pwnable문제를 풀었을 것입니다.이러한 문제점들을 개선하여 시스템 해킹 즉, Pwnable에 필요한 기능들을 탑재한 모듈이 바로 Pwntools라고
정적 분석(Static Analysis)은 프로그램을 실행시키지 않고 분석하는 방법을 말한다.정적 분석을 사용하면 프로그램의 전체 구조를 파악하기 쉽다. \-> 정적 분석 도구들은 프로그램의 여러 정보를 살펴볼 수 있도록 도움을 주는데, 프로그램이 어떤 함수로 구성이
C언어로 작성된 코드는 일반적으로 전처리(PreProcessing), 컴파일(Compile), 어셈블(Assemble), 링크(Link) 과정을 거쳐 바이너리로 번역된다.컴파일의 정확한 의미는 어떤 언어로 작성된 소스코드(Source Code)를 다른 언어의 목적 코드
> 어셈블리 언어 어셈블리 언어 : 어셈블리 언어는 컴퓨터의 기계어와 치환되는 언어로서 다시 말하자면, 기계어가 여러 종류라고 한다면, 어셈블리어도 여러 종류여야 함을 의미하며, CPU에 사용되는 ISA(명령어 집합 구조)에 따라서 IA-32, X86-64, ARM,
Perl 언어의 데이터 타입은 아래와 같이 3가지 타입이 존재한다.Scalars (스칼라) -> $Arrays (배열) -> @Hashes (해쉬) -> %Perl에선 스칼라 변수를 사용하여 변수를 선언하며, 선언을 하는 방법은 아래와 같다.변수를 선언하는 예제를