본문 바로가기
반응형

전체 글607

[WEB HACKING] 제로보드 설치 / 제로보드 XSS( Cross Site Scripting ) 취약점 제로보드 설치 / 제로보드 XSS( Cross Site Scripting ) 취약점에 대해서 정리한다. 제로보드 설치 1. 클라이언트측 언어를 이용한 취약점 2. 서버측 언어를 이용한 취약점 3. SQL을 이용한 취약점 1. 제로보드 다운로드 #> wget http://192.168.12.186/zboard.tar 설치 경로: /var/www/html 2. 설치 페이지 접속 웹 브라우저: http://ip/zboard/install.php ( 제로보드가 옛날에 나온거라서 설치를 진행하기 위해서는 이전에 설정을 해줘야 되는 부분이 여러가지가 존재한다.. ) * 글자가 깨져서 나오거나 무한 refresh 되는 경우에는 설정을 통해서 수정이 가능하다. ( /etc/php.ini 설정파일에서 229 short_.. 2017. 8. 30.
[WEB HACKING] 게시판 만들기(4) 전체 코드 게시판 만들기(4) 코드에 대해서 정리한다. - 클라이언트 언어로는 HTML, JAVASCRIPT 사용 - 서버 언어로는 PHP 사용 - DB는 MySQL 사용 * 조금더 완성도를 높이기 위해서 처리할 부분들은 많이 있지만 게시판을 만들어보면서 게시판 동작 과정에 대해서 이해하려고 하였고 추후에 시간이 된다면 게시판 기능을 조금더 보완해볼 생각이다.. index.php 메인 페이지 write.php 글쓰기 페이지 signup.php 회원가입 페이지 - 게시판 전체 코드 index.php Toggle navigation 게시판 Sign in Sign out 번호 게시글 제목 작성자 작성시간 2017. 8. 29.
[WEB HACKING] 게시판 만들기(3) 로그아웃 기능 / 글쓰기 기능 / 페이징 처리 게시판 만들기(3) 로그아웃 기능 / 글쓰기 기능 / 페이징 처리에 대해서 정리한다. 3. write.php / write_ok.php 1). write.php - 입력 폼 2). write_ok.php - 입력 폼으로부터 데이터를 전달받아서 디비에 저장 - board 테이블: 게시글 번호(식별자), 게시글 제목, 게시글 본문, 글 작성자, 작성 시간( 자동으로 처리 ) - db 복구 방법 1). 기존 DB의 데이터는 삭제2). DB가 없으면 먼저 생성 #>mysql -u root -p 디비이름 < backup.sql ( 로그아웃 기능을 확인하기 위해서 가입된 사용자로 로그인을 했고 정상적인 로그인을 알려주는 alert창이 나오게 된다 ) ( 오른쪽에 있는 코드는 signout.php의 코드로써 inde.. 2017. 8. 29.
[WEB HACKING] 게시판 만들기(2) 메인 페이지 / 로그인 구현하기 / DB 연결 페이지 게시판 만들기(2) 메인 페이지 / 로그인 구현하기 / DB 연결 페이지에 대해서 정리한다. 2. sign in( 로그인 ) - signin.php - session 테이블에 로그인된 사용자의 정보를 저장 - 사용자 번호, 사용자 아이디, 세션 번호(session_id()) ( 부트스트랩을 이용해서 index.php의 디자인과 뼈대를 구성해줬다 ) ( index.php 페이지에서 id, pw를 입력해서 signin.php 페이지로 전송하게 되고 그 값이잘 전송이 되는지를 $_POST에 들어있는 내용을 출력해보면 알 수 있다 ) ( 위 그림을 보면 user_id와 user_pw에 대한 정보가 정상적으로 signin.php로 전달이 되는걸 볼 수 있다 ) ( 로그인된 사용자의 no, 사용자 아이디와 세션 아.. 2017. 8. 29.
[WEB HACKING] 게시판 만들기(1) 시나리오 / 회원가입 페이지 만들기 게시판 만들기(1) 시나리오 / 회원가입 페이지 만들기에 대해서 정리한다. 게시판 만들기(1) 시나리오 1. 사용자는 회원가입 후에 로그인할 수 있다. 2. 이미 가입된 사용자의 아이디는 사용할 수 없다. 3. 중복 로그인은 허용하지 않는다. 4. 로그인 하지 않은 사용자도 게시글 목록을 볼 수 있다. 5. 로그인 하지 않는 사용자는 게시글 내용을 보거나, 작성할 수 없다. 6. 로그인한 사용자는 게시글 내용을 볼 수 있으며, 게시글을 작성할 수 있다. 7. 로그인한 사용자는 자기가 작성한 게시글에 대해서 수정이나 삭제가 가능하다. 세부 기능 1. 회원가입 - 사용자 아이디, 사용자 패스워드, 이메일 - 아이디 중복체크 기능 - 공백은 허용하지 않음 2. 로그인 - 사용자 아이디, 사용자 패스워드 - 이.. 2017. 8. 29.
[WEB HACKING] DB SQL( DDL / DML / DCL ) 개념 / MySQL 설정 및 DB Query DB SQL( DDL / DML / DCL ) 개념 / MySQL 설정 및 DB Query에 대해서 정리한다. DBMS( DataBase Management System ) - 데이터를 관리하는 체계 - 데이터 관리 프로그램 - MySQL, ORACLE, DB2, ... - MariaDB SQL( Structured Query Language ) - DBMS에서 사용할 수 있는 언어 - 거의 대부분의 DBMS가 지원 1. DDL ( Data Definition Language ) - 데이터 정의어 - 실제 데이터의 변경은 불가능 - CREATE, DROP, ALTER, ... 2. DML ( Data Manipulation Language ) - 데이터 조작어 - 실제 데이터의 변경이 가능 - 입력, 확.. 2017. 8. 29.
[WEB HACKING] php 간단한 로그인 창 만들기 / 쿠키 & 세션 이용방법 php 간단한 로그인 창 만들기 / 쿠키 & 세션 이용방법에 대해서 정리한다. php 간단한 로그인 창 만들기 * meta 태그를 이용하면 로그인이 성공하던지 실패 하던지간에 해당 창이 다시 원래 페이지로 돌아오도록 할 수 있다. ( 연관배열을 이용해서 id와 pw가 배열안에 있는 key와 value값과 일치하면 login succes라는 alert창을 띄워준다 ) ( 연관배열안에 해당 id 혹은 pw가 일치하지 않았기 때문에 login failure라는 alert창을 띄운다 ) 1. 쿠키를 사용한 사용자 인증 - 쿠키를 굽는다. - setcookie(): 쿠키 발행 함수 2. 단점 - 사용자의 개인정보가 로컬 컴퓨터에 남는다. - 쿠키의 유효기간동안은 재인증 없이 사용이 가능 ( php 공식 홈페이지를.. 2017. 8. 29.
[WEB HACKING] php 연관 배열, foreach / 데이터를 서버로 전달하는 방법( GET / POST / 쿠키 ) / 웹 인증 방법 php 연관 배열, foreach / 데이터를 서버로 전달하는 방법( GET / POST / 쿠키 ) / 웹 인증 방법에 대해서 정리한다. PHP - 일반 변수, 슈퍼 글로벌스 변수 - print_r() 함수를 이용해서 배열 안에 있는 전체 원소를 볼 수 있다. 1. 연관 배열 - 파이썬의 dict 타입과 유사한 형태 ( 파이선의 dict처럼 key를 이용해서 해당 value 값을 가져올 수 있다 ) 2. 멀티 배열 - 배열 안에 배열을 넣는 형태 ( 멀티배열은 다중배열과 같고 배열안에 배열을 넣어서 다차원으로 배열을 사용할 수 있는 방법이다 ) foreach문 foreach ( $arr as $value ) { 실행할 코드; } ( foreach문을 위와 같은 형식으로 사용하게 되면 배열의 value를.. 2017. 8. 17.