목록전체 글 (103)
또 뭐하지
풀이 문제 페이지에 들어가면 위와 같은 화면이 나온다. #!/usr/bin/python3 from flask import Flask, request, render_template from selenium import webdriver from selenium.webdriver.chrome.service import Service import urllib import os app = Flask(__name__) app.secret_key = os.urandom(32) try: FLAG = open("./flag.txt", "r").read() except: FLAG = "[**FLAG**]" def read_url(url, cookie={"name": "name", "value": "value"}): co..
풀이 문제 페이지에 접속하면 위와 같다. #!/usr/bin/python3 from flask import Flask, request, render_template from selenium import webdriver from selenium.webdriver.chrome.service import Service import urllib import os app = Flask(__name__) app.secret_key = os.urandom(32) try: FLAG = open("./flag.txt", "r").read() except: FLAG = "[**FLAG**]" def read_url(url, cookie={"name": "name", "value": "value"}): cookie.upd..
풀이 문제 페이지에 접속하면 위와 같은 화면을 확인할 수 있다. #!/usr/bin/python3 from flask import Flask, request, render_template from selenium import webdriver from selenium.webdriver.chrome.service import Service import urllib import os app = Flask(__name__) app.secret_key = os.urandom(32) try: FLAG = open("./flag.txt", "r").read() except: FLAG = "[**FLAG**]" def read_url(url, cookie={"name": "name", "value": "value"}..
풀이 #!/usr/bin/python3 from Crypto.Util.number import getStrongPrime, bytes_to_long, inverse class RSA(object): def __init__(self): self.p = getStrongPrime(512) self.q = getStrongPrime(512) self.N = self.p * self.q self.e = 0x10001 self.d = inverse(self.e, self.N - self.p - self.q + 1) def encrypt(self, pt): return pow(pt, self.e, self.N) def decrypt(self, ct): return pow(ct, self.d, self.N) rsa ..
풀이 CRT (중국인의 나머지 정리, Chinese Remainder Theorem) - 정수론에서 중요한 정리 중 하나 - 소수로 나눈 나머지 연산에서 유용하게 사용 제공된 문제 파일을 살펴보면 prob.py와 output.txt 파일이 있다. prob.py는 flag를 정수로 변환하고, CRT를 적용할 수 있도록 3개의 소수와 이를 이용한 연립합동식을 생성하는 코드이다. output.txt는 prob.py 코드의 실행결과이다. 위 코드를 수식으로 바꿔보면 flag = c1 (mod p1) flag = c2 (mod p2) flag = c3 (mod p3) 이다. from sympy.ntheory.modular import solve_congruence from Crypto.Util.number imp..
환경구축Ubuntu 22.04 기반 윈도우 : VMware, VirtualBox, WSL2맥 : VirtualBox Background - Computer Science1. Computer Architecture(1) 컴퓨터 구조 (Computer Architecture): 컴퓨터가 효율적으로 작동할 수 있도록 하드웨어 및 소프트웨어의 기능을 고안하고, 이들을 구성하는 방법 - 컴퓨터의 기능 구조에 대한 설계 : 연산을 효율적으로 하기 위한 기능을 설계.ex) 폰 노이만 구조, 하버드 구조, 수정된 하버드 구조- 명령어 집합구조 : CPU가 처리하는 명령어를 설계 ex) ARM, MIPS, AVR, 인텔의 x86 및 x86-64 등- 마이크로 아키텍처 : 명령어 집합을 처리하는 CPU 회로를 설계ex) ..
풀이 문제 페이지에 접속하면 위와 같이 나온다. #!/usr/bin/python3 from flask import Flask, request, render_template, g import sqlite3 import os import binascii app = Flask(__name__) app.secret_key = os.urandom(32) try: FLAG = open('./flag.txt', 'r').read() except: FLAG = '[**FLAG**]' DATABASE = "database.db" if os.path.exists(DATABASE) == False: db = sqlite3.connect(DATABASE) db.execute('create table users(userid c..