반응형

취약점 16

드림핵 XSS Filtering Bypass WriteUp

문제 설명 XSS Filtering Bypass에 대한 문제이다. 이를 통해 크로스 사이트 스크립팅 취약점을 이용하여 문제를 해결해야함을 알 수 있다. 메인페이지에 접속을 하면 vuln, memo, flag에 대한 페이지에 접근할 수 있다. 먼제 vuln에 대해 살펴보겠다. vuln 페이지 소스코드 @app.route("/vuln") def vuln(): param = request.args.get("param", "") param = xss_filter(param) return param vuln 페이지는 param이라는 인자를 받아 xss_filter함수를 통해 필터링을 진행한 후 그대로 출력해준다. xss_filter을 살펴보자!! xss_filter 함수 소스코드 def xss_filter(tex..

Lab: SQL injection vulnerability in WHERE clause allowing retrieval of hidden data

This lab contains a SQL injection vulnerability in the product category filter. When the user selects a category, the application carries out a SQL query like the following SELECT * FROM products WHERE category = 'Gifts' AND released = 1 To solve the lab, perform a SQL injection attack that causes the application to display details of all products in any category, both released and unreleased. T..

드림핵 csrf-2 (Level1) Write up

문제 설명 https://dreamhack.io/wargame/challenges/269/ csrf-2 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. CSRF 취약점을 이용해 플래그를 획득하세요. Reference Client-side Basic dreamhack.io 위 사이트에서 해당 문제를 풀 수 있다. CSRF 취약점을 이용하여 플래그를 획득하면 된다. login 하라고 한다. 먼저 코드를 분석해보자!! users = { 'guest': 'guest', 'admin': FLAG } user의 id와 password가 주어져있다. admin의 password는 flag라고 되어있으니 guest로 로그인을 진행한다. guest로 로그인을 진행하니 admin이 아니라고 한다. adm..

드림핵 csrf-1 (Level1) Write up

문제 설명 https://dreamhack.io/wargame/challenges/26/ csrf-1 여러 기능과 입력받은 URL을 확인하는 봇이 구현된 서비스입니다. CSRF 취약점을 이용해 플래그를 획득하세요. Reference Client-side Basic dreamhack.io 위 사이트에서 해당 문제를 풀 수 있다. CSRF 취약점을 이용하여 플래그를 획득하면 된다. 사이트에 접속을 하면 vuln(csrf) page, memo, notice flag, flag 페이지가 있다. vuln(csrf) page는 파라미터에 스크립트를 삽입하여 취약점을 실습을 할 수 있는 페이지이고 memo는 request를 받은것을 메모해주는 페이지이다. notice flag는 admin만 접근이 가능하다. flag..

[Hackerschool FTZ] - level 9 문제

문제 내용 /usr/bin/bof의 소스코드를 출력하고 있다. 소스코드 #include #include #include main(){ char buf2[10]; char buf[10]; printf("It can be overflow : "); fgets(buf,40,stdin); if ( strncmp(buf2, "go", 2) == 0 ) { printf("Good Skill!\n"); setreuid( 3010, 3010 ); system("/bin/bash"); } } 해당 소스코드를 해석하면 버퍼 2개가 선언되어 있고 fgets로 buf에 40바이트만큼 입력창에서 입력을 받고 있다. 그리고 buf2에 저장된 2바이트가 go문자랑 같으면 0을 리턴하므로 참이되어 Real User ID, Effec..

[Hackerschool FTZ] - level 6 문제

문제 내용 힌트에 인포샵 bbs의 텔넷 접속 메뉴에서 많이 사용되던 해킹기법이라고 나오고있다. 일단 enter를 눌러본다. 접속하고 싶은 bbs를 선택하라고 창이 뜬다. 1번을 한번 눌러보겠다. 입력을하니 아무것도 일어나지 않는다. 뭐지 싶어서 아까 힌트의 내용을 검색해 보았다. 인포샵 bbs란 인포샵 bbs는 옛날에 이용되던 사설 전자게시판이라고 한다. 사용자에게 주소를 입력받고 ping테스트 후 주소가 활성화 되어있으면 해당 주소에 연결해준다. 인포샵 bbs는 초기 접속화면에서 컨트롤+c를 누르면 바로 쉘이 떨어진다는 취약점을 가지고있다. 이를 바탕으로 초기 접속화면에서 컨트롤+c를 눌러서 쉘을 획득해보도록 하겠다. 초기 접속화면에서 컨트롤+c를 눌렀더니 쉘에 접근하였고 password파일을 읽어보니..

자바 역직렬화 취약점 공격

자바 역직렬화 취약점 공격 자바 역직렬화 취약점은 OWASP Top 10 2017에서 새롭게 선정되었다. 자바 역직렬화 취약점은 공격자가 원격에서 코드를 실행할 수 있느 RCE(Remote Code Execution) 공격으로 이어지기 때문에 매우 심각한 영향을 줄 수 있는 취약점이다!! 자바 프로그램상에서 어떤 객체가 생성되면 그 객체는 메모리에 상주하게되고, 프로그램이 실행되는 동안 필요에 따라 사용된다. 하지만 프로그램이 종료되면 메모리에 있던 객체는 사라지게된다. 객체는 지금까지 프로그램이 사용하면서 저장한 데이터가 있는데, 그 데이터를 다음 번 프로그램 실행시에도 계속 사용하여야 한다면 메모리에 있는 객체와 데이터를 파일이나 DB에 저장해야 할 것이다. 이때 저장을 하기위해 객체를 바이트 스트림..

반응형