개발자 (Developer)/Hacking CTF9 (File Upload CTF 풀이2) Web Shell 2 File Upload CTF 2 - Web Shell 2 사전 정보 : 서버를 장악하고! 그 안에 중요한 시크릿 코드! flag를 찾으세요! flag.txt 에 있습니다! 이전 File Upload CTF 1 - Web Shell 문제와 같이 파일 업로드 문제이기 때문에 파일 업로드 하는 부분을 먼저 찾아야합니다. Web Shell 2 사이트 역시 로그인해서 게시글 쓸 때 파일 업로드할 수 있었습니다. 저번 문제에서 만든 ADDICT!ON.php 파일을 업로드 해보겠습니다. 해당 파일의 코드는 아래와 같습니다. 아래 사진과 같이 업로드 해보니 확장자 필터링을 하고 있다는 것을 알 수 있습니다. 요청 HTML 코드를 확인해보니 아래 사진과 같이 jpg, jpeg, png, gif, bmp, txt의 확장자.. 2023. 6. 2. (File Upload CTF 풀이1) Web Shell File Upload CTF 1 - Web Shell 사전 정보 : 서버 내에 중요한 정보! flag를 찾아내세요! :) flag.txt 파일 안에 있습니다! 사전 정보는 하고 서버 내에 flag.txt 라는 파일 안에 있다고 flag가 있다고 합니다. 그리고 CTF 자체가 File upload이기 때문에 일단 파일 업로드할 수 있는 곳을 사이트에서 찾아야 합니다. 해당 웹 사이트에서 돌아다니다가 파일 업로드하는 곳을 찾았습니다. 회원가입하고 로그인해서 게시판에 들어가니 있었습니다. 이제 악성코드를 심은 파일을 업로드해 보겠습니다. ADDICT!ON.php라는 파일을 만들고 아래의 코드를 입력하고 저장합니다. (파일 이름은 개인의 취향에 따라..) 악성코드가 삽입된 파일을 파일 업로드하는 곳에서 파일 업.. 2023. 6. 2. (SQL Injection CTF 풀이2) Login Bypass 2 - 인증과 식별 2 SQL Injection CTF 2 - Login Bypass2 ※ 로그인 바이패스의 경우 SQL Injection CTF - DB 데이터 추출 이전의 문제입니다. 참고해주세요. 사전 정보 : normaltic2 계정으로 로그인해보자! 우리의 아이디/비밀번호 : mario / mariosuper 사이트 들어가 봅시다. 전에 했던 로그인 바이패스 1 CTF처럼 로그인해서 인증과 식별이 동시에 이루어 지는지 아니면 분리하는지 먼저 알아보도록 하겠습니다. 인증/식별 동시 or 분리에 대한 자세한 설명은 3주차 SQL 게시글, 로그인 바이패스 1 게시글에서 확인해보시기 바랍니다. 전에 했던 로그인 바이패스 1 방식인 인증/식별 분리 방식에서 사용하는 전략을 아래 화면과 같이 normaltic2' OR '1'='.. 2023. 4. 26. (SQL Injection CTF 풀이1) Login Bypass 1 - 인증과 식별 1 SQL Injection CTF 1 - Login Bypass 1 ※ 로그인 바이패스의 경우 SQL Injection CTF - DB 데이터 추출 이전의 문제입니다. 참고해 주세요. 사전 정보 : normaltic1 계정으로 로그인해 보자! 우리의 아이디/비밀번호 : mario / mariosuper 사이트 들어가 봅시다. 로그인해서 인증과 식별이 동시에 이루어지는지 아니면 분리하는지 먼저 알아보도록 하겠습니다. SELECT [컬럼] FROM [테이블] WHERE id='???' AND pw='???'으로 이루어져 있다면 인증과 식별이 동시에 하는 방식일 것이고, SELECT [컬럼] FROM [테이블] WHERE id='???' 으로 이루어져 있다면 인증과 식별을 분리하는 방식일 것입니다. 제가 만약 .. 2023. 4. 26. (SQL Injection CTF 풀이4) DB 데이터 추출 2 - Error Based SQL Injection SQL Injection CTF 4 - DB 데이터 추출 2 사전 정보 : 로그인 페이지를 만났다! 이 서버에 연결된 DB를 털어라! DB안에 있는 flag를 찾으세요! :) 일단 사이트를 들어가 봅시다. 전에 했던 CTF - DB 데이터 추출 1처럼 배운 순서대로 해보겠습니다. 1. 추리 로그인 같은 경우 DB 데이터를 안 띄워주는 방식입니다. 그 이유는 아래의 사진과 같이 로그인을 하면 서버에 ID와 Password을 쿠키에 담아서 요청을 보냅니다. 그럼 서버에 있는 WAS에서 DB의 데이터를 불러와서 비교하고, ID와 Password가 일치한지 확인합니다. 일치하면 로그인 성공을 응답하고, 일치하지 않으면 로그인 실패를 응답합니다. 클라이언트는 DB의 데이터를 전혀 받지 않습니다. DB 데이터를 안.. 2023. 4. 23. (SQL Injection CTF 풀이3) DB 데이터 추출 1 - UNION SQL Injection SQL Injection CTF 3 - DB 데이터 추출 1 사전 정보 : DB 내에 숨겨진 Flag를 찾으세요! 일단 사이트를 들어가 봅시다. 유저 아이디 검색하는 페이지인가 봅니다. 어제 배운 방식대로 순서대로 가봅시다!! 1. 추리 일단 화면에 DB 데이터를 띄워주는 것을 보아 UNION SQLi 전략으로 가야겠습니다. 아이디 검색하는 페이지이니 SELECT ??? FROM '???' WHERE id='???' 이러한 방식으로 쿼리가 코딩되어 있지 않을까 예상해봅니다. 2. 취약점 일단 입력창에 쿼리를 작성해서 입력했을 때 쿼리가 실행이 잘 되는지 판단해봅니다. 아래와 같이 입력했을 때 bello의 정보가 떴습니다. bello' AND 1=1 # 하지만 bello' AND 1=0 #을 입력했을 땐 .. 2023. 4. 22. (인증 CTF 풀이3) 로그인 우회 - Referer 변조 인증 CTF 3 - 로그인 우회 사용 툴은 Burp Suite(버프라 부르겠습니다.)입니다. 사전 정보 : 여러분들의 계정은 mario입니다. 비밀번호는 mariosuper이고요! 하지만, admin 계정으로 로그인해야 합니다. 일단 사이트를 들어가 봅시다. 로그인 사이트고, 로그인 바로 해보겠습니다. 바로 Proxy - HTTP history 탭을 볼게요. 수상한 로그가.... 아하 여기 뭔가 수상하네요. 계정 정보를 일단 GET으로 보내서 URL에 노출되어 있네요. 그리고 Referer부분에 URL 경로가 있는데 Referer은 어떤 주소에서 요청되었는지 알 수 있습니다. 만약 userId=mario에서 userId=admin으로 바꾸고, Referer에선 ~/4/login.php를 로그인이 된 UR.. 2023. 4. 10. (인증 CTF 풀이2) OTP 우회 인증 CTF 2 - OTP 우회 사용 툴은 Burp Suite(버프라 부르겠습니다.)입니다. 사전 정보 : OTP 인증을 뛰어넘으세요! 일단 사이트를 들어가 봅시다. 오... 핵미사일을 발사하는 시스템인가 보네요. Fire 버튼을 한번 눌러볼게요. 한번 더 눌러볼까요? 오호 드디어 관리자 인증 비밀번호를 입력하는 곳이 나왔네요. 비밀번호 요청/응답이 어떻게 받는지 알기 위해 비밀번호 입력칸에 "1234"만 입력하고 인증 버튼 눌러볼게요. 그리고 버프 Proxy - HTTP history 탭에서 요청/응답이 어떻게 이루어지는지 봅시다. 비밀번호인데 POST 메서드가 아니라 GET 메서드로 보냈네요... 흠..... GET 메소드로 보내서 URL에 admin_pass=1234라는 비밀번호가 노출되어 보이는 .. 2023. 4. 9. (인증 CTF 풀이1) Get Admin - 쿠키 변조 인증 CTF 1 - Get Admin 드디어 처음 해킹을 시작합니다. 두근두근하네요. 챌린지 첫 번째 문제는 사이트 오류로 인해 패스!! 두 번째 문제 인증 CTF - Get Admin 시작합니다. 사용 툴은 Burp Suite(버프라 부르겠습니다.)입니다. 사전 정보 : 여러분들의 계정은 mario입니다. 비밀번호는 mariosuper 이구요! 하지만, admin 계정으로 로그인해야 합니다. 일단 사이트를 들어가 봅시다. 로그인 사이트가 나오네요. 일단 사전 정보에서 저의 계정은 mario라고 했으니 로그인해 볼게요. 로그인을 하면 User Name : mario라고 나와있듯이 mario 계정임을 확인할 수 있네요. 요청/응답에서 취약점을 한번 있는지 확인해야겠네요. 클라이언트와 서버의 요청/응답으로 .. 2023. 4. 8. 이전 1 다음