WEB(14)
-
Dreamhack [web] devtools-sources
웹 워게임 문제입니다. 문제 파일 많다..... flag는 쉽게 찾을 수 있다.html에 접속 후 개발자 도구에 들어가서 sources 확인ctrl+f12 통해 DH{ ... } 찾으면 .... 하나의 html에만 있을 줄 알았던 flag는 여러 곳에 존재했다.
2024.05.21 -
5월 Space War [web]
1월부터 열렸던 Hspace에서 주최하는 CFT에 참여하였는데 write-up을 이제야 쓴다...ㅎㅎCTF가 열리고 끝나는 시간동안 오로지 CTF에만 집중하고 싶다....1. Scroll_Master 9번째로 풀었다. *^^* 문제는 비교적 쉬웠고, 신박했다ㅋㄷㅋㄷㅋㄷ Inspired by Click Master, I created Scroll Master. Please continue scrolling the mouse. "Scroll Master"를 보고 영감을 받아 "스크롤 마스터"를 만들었어. 마우스를 계속 스크롤해 보세요. 서버에 접속하자. 이런 화면이 뜨고 스크롤은 할 수 없는 상태다.다른 문제파일도 없으니 소스코드를 확인해보자 개발자 도구를 사용해 소스코드를 확인하는 중 특이점을 발견했..
2024.05.13 -
[WEB] SSRF
HTTP 라이브러리PHP : php-curlNodeJS : httppython : urllib, requests => HTTP 요청을 보낼 client 뿐만 아니라 server와 server간 통신을 위해 사용되기도 한다. SSRF (Server-Side Request Forgery)웹 서비스의 요청을 변조하는 취약점브라우저가 변조된 요청을 보내는 CSRF와는 다르게 웹 서비스의 권한으로 변조된 요청을 보낼 수 있다. 웹 서비스가 보내는 요청을 변조하기 위해서는 요청 내에 이용자의 입력값이 포함돼야 한다. ex1) 웹 서비스가 이용자가 입력한 URL에 요청을 보내는 경우image_downloader이용자가 입력한 image_url을 requests.get 함수를 사용해 GET 메소드로 HTTP 요청을 보..
2024.05.06 -
[WEB] File Vulnerability
File Vulnerability 파일 취약점 File Upload Vulnerability웹 서비스를 통해 파일을 서버의 파일 시스템에 업로드하는 과정에서 발생하는 보안 취약점업로드될 파일의 이름을 임의로 정할 수 있을 때 발생- 파일 이름에 이용자가 입력한 문자열을 그대로 사용- 이용자의 이메일, 닉네임 등을 포함시키는 등의 소스 코드 패턴 Path Traversal 취약점특정 디렉터리에만 업로드를 허용하는 제약을 우회하여, 임의 디렉터리에 파일을 업로드 할 수 있는 취약점@app.route('/fileUpload', methods = ['GET', 'POST'])def upload_file(): if request.method == 'POST': //POST 요청을 받으면 f = request..
2024.05.06 -
[WEB] command injection
injection악의적인 데이터를 프로그램에 입력하여 이를 시스템 명령어, 코드, 데이터베이스 쿼리 등으로 실행되게 하는 기법 command injection이용자의 입력을 시스템 명령어로 실행하게 하는 취약점명령어를 실행하는 함수에 이용자가 임의의 인자를 전달할 수 있을 때 발생함 파이썬 웹 애플리케이션에서 입력한 임의 IP에 ping 전송하고 싶을 때 os.system("ping [user-input]") 임의 파일을 읽고 싶을 때 os.system("cat [user-input]") 메타문자 ' ' 명령어 치환 $() 명령어 치환 && 명령어 연속 실행 || 명령어 연속 실행 ; 명령어 구분자 | 파이프 : 앞 명령어의 결과가 뒷 명령어의 입력으로 들어감
2024.03.06 -
[WEB] cookie & session
cookiekey와 value로 이뤄진 일종의 단위서버가 클라이언트에게 쿠키를 발급하면, 클리이언트는 서버에 요청을 보낼 때마다 쿠리를 같이 전송클라이언트의 정보 기록과 상태 정보를 표현하는 용도로 사용클라이언트의 브라우저에 저장되고 요청에 포함되는 정보클라이언트는 쿠키 정보를 변조해 서버에 요청을 보낼 수 있음 session쿠키에 인증 상태를 저장하지만 클라이언트가 인증 정보를 변조할 수 없게 하기 위해 사용인증 정보를 서버에 저장하고 해당 데이터에 접근할 수 있는 키(==session ID)를 만들어 클라이언트에 전달하는 방식으로 작동> 브라우저는 session ID를 쿠키에 저장하고 이후에 HTTP 요청을 보낼 때 사용> 서버는 요청에 포함된 키에 해당하는 데이터를 가져와 인증 상태를 확인 sess..
2023.10.13