일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Leviathan
- FTZ
- Cryptography
- THM
- file upload
- php To Do List
- Recon
- OS Command Injection
- Cookie
- overthewire
- php
- php 로그인 페이지 만들기
- Authentication
- php login page
- BANDiT
- active reconnaissance
- Reconnaissance
- War Game
- access control
- Server Side Request Forgery
- php file upload
- ssrf
- over the wire
- privilege escalation
- tryhackme
- 파일 업로드 취약점
- active recon
- SQLi
- php 파일 업로드하기
- sql injection
- Today
- Total
목록전체 글 (242)
R's Hacking Daily Log
AES :: Advanced Encryption Standard AES는 DES처럼 Block cipher 방식 중 하나로 128 bits의 data block을 암호화 & 복호화한다. AES에는 3가지 버전이 존재하는 데, 이는 사용하는 cipher key의 길이가 어떻게 되느냐에 따라 (128 bits, 192 bits, 256 bits) round 반복 횟수가 결정된다. (10, 12, 14 rounds) AES 과정을 살펴보기 전에 먼저 단어 정의를 하고자 한다. 흔히 말하는 Byte는 총 8개의 bits로 구성되고 Word는 그런 Byte가 4개 모인 걸 의미한다. 다른 말로 Word는 32 bits로 구성된다고 할 수 있다. Block은 16개의 Byte로 구성되어 총 128 bits이며 다른..
Step 1 :: 익명 함수 지금까지 살펴본 함수는 함수 이름을 기준으로 정의와 호출이 이루어졌다. 하지만 이름이 없는 함수도 존재하는 데 이를 익명 함수(람다 함수)라고 부른다. 익명 함수는 보통 함수처럼 정의해 놓고 반복해서 사용하는 용도가 아닌 필요할 때 즉시 생성하여 일회용으로 사용하는 함수이다. 익명 함수의 구조는 다음과 같다.
Step 1 :: 매개변수 활용 매개변수란 함수를 호출할 때 전달한 값을 받아주는 변수로 함수 내에서 사용 가능한 변수라 이전 글에서도 언급했다. 이번에는 그 매개변수를 어떤 식으로 활용할 수 있는지 알아보고자 한다. 1) 매개 변수 기본값 설정하기 매개 변수를 사용하는 경우 기본값을 설정할 수 있다. 기본값이 설정된 매개 변수는 인수가 전달되지 않을 경우에 적용되는 값으로 이해하면 된다. $str 매개 변수가 존재하는 함수를 호출할 때 인수를 전달하지 않고 say()로 함수를 호출한 경우에는 $str의 기본값으로 설정된 "hello world"가 출력되었고 인수를 작성한 경우에는 매개 변수가 전달받은 값이 존재하는 것이기 때문에 인수 값을 출력하고 있다. 매개변수에 기본값을 설정하고 싶다면 아래와 같이
Step 1 :: 함수 알아보기 함수란 간단히 말해 특정 기능을 수행하는 코드 모음집으로 여러 번 사용되는 코드를 묶어서 함수로 정의하면 코드도 간결해지고 수정 및 유지보수도 간편해진다. 함수는 프로그래밍에서 필수적으로 알아야 하는 부분인 만큼 그 구조와 활용 형태가 어떤지 살펴보도록 하자.
Step 1 :: for 반복문은 일정 기준에 따라 특정 코드를 반복 수행하는 문장을 말한다. 처음 살펴볼 for문은 초기식, 조건식, 증감식을 포함하고 있는 반복문이다.
Step 1 :: IF 조건문이란 특정 조건의 결과 값의 따라 코드의 실행 여부를 결정하는 문장으로 대표적인 if문 같은 경우에는 주어진 조건이 True인 경우에만 코드를 실행한다. if (condition) { condition이 true일 때 실행할 코드 } if 문의 구조는 위와 같다. 괄호 안에 조건을 작성하고 해당 조건이 참일 경우 실행하고자 하는 코드를 중괄호 안에다 입력하면 된다. 예를 들어 점수가 100점일 경우 축하 문구를 출력하고 싶다면 "점수가 100점이다"가 조건이 되고 "축하 문구를 출력한다"가 실행 내용이 되는 것이다. 조건과 실행 내용을 알맞게 작성해 주면 점수가 100점일 때만 축 만점!!이라는 문구가 출력되는 if문이 만들어진다. 그럼 점수가 100점이 아닌 경우에 어떤 동..
Step 5 :: 논리 연산자 논리 연산자는 논리식을 판단하여 True OR False 둘 중 하나로 결과를 반환하는 연산자이다. 종류는 and, or, xor, not 연산자가 있다.
Step 1 :: 산술 연산자 산술 연산자는 수학에서의 사칙연산을 담당하는 연산자라 보면 된다. 더하기, 빼기, 곱하기, 나누기, 나머지, 제곱 연산까지 가능하다. 변수 a에 7, b에는 3을 할당한 다음 더하기, 빼기, 곱하기, 나누기, 나머지, 제곱 연산 순으로 결과를 출력해 봤다. 다른 연산보다 비교적 낯선 나머지 연산과 제곱 연산은 각각 %, ** 문자를 사용한다. Step 2 :: 증감 연산자 증감 연산자는 변수의 값을 1 증가시키거나 감소시키는 연산으로 증가는 ++, 감소는 -- 기호를 사용한다. 증감 연산자를 변수 앞에 붙이느냐, 뒤에 붙이느냐에 따라 동작 방식이 달라진다. 먼저 증감 연산자를 변수 앞에 붙이는 경우를 보면 echo 함수의 결과가 모두 8인 걸 알 수 있다. ++$a 값을 참..