Computer_Study 336

[Lecture]현대암호(Cryptography)

혼돈 : 암호문에서 평문의 특성을 알아내기 힘든 성질 ex) ab hi ab -> cd ef cd cd에 해당하는 두 평문이 같을 것이다. 혼돈 성질을 만족하지 못한다. 확산 : 평문의 작은 변화가 암호문의 큰 변화로 이어지는 성질 대칭키 암호 시스템 암호화와 복호화에 같은 키를 사용하는 암호시스템 Block Cipher(블록 암호) : 평문을 정해진 크기의 블록단위로 암호화 하는 암호 ex) abcd efgh 1234 5678 평문의 크기가 블록크기의 배수가 아니라면 패딩을 추가 Stream Cipher(스트림 암호) : 송신자와 수신자가 공유하는 데이터 스트림을 생성하고 평문에 XOR 하는 암호 C = P ⊕ X P 평문 C 암호문 X 스트림 X ⊕ X = 0 을 이용 대칭키 암호 장점 : 공개키 암..

[Lecture]고전암호(Cryptography)

고전암호 종류 Monoalphabetic Substitution Cipher(단일 문자 치환 암호) : 평문의 각 문자를 다른 문자로 치환 ex) 카이사르 암호 E = (x+n) mod 26 언어가 지닌 통계적 특성이 유지된다 e가 영어에서 제일 많이 나옴 Polyalphabetic Substitution Cipher(다중 문자 치환 암호) : 평문의 한 문자가 여러 종류 문자로 치환 ex) 비제네르 암호 Key A B C A B C ... 평문 B 1 A C K H ... C = (M + K) mod 26 C - 암호문 M - 평문 K - 키워드 Transposition Cipher(전치 암호) : 평문을 구성하는 문자들 순서를 재배열 ex) 스키테일 암호 암호 공격 방법 Exhaustive Key S..

22.01.26 A Surprise Greeting

백의 차례 입니다. 당장 보이는건 비숍이 움직이면 흑에 discovered attack을 할 수 있는 모습이 보입니다. 비숍 b5를 하면서 퀸 디스커버드 어택을 하면서 킹을 노리는 방법도 있을 법 합니다. 래피드에서는 이렇게 했을 것 같네요 가장 좋은 수는 비숍 g6로 디스커버드 어택을 하면서 퀸으로 체크메이트를 시도 하는 것으로 보입니다. 이를 막기위해서 나이트가 나와서 비숍과 폰과 퀸 모두를 공격하지만 그폰은 e룩에 지켜지던 폰이었습니다. 여기서 선택지가 갈리는데 - 퀸을 d룩으로 먹는다 다음수에 아마 나이트가 백의 퀸을 먹을 예정 - 비숍 f7 사이수를 두고 퀸을 d룩으로 먹는다 - 룩으로 나이트를 잡는다 백랭크도 안전하게 지켜지고 있기 때문에 마지막 선택지인 나이트를 잡는게 맞는것 같습니다.

체스/Daily Puzzle 2022.01.27

[Lecture]Shellcode(System)

Shellcode 란? 셸을 획득하기 위한 목적으로 작성된 어셈블리 코드 orw(open-read-write) 셸코드 : 파일을 열고 읽은 뒤 화면에 출력해주는 셸코드 char arr[0x30]; int fd = open("~~", RD_ONLY, NULL); """ syscall : open rax : 0x02 arg0(rdi) const char *filename arg1(rsi) int flags arg2(rdx) umode_t mode """ read(fd, buf, 0x30); """ syscall : read rax : 0x00 arg0(rdi) unsigned int fd arg1(rsi) char *buf arg2(rdx) size_t count """ write(1, buf, 0x30);..

22.01.25 Explosive Development

백 차례 입니다. 상황을 보면 흑은 기물들이 많이 전개 되어 있는 반면에 백은 기물이 전개 되지 않은 모습이 눈에 띕니다. c4로 폰을 밀면서 비숍을 위협하며 턴을 벌 수 있을거라 생각되지만 지키는 기물이 공격하는 기물보다 많기 때문에 폰 하나를 잃는 것과 같습니다. 하지만 비숍의 b5로 가면 나이트에의해 지켜지면서 퀸과 킹을 포크를 걸 수 있는 모습이 보이기 때문에 폰을 밀어서 비숍이나 나이트를 끌어내고 퀸을 잡아 낼 수 있을듯 합니다. 이번에는 정답을 맞출 수 있었다.

체스/Daily Puzzle 2022.01.26

SQL Injection

SQL Injeciton - WHERE 구문 우회 #ID = 1 #PASSWORD = 1234 #query SELECT name, email FROM users WHERE ID = '1' and PASSWORD = '1234' #ID = 1' or '1' = '1'-- #PASSWORD = 1234 #query SELECT name, email FROM users WHERE ID = '1' or '1' = '1'--' and PASSWORD = '1234' SELECT name, email FROM users WHERE ID = '1' or '1' = '1' or True 형태를 만들어서 필요한 정보를 가져오는 방식 - UNION 공격 SELECT name, email FROM users WHERE ID..

22.01.24

흑 차롑니다 흑이 둘수 있는 괜찮은 수들을 생각해보니 - Bh3 비숍희생(?) - Qe4 공짜폰 - Ne4 공짜폰 - Ra6 퀸 압박 그래서 처음 문제풀때는 퀸으로 폰을 먹고 비숍희생해서 g2폰이 h3로 끌려가면 나이트를 되잡아내는 문제라고 생각했고 그렇게 해서 틀렸다. 정답은 Ra6가 퀸을 갖힌 기물로 만드는것이다. 그렇다면 퀸을 탈출 시키기 위해서 나이트가 c6퀸을 공격하는데 퀸은 룩을 지켜야 되기 때문에 b7, a8로 갈 수 있다. 하지만 a8로 간다면 퀸의 도주로가 생긴다 그래서 정답은 b7 으로 간뒤 상대는 퀸을 희생할수밖에 없다.

체스/Daily Puzzle 2022.01.25

취약한 인증 공격

책의 내용에 따라 브루트포스 공격을 실습해보고자 한다. 크게 두가지로 나뉜다 - 모든 경우의 수 를 넣는 브루트포스 - 자주 비밀번호로 쓰는 리스트를 넣는 딕셔너리 어택 실습을위해 DVWA에 접속했다. 브루트포스는 다음과 같은 화면이다. 비밀번호가 틀리면 다음과 같이 뜬다. 전전시간에 배운 BurpSuite의 Intruder 기능을 이용하여 Brute Force 공격을 실행해 보았다. 사이트를 로그인할때 보낸 http 요청을 찾아서 Intruder에게 보내면 아래와 같이 뜬다. 그리고 브루트포스를 할 password 부분을 설정하고 컴퓨터에 있던 password.lst (여러 비밀번호가 적혀있는 리스트 약 3000개) 를 훑으면서 응답을 확인한다. 그중 응답 길이가 다른 비밀번호가 있는데 이는 나머지는 ..

Sicilian Defence : Alapin Variation

시실리안 디펜스, 알라핀 버전을 공부해보았다. 상대가 흑이 시실리안 디펜스를 쓸때, 백이 의도 할 수 있는 방법이다. 시실리안 디펜스란 백이 e4로 시작할때 흑이 e5로 맞대응 하는 것이아닌 c5로 대응하는 공격적인 수비 방식이다. 보통 백은 Nf3로 기물을 전개하고 흑은 b6, d6, g6, Nf6 등에 따라 여러 Variation이 존재한다. 이중에서 alapin variation은 c3 d4로 폰을 밀어서 sicilian defence의 의도인 중앙 차지를 막는것을 저지하고자 하는 것이다. 그렇다면 흑쪽에서는 중앙을 차지하고자 하는 백의 d4를 저지하고자 두는 수가 크게 위와 같이 두가지로 나뉜다. - d5 - Nf6 다른 수를 둔다면 위와 같이 중앙을 백에게 쉽게 내줄 것이다. 백이 중앙을 차지 ..

체스/오프닝 2022.01.24