전체 글
-
DB 데이터 추출 1CTF 문제/Segfault - Web 2023. 5. 2. 14:31
Segfault - DB 데이터 추출 1 문제 풀이입니다 1. 문제 사이트에 접속하면 위와 같은 화면이 나온다 2. nor을 입력하니 아래처럼 정상적으로 값이 나왔다 3. sql injection을 시도해 보니 정상적으로 값이 나왔다 4. UNION을 이용하기 위해 null을 사용하여 컬럼의 개수를 알아내었다 5. 데이터 베이스 이름을 알아내었다 6. 데이터베이스에서 테이블의 이름을 확인하였다 7. 위에서 얻어낸 테이블에서 컬럼의 이름을 알아내었다 8. 알아낸 테이블의 이름과 컬럼 이름을 이용하여 Flag를 획득하였다
-
blind sql injection advanced 문제풀이CTF 문제/Dreamhack - Web 2023. 5. 2. 10:14
Dreamhack 웹2 Stage 2 -> blind sql injection advanced 입니다 1. 문제페이지에 접속하니 위와 같이 나타났고 admin을 입력해 보았다 2. 함께하기 공부를 하면서 보았던 값들을 넣어보니 정상적으로 결과가 나타났다 3. 이상한 값을 보내니 위와 같은 에러도 볼 수 있었다 4. 함께하기에서 공부했던 [$regex]와 온점을 사용하여 위와 같이 admin이라는 결과를 얻었다 5. 숫자, 영어, 한글 로 비밀번호가 구성이 되어있다고 문제에 나와있어서 하나하나 다 시도해 보면 좋지만 시간이 너무 오래 걸려서 파이썬의 requests 모듈을 이용하여 Flag를 구했다 6. 위 코드는 드림핵 함께하기에서 나온코드이며 어떻게 진행이 되는지 순서대로 공부하기 좋다
-
error based sql injection 문제풀이CTF 문제/Dreamhack - Web 2023. 5. 2. 10:05
Dreamhack 웹2 Stage 2 -> error based sql injection 입니다 1. 문제 페이지로 접속하니 위와 같은 화면이 나왔다 2. admin을 넣어보니 정상적으로 쿼리가 실행되었으며 결과가 화면에 나타난다 3. 문법에러가 발생했다면서 데이터베이스에 대한 정보를 알려준다 4. 해당 데이터베이스에 Column이 몇 개인지 알아보았다 5. 알아본결과 3개의 Column을 가지고 있다 6. extractvalue를 이용하여 에러를 발생시켜 보았다 7. Flag가 출력이 되었지만 너무 길어서 뒤에는 ... 으로 나왔다 8. substr 과 limit을 이용하여 뒷자리를 출력해 주었다 9. 뒷자리까지 모두 나왔다
-
AES - 2Cryptography - Security/Dreamhack - Basic 2023. 5. 2. 09:40
AES 라운드 함수 SubBytes SubBytes는 배열의 각 바이트를 S-Box를 참조하여 치환하는 함수이며 바이트의 상위 4비트가 행, 하위 4비트가 열을 결정한다 예를 들어 어떤 바이트가 2A라면, 해당 바이트는 S-box의 2행 A열을 참조하여 E5로 치환된다 ShiftRows 이 함수는 4가지 함수 중에서 유일하게 순열의 역할을 수행한다 아래와 같이 2행은 왼쪽으로 1칸, 3행은 왼쪽으로 2칸, 4행은 왼쪽으로 3칸을 밀어준다 복호화할 때는 반대로 2행, 3행, 4행을 각각 오른쪽으로 1칸, 2칸, 3칸씩 밉니다 MixColumns 이 함수는 열 단위로 치환을 수행하는 함수이며 치환은 갈루아 필드 내에서의 행렬 연산으로 구해진다 위 사진에서 a만으로 구성된 배열은 오른쪽과 같이 나타낼 수 있다..
-
AES - 1Cryptography - Security/Dreamhack - Basic 2023. 5. 1. 23:50
AES란? AES(Advanced Encryption Standard)는 연산 능력의 향상으로 DES가 더 이상 안전하지 않게 되자, 2001년에 새롭게 표준으로 선정된 블록 암호 알고리즘이다 표준으로 선정된 이후부터 지금까지, AES에는 기밀성을 위협하는 치명적인 취약점이 발견되지 않았고 CPU 제조사들이 AES 연산을 위한 명령어를 따로 정의해 주어서 암호화, 복호화의 성능도 뛰어나다 AES의 설계 원리를 이해하려면 갈루아 필드(Galois Field)를 비롯하여 체(Field)와 군(Group)에 대한 이해가 필요하다 SPN AES는 SPN(Substitution Permutation Network)이라는 암호 구조를 사용한다 SPN은 곱 암호 중의 하나이다 S-Box를 사용하는 치환(Substit..
-
로그인 우회 - 2CTF 문제/Segfault - Web 2023. 4. 30. 12:02
Segfault - 로그인 우회 문제 풀이입니다 1. 아이디와 비밀번호가 주어졌고 admin으로 로그인을 해야 한다 2. 주어진 계정으로 로그인을 해 보았다 3. 아이디와 비밀번호가 입력이 되고 전송버튼을 눌렀다 4. 정상적으로 로그인이 되었고 위와 같은 이미지가 나타났다 5. 성공했을 때 11번째 줄에 result는 ok 이다 6. 실패했을 때는 result의 값이 fail이다 7. 그렇다면 result의 값을 ok 로 바꿔서 응답받도록 시도했다 8. fail을 ok로 바꿔서 정보를 보냈다 9. 다시 로그인 페이지로 돌아왔다 10. 로그인 완료 페이지로 이동하기 위해 응답값을 바꿔주기로 하였다 11. 응답값에 보면 다시 로그인 페이지로 돌아가라고 되어있는데 드래그해놓은 부분을 삭제했다 12. 다른 데는..