분류 전체보기
-
[집합론] Partition과 동치관계Math/Set Theory 2023. 1. 14. 14:23
동치관계란? 집합 $X$에서 정의된 relation 중에서 reflexive이고 symmetric이며 transitive인 relation을 동치관계라고 한다. (참고 : https://hellworld.tistory.com/8) 말로 풀어서 쓰면 역시 복잡해보이지만, 우리가 잘 알고 있는 많은 relation들은 동치관계이다. 동치관계의 예시로는 등호, 닮음 등의 관계가 있다. 집합을 원소나열법으로 나타내어 예시를 들자면 아래와 같은 relation이 동치관계이다. ex) 집합 $X = \left\{1,2,3,4\right\}$에 대해 $X$ 위에서 정의된 relation $R \subseteq X \times X$ 중에서 $R_{1} = \left\{(1,1), (2,2), (3,3), (4,4) \..
-
[Web Hacking] Portswigger - Blind SQL injection with time delays and information retrievalCoding/Hacking & Security 2023. 1. 5. 00:56
문제 링크 : https://portswigger.net/web-security/sql-injection/blind/lab-time-delays-info-retrieval Lab: Blind SQL injection with time delays and information retrieval | Web Security Academy This lab contains a blind SQL injection vulnerability. The application uses a tracking cookie for analytics, and performs an SQL query containing the value ... portswigger.net Blind SQL injection을 해보자. 문제 분석 기본적..
-
[Web Hacking] Portswigger - SQL injection vulnerability allowing login bypassCoding/Hacking & Security 2023. 1. 2. 14:20
문제 링크 : https://portswigger.net/web-security/sql-injection/lab-login-bypass Lab: SQL injection vulnerability allowing login bypass | Web Security Academy This lab contains an SQL injection vulnerability in the login function. To solve the lab, perform an SQL injection attack that logs in to the application as ... portswigger.net 문제 분석 Login 함수에 SQL injection이 가능하다고 한다. 하지만 SQL query나 다른 코드 등은 공개..
-
[Web Hacking] Portswigger - SQL injection vulnerability in WHERE clause allowing retrieval of hidden dataCoding/Hacking & Security 2023. 1. 1. 20:21
문제 링크 : https://portswigger.net/web-security/sql-injection/lab-retrieve-hidden-data Lab: SQL injection vulnerability in WHERE clause allowing retrieval of hidden data | Web Security Academy This lab contains an SQL injection vulnerability in the product category filter. When the user selects a category, the application carries out an SQL query ... portswigger.net * 참고로 Portswigger lab들의 문제는 풀이가 ..
-
[집합론] Partition과 BlockMath/Set Theory 2022. 12. 31. 14:41
Partition Partition의 정의 Partition$($분할$)$은 어떠한 집합 $X$를 겹치지 않고 나누는 부분집합들의 집합을 말한다. ex) 집합 $A=\left\{1,2,3\right\}$에 대해 $A$의 partition으로 $ \left\{\left\{1,2\right\}, \left\{3\right\}\right\} $ 등이 있다. 어떤 집합 $\left\{B_{i}\right\}$가 집합 $A$의 partition이라면 다음 세 조건을 만족한다. 1. $\forall B_{i} \neq \emptyset$ , 즉 partiton의 모든 원소는 공집합이 아니어야 한다. 2. If $i \neq j$ then $B_{i} \cap B_{j} = \emptyset $ , 즉 partiti..
-
[집합론] 대응관계 $($Relation$)$Math/Set Theory 2022. 12. 24. 19:16
대응관계 집합론에서 '관계', relation은 곱집합의 부분집합으로 정의한다. 이때 두 집합의 곱집합$($데카르트 곱$)$은 아래와 같이 정의한다. 집합 $A=\left\{a_{1}, a_{2}, ... \right\}$, 집합 $B=\left\{b_{1}, b_{2}, ... \right\}$에 대해 곱집합 $A \times B = \left\{(a, b) | a \in A, b \in B\right\}$이다. ex) 집합 $A=\left\{1,2,3\right\}$, 집합 $B=\left\{a,b,c\right\}$에 대해, 곱집합 $A\times B$는 다음과 같다. $A \times B = \left\{(1,a), (1,b), (1,c), (2,a), (2,b), (2,c), (3,a), (3,..
-
[Python] 반복 가능한 객체의 언패킹Coding/Python 2022. 12. 22. 17:04
Iteration 파이썬에서 반복 $($iteration$)$은 파이썬 컨테이너 $($리스트, 튜플, 딕셔너리 등$)$에서 지원하는 연산이다. 반복 가능한 객체에 대해서는 일반적으로 for 루프를 이용해 객체의 값을 하나씩 순회하거나 in 연산자를 이용해 멤버 검사 등을 할 수 있다. 반복 가능한 객체를 for 문에서 순회하는 예시는 다음과 같다. >>> l = [1,2,3,4] >>> for x in l: print(x) 1 2 3 4 이 포스트에서는 반복 가능한 객체의 언패킹을 알아본다. Unpacking 파이썬에서 언패킹이란 반복 가능한 객체의 여러 값들을 각각 다른 변수 등에 저장하는 것을 말한다. 가장 간단한 예시로 다음이 있다. >>> l = [1,2] >>> a, b = l >>> a 1 >..
-
[Python] 객체와 클래스, 스페셜 메소드Coding/Python 2022. 12. 19. 18:01
파이썬의 class 문을 이용해서 새로운 객체 타입을 정의할 수 있다. 다음은 간단한 pop, push 연산을 수행하는 스택을 정의하는 Stack class이다. class Stack: def __init__(self):# 스택 초기화 self._items = []# underbar 하나가 앞에 붙은 변수는 private 변수로 간주한다 def push(self, item):# push 연산 정의 : stack 에 값을 추가한다 self._items.append(item) def pop(self):# pop 연산 정의 : stack 맨 위의 값을 삭제하고 리턴한다 return self._items.pop() 파이썬에서 클래스를 정의할 때, underbar 2개가 앞 뒤에 붙은 메소드가 정의되어있는 것을 ..