본문 바로가기

Study/CTF6

[Dream Hack] CSRF Advanced CSRF (Client Side Request Forgery)CSRF는 클라이언트 측에서 발생하는 취약점으로 임의 이용자의 권한으로 임의 주소에 HTTP 요청을 보낼 수 있는 취약점이다.예를들어 다른 사람이 직접 로그인하여 admin의 권한을 행사 할 수는 없으니 악의적인 코드를 심어놓고 타겟이 방문하기를 기다리다가방문하면 악의적인 스크립트가 방문한 이용자(admin)의 권한으로 공격자가 유도한 행위를 하게끔 만드는 것이다. 대표적으로 img 태그를 활용할 수 있다. img 태그는 내부 이미지 뿐만 아니라 외부 링크에 요청하여 이미지 소스를 넣을 수 있는데이를 악용하여 img 태그를 사용해 임의의 요청을 보낼 수 있다. 위 코드처럼 만약 /change_password라는 로컬 페이지에서 사용자 비밀번호를.. 2024. 5. 16.
[Dream Hack] XSS-1, XSS Filtering Bypass 크로스 사이트 스크립팅 (Cross-site scripting (XSS))크로스 사이트 스크립팅 (XSS)은 공격자가 웹사이트에 악성 클라이언트 사이드 코드를 삽입할 수 있도록 하는 보안 취약점 공격입니다. 이 악성 코드는 피해자에 의해 실행되며 공격자가 접근 제어를 우회하고 사용자로 위장할 수 있게 만들어 줍니다. - mdn web docs 문제 설명Exercise: XSS Filtering Bypass에서 실습하는 문제입니다.XSS-1 문제 화면코드 vuln, memo, flag 각 3페이지로 나뉘는데 각각 페이지는 아래와 같이 동작한다.vuln취약점이 존재하는 페이지로 GET, param= 파라미터로 데이터를 입력 받아 화면에 뿌려준다.셀레늄과 Flask 동작 방식을 이해하지 못해 시간이 오래 걸렸.. 2024. 5. 15.
[Dream Hack] BypassIF 문제 설명Admin의 KEY가 필요합니다! 알맞은 KEY값을 입력하여 플래그를 획득하세요.문제 풀이  첫 화면1개의 input 값과 제출 버튼이 존재 고민없이 바로 코드부터 까보았다.처음에 이부분만 보고 보이는 폼은 1개인데 왜 폼은 2개인가?부터 시작하여 접근burf suite로 기존 key 파라미터를 cmd_input으로 보내보았다명령어 입력창이 새로 나왔다.이때 깨달았는데if cmd != '' or key == KEY :  이 구문이 cmd에 어떠한 값이 있다면 안의 코드가 실행 되는 구문이다이래서 문제 이름이 BypassIF인가 싶었다. ls 명령어 작성시 명령이 실행되는 것을 볼 수 있다.코드 윗 부분에서 파일을 읽는 명령어들은 필터링 하는 함수를 볼 수 있다.실제로 해당 명령어들은 무반응임을 .. 2024. 5. 14.
[Dreamhack] file-download-1 Dreamhack 웹 해킹 문제 - file-download-1문제풀이파일 다운로드 취약점이 존재한다고 알려주고있다파일 다운로드 취약점이라 함은우리가 웹 서버에 올려진 파일을 다운로드 받게 될 때 예를 들어/upload/file.txt라고 파일이 존재한다면 /index.html 링크로 브라우저에서 /upload/file.txt로 요청을 보낸다요청을 보내는 과정을 브라우저 상단에서 진행하므로 절대경로가 아닌 상대경로로 파일에 접근하게 된다면/upload/file.txt/../../../../../../../../etc/passwd와 같이 입력하여 시스템 내의 정보값을 노출 시킬수 있다 flask 프레임워크를 써보지 않아 100% 이해하지 못했지만 Filename form의 내용을 filename변수에 담아.. 2023. 6. 15.