웹해킹/DVWA (33) 썸네일형 리스트형 DVWA Blind SQL Injection(low) 롸업 창은 이전의 SQL Injection 문제와 동일하다. Blind SQL Injection은 SQL 쿼리의 참, 거짓으로만 DB 구조를 파악해서 공격하는 기법이다. 'or 1=1# 이렇게 넣으면 참이 반환되고 'or 1=2# 이렇게 넣으면 거짓이 반환된다. 우선 데이터베이스를 구성하면 column의 개수를 알아내기 위해서 union select 구문을 사용할 것이다. union은 두 개의 구문의 결과를 합쳐서 반환해준다. 각 SELECT문은 동일한 column 개수를 가져야 하기 때문에 column 개수를 찾을 수 있다. 이렇게 select에 column을 하나만 넣으면 에러가 발생하고 두 개를 넣으면 참이 반환된다. column 개수는 2개임을 찾았다. 이제 데이터베이스 이름을 찾는다. 1' and l.. DVWA SQL Injection(low) 롸업 userid를 입력할 수 있는 창이 있다. DVWA Insecure CAPTCHA(low) 롸업 CSRF에서 보던 것과 똑같이 비밀번호를 바꿀 수 있는 페이지가 있는데 캡차를 해야 하는 기능이 추가되었다. DVWA File Upload(low) 롸업 파일을 업로드할 수 있는 기능이 있다. 구성 코드이다. 아무 파일이나 선택해서 업로드하면 hackable/uploads/ 폴더에 업로드되었다고 뜬다. 찾아가 보면 이렇게 업로드 된 것을 볼 수 있다. 파일 형식을 검사하지 않기 때문에 이미지 파일이 아니라 텍스트 파일도 올라갔다. 이를 이용해 php 웹 셸 코드를 올린다. DVWA File Inclusion(low) 롸업 file inclusion은 다른 파일을 소스 코드에 직접 삽입할 수 있고, 사용자가 웹 요청을 통해 include 할 파일을 직접 설정할 수 있는 경우에 발생하는 취약점입니다. 이런 식으로 파일을 클릭하면 url 링크에 page=파일 이름 이런 식으로 요청이 보내지게 된다. url에서 파일 이름을 바꾸면 원하는 파일을 불러와 실행할 수 있게 된다. xampp의 htdocs->DVWA->vulnerabilities->fi 폴더 안에 test.php파일을 만들고 이런 식으로 php 코드를 넣고 링크에 test.php를 넣으면 실행이 된다. DVWA CSRF(low) 롸업 ' . ((is_object($GLOBALS["___mysqli_ston"])) ? mysqli_error($GLOBALS["___mysqli_ston"]) : (($___mysqli_res = mysqli_connect_error()) ? $___mysqli_res : false)) . '' ); // Feedback for the user echo "Password Changed."; } else { // Issue with passwords matching echo "Passwords did not match."; } ((is_null($___mysqli_res = mysqli_close($GLOBALS["___mysqli_st.. DVWA Command Injection(low) 롸업 ip 주소를 입력하는 창이 있다. 이런 코드로 구성되어 있다. 그냥 단순하게 ping 명령어를 실행해주는데 shell_exec 함수가 별도의 검사 없이 입력값을 그대로 실행하기 때문에 127.0.0.1; ipconfig 127.0.0.1 && dir 이렇게 ;, && 등을 이용해서 ipconfig나 dir 등의 윈도우 명령어를 마음대로 사용할 수 있다. DVWA Brute Force(low) 롸업 username과 password를 입력해서 login을 하는 시스템이 있다. More Information에 있는 링크들이 공격 방법에 대한 힌트들인 것 같다. 아래에 view source 버튼으로 소스 코드를 볼 수 있다. 이전 1 2 3 4 5 다음