본문 바로가기

전체 글

(312)
baby-union 쿼리에 맞춰 SQL 인젝션으로 문제를 푸는 거다,,, 쿼리에 맞춰서 admin' or 1=1 -- - 을 입력하면 밑에 사진처럼 admin으로 로그인이 된 걸 볼 수 있다.~! 기본적인 쿼리는 찾았으므로 이제 flag을 찾으면 된다~! ∙ 수동으로 찾기 칼럼 개수를 보니 'order by 5에서 에러 페이지가 노출이 된다. 즉 칼럼의 개수는 4개이다~! 사용할 수 칼럼의 번호는 1, 2, 4번이다. 데이터베이스 이름을 확인해 본 결과 secret_db의 데이터베이스가 있다. 테이블 정보를 확인했을 때, 여러 개의 테이블 정보가 출력이 된다.... onlyflag 테이블이 있다,, 여기에 flag 정보가 들어있을 거 같다... sname, svalue, sflag을 출력해 보자... flag값이 잘려있는 ..
Type c-j • 알아야 할 것!!!!!! - magic hash (PHP에서 사용하는 특수동작) '0' == 0를 비교하면 두 개의 자료형이 달라도 데이터만 일치하며 TRUE를 반환한다.(최적의 자료형을 찾는다 => string >> float >> int 형 순이다) -> A === B을 사용한다 ex) 지수를 통한 인증을 우회하는 방법 : 0e12345 == 0의 결과는 TRUE ID와 Password를 통과를 하며 되는 문제이다. 3개의 PHP 소스가 있지만 우리가 봐야 할 소스는 check.php 만 보면 된다. if((int)$input_id == $id && strlen($input_id) === 10){ echo 'ID pass. '; if((int)$input_pw == $pw && strlen($in..
Broken Buffalo Wings • 이 문제를 풀기 위해 알고 있어야 할 것 - PHP Output Buffer 말그대로 출력할 때 버퍼에 담아놓았다가 일정 이상이 차게 되면 한 번에 출력하게 끔 해준다. 버퍼를 초과하는 문자열을 넘겨준다면 오버플로가 발생하고 출력버퍼는 헤더정보까지 포함하여 비워지게 된다. 메인 페이지를 봤을때, XSS 취약점인가...? 소스 코드를 한번 보자..!
random-test #!/usr/bin/python3 from flask import Flask, request, render_template import string import random app = Flask(__name__) try: FLAG = open("./flag.txt", "r").read() # flag is here! except: FLAG = "[**FLAG**]" rand_str = "" alphanumeric = string.ascii_lowercase + string.digits for i in range(4): rand_str += str(random.choice(alphanumeric)) rand_num = random.randint(100, 200) @app.route("/", methods ..
amocafe @app.route('/', methods=['GET', 'POST']) def index(): menu_str = '' # 빈문자열 org = FLAG[10:29] # FLAG의 인덱스 10위치에서부터 29까지의 길이을 org에 저장 org = int(org) # org에 저장된 문자을 int형으로 변형 st = ['' for i in range(16)] # 16개의 빈 문자열을 가지는 리스트 st를 생성 # 반복문....으로 연산.. 여기가 중요할듯,,, for i in range (0, 16): # res값은 org에서 4 * i 비트 오른쪽으로 쉬프트 하고 그다음 0xf와 AND 연산을 함 # 즉, org에서 i번째 4비트를 추출함 res = (org >> (4 * i)) & 0xf # res가 ..
command-injection-chatgpt 메인화면에는 필요 없는 메시지와 Ping 페이지로 이동하는 메뉴가 있다. 8.8.8.8로 Ping을 보내면 응답값이 출력이 된다. 8.8.8.8;ls을 입력을 했을 때 ping명령어가 실행이 되면서 ;(세미콜론) 뒤에 있는 명령어가 실행이 된다. command Injection에 대한 필터링은 존재하지 않는거같다. 그렇기에 8.8.8.8; cat flag.py을 입력 하면 flag 값을 얻을 수 있다.
Yara 프로젝트 • Yara 악성 파일을 시그니처 기반으로 판별 및 분류 할 수 있게 하는 툴로 Linux, Windows OS 에서 모두 사용이 가능 • Yara Rule https://github.com/Yara-Rules/rules GitHub - Yara-Rules/rules: Repository of yara rules Repository of yara rules. Contribute to Yara-Rules/rules development by creating an account on GitHub. github.com 1. 디렉터리에 있는 파일 불러오기 2. 파일 중 yar 확장자(yara Rule)만 불러온다. 3. 검사할 대상과 비교를 한다. 4. 시그니처가 yar 파일에 있는지 여부를 판단한다.
1주차 (개념) ∙ 시간복잡도 입력크기에 대해 어떠한 알고리즘이 실행되는데 걸리는 시간이며 주요로직의 반복횟수를 중점으로 측정 ∙ 빅오표기법 복잡도에 가장 영향을 많이 끼치는 항의 상수인자를 빼고 나머지 항을 없애서 복잡도를 나타내는 표기법 // 시간 복잡도는 2분의1 의 n제곱 - n 이다. // 빅오표기법으로는 n의 제곱이다. #include using namespace std; int n; int main() { cin >> n; int a = 0; for (int i = 0; i < n; i++){ for (int j = 0; j < i; j++){ a += i + j; } } cout