웹 보안 20

[Dreamhack] File Vulnerability 복습

File Upload Vulnerability- 공격자의 파일을 웹 서비스의 파일 시스템에 업로드하는 과정에서 발생하는 보안 취약점입니다. 파일 시스템 상 임의 경로에 원하는 파일을 업로드하거나 악성 확장자를 갖는 파일을 업로드할 수 있을 때 발생합니다. 원하는 시스템 커맨드를 실행하는 원격 코드 실행 취약점을 유발할 수 있습니다. File Download Vulnerability- 웹 서비스의 파일 시스템에 존재하는 파일을 다운로드 하는 과정에서 발생하는 보안 취약점입니다. 공격자는 웹 서비스의 파일 시스템에 존재하는 임의 파일을 다운로드 받을 수 있습니다. 설정 파일, 패스워드 파일, 데이터 베이스 백업 본 등을 다운로드 하여 민감한 정보를 탈취할 수 있고 2차 공격을 수행할 수 있습니다. Path ..

웹 보안 2024.05.16

[Dreamhack] command injection 복습

command injection  -인젝션은 악의적인 데이터를 프로그램에 입력하여 이를 시스템 명령어 코드, 데이터베이스, 쿼리 등으로 실행되게 하는 기법을 말합니다. - 명령어를 실행하는 함수에 이용자가 임의의 인자를 전달 할 수 있을 때 발생. 메타문자'' - 명령어 치환 - 안에 들어있는 명령어를 실행한 결과로 치환됩니다.$() - 명령어 치환 - 안에 들어있는 명령어를 실행한 결과로 치환됩니다. 이 문자는 위와 다르게 중복 사용이 가능합니다. && - 명령어 연속 실행 - 앞 명령어에서 에러가 발생하지 않아야 뒷 명령어를 실행합니다.ㅣㅣ - 명령어 연속 실행 - 한 줄에 여러 명령어를 사용하고 싶을 때 사용합니다. 앞 명령어에서 에러가 발생해야 뒷 명령어를 실행합니다.; - 명령어 구분자 - 한 ..

웹 보안 2024.05.16

5/7 최신동향 (정형,비정형 데이터 가명처리)

https://www.hani.co.kr/arti/economy/economy_general/1127152.html ‘내 CT사진’ AI가 맘대로 쓴다고?…의료 민감정보 활용, 물꼬 튼다개인정보보호위원회가 이미지·영상·음성 등 정해진 규격이나 형태가 없는 ‘비정형 데이터’의 가명처리 가이드라인을 내놨다. ‘민감정보’로 간주되는 의료 데이터도 포함됐는데, 시티(CT)www.hani.co.kr> 이미지 내 있는 환자 정보가 결합되어 분석될 경우 개인이 특정될 수 있었음> 이런경우 블랙마스킹 처리를 통해 가림> 흉부 ct 사진 > 개인식별 위험성이 거의 없음 > 환경을 통제 > 가명처리 없이 활용 가능 정형 데이터 vs 비정형데이터 정형 데이터는 주민번호, 전화번호, 주소 등 과 같이 개인식별 위험이 있는 정..

웹 보안 2024.05.13

Dreamhack 워게임 (session)

문제 설명 쿠키와 세션으로 인증 상태를 관리하는 간단한 로그인 서비스입니다. admin 계정으로 로그인에 성공하면 플래그를 획득할 수 있습니다. 코드를 살펴보면 guest guest 처럼 아는 아이디와 비밀번호가 있고 admin이 아이디일때 flag를 획득할 수 있는 것을 확인 할 수 있다. 그래서 공개된 정보인 guest guest로 먼저 로그인 해봤다. 그리고 우리가 admin으로 로그인을 하려면 session_id가 필요하고 그에 대한 정보를 코드에서 볼 수 있다. 버프 스위트에서 서버를 다시 열어준다. 우리는 cookie의 sessionid 값이 중요하니까 일단 request 값을 intruder로 보내준다. 그리고 우리가 바꿀 부분만 add처리 해준다. 설정 brute forcer로 바꿔주고 캐..

웹 보안 2024.04.02

Dreamhack 워게임 (pathtraversal)

문제 설명 사용자의 정보를 조회하는 API 서버입니다. Path Traversal 취약점을 이용해 /api/flag에 있는 플래그를 획득하세요! 문제 코드에 있는 /get_info 코드를 보고 userid 입력란에 입력한 값은 /api/user/{userid}로 나오는 것을 알 수 있다. flag가 위치하는 경로로 접근하려면 userid 칸에 ../flag를 입력해야한다. 그래서 userid칸에 ../flag를 입력했는데 정보가 뜨지 않는 것을 확인할 수 있었다. 이를 해결하기 위해 버프 스위트 내부에서 위 서버를 다시 열고 ../flag를 입력해보았다. 버프 스위크에서 서버 여는 법은 여기서 open browser해주면 된다. request 창을 보면 userid가 undefined되어 있는 것을 확인..

웹 보안 2024.04.02

Dreamhack (web-ssrf)

문제 설명 flask로 작성된 image viewer 서비스 입니다. SSRF 취약점을 이용해 플래그를 획득하세요. 플래그는 /app/flag.txt에 있습니다. burp suite 들어가서 설정해주기 post 오른쪽 마우스 눌러서 send to intruder로 보내주고 intruder에 주황불 들어오면 넘어가서 이렇게 설정해준다. 실행시키고 다른길이가 뜰 때까지 기다리면 됨 9번에서 떠서 번호가 1508인걸 알 수 있음. 1500~1800까지 랜덤으로 나오기에 기다려서 알아내면 됨. url에 http://Localhost:8000/flag.txt 를 넣어주는데 8000번을 내가 나온 번호로 넣어주면 된다. 여기서 http://Localhost:1508/flag.txt 해서 view 넣어주고 개발자도구..

웹 보안 2024.03.28

Dreamhack 워게임(file-download-1)

문제 설명 File Download 취약점이 존재하는 웹 서비스입니다. flag.py를 다운로드 받으면 플래그를 획득할 수 있습니다. 다운로드 받은 코드를 살펴보면 read에서는 검사 안해서 파일 다운로드 공격에 취약함 ../flag.py 를 하면 코드에 find 함수로 인해서 아래와 같이 뜸 걸러진 것을 알 수 있음. 코드가 잘 작동하고 있구나~ 아무 파일이나 쳐서 다시 들어가보자. 여기서 보면 지금 read?name=flag.py 라고 되어있는데 이 부분을 고치면 flag를 얻을 수 있다. 아까 ../flag.py를 하면 find 함수로 인해서 걸려졌는데 이제 read로 시작하는 곳에서 읽는 거니까 코드에서 확인한거와 같이 ../flag.py가 실행 가능하게 된다는 것을 알 수 있다.

웹 보안 2024.03.26

Dreamhack 워게임(SQL Injection)

문제 설명 로그인 서비스입니다. SQL INJECTION 취약점을 통해 플래그를 획득하세요. 플래그는 flag.txt, FLAG 변수에 있습니다. Hint ‘-- (“--),-- 에서 더블 대쉬는 쿼리 이후의 부분을 무시하도록 한다. -> Password 입력 부분을 없애버림 userid : admin"-- "-- 더블 대쉬가 뒤에 패스워드 삭제 하는 역할을 하기 때문에 password : 1 (아무거나 입력해도 됨)

웹 보안 2024.03.25

Dreamhack 워게임(command-injection-1)

문제 특정 Host에 ping 패킷을 보내는 서비스입니다. Command Injection을 통해 플래그를 획득하세요. 플래그는 flag.py에 있습니다. 문제 파일을 확인하고 Hint •Cat 명령어를 활용해 flag.py 내용 화면에 출력하기 •앞 뒤로 따옴표 처리 •“요청한 형식과 일치시키세요” —> 개발자 도구에서 제어 •여러 명령어를 실행시킬 수 있는 메타문자 활용 완성된 명령어 : ping -c 3 “”앞 명령어 (메타문자) 뒷 명령어”” Host에 그냥 8.8.8.8";cat flag.py # 를 입력하면 형식에 맞게 쓰라고 나온다. 요청한 형식에 맞춰서 문제를 해결할 수 없기에 개발자 도구에 들어가서 pattern 부분을 싹 지워준다. 형식을 없애준 것이다. 그리고 다시 Host에 입력하고..

웹 보안 2024.03.25