목록Web Hacking (59)
Information Security
부트스트랩(http://bootstrapk.com/)을 이용하여 게시판을 꾸미고 구축해볼 것이다. 부트스트랩을 빠르게 시작하기 위해서 부트스트랩을 다운로드 해준다. 다운로드한 파일의 압축을 해제한다. 파일 확인 게시판 구축 0. 데이터 베이스 simple_board DB 생성 user 테이블 생성 board 테이블 생성 1. 메인 페이지: main.php 예제들 중에 하나를 선택하여 게시판 메인 페이지를 작성할 것이다. 게시판 메인 페이지 작성 우리가 처음에 다운받은 파일(bootstrap-3.3.2-dist)에 위치하는 bootstrap.min.css 파일의 경로를 작성해주고, css 디렉터리에 jumbotron.css 파일을 저장한다. -그리고 회원 가입을 위해서 로그인(Sign in)버튼 옆에 [S..
인증 처리 1. 아파치 웹 서버를 통한 인증 -인증을 한 번 통과한 웹 브라우저는 켜져 있는 이상 다시 인증 요청을 하지 않는다. 아파치 설정 파일을 수정한다. ... ... 위와 같이 작성한 후 저장한다. 변경 내용 적용 -설정 파일에 명시한 AuthUserFile을 생성한다. -파일을 처음 생성하는 경우 -c(create) 옵션을 사용한다. 파일이 존재한다면 -c 옵션 없이 계정을 추가해준다. 파일의 내용 확인 -이제 /var/www/html 파일에 위치한 웹 페이지에 접근할 때 인증이 필요하게 된다. -.htpasswd 파일에 명시된 계정만 접근이 가능하다. -인증을 하면 인증 토큰을 발행한다. 이를 통해서 사용자의 인증 여부를 판단할 수 있다. -위의 이미지에서 index.html 페이지의 인증을..
HTML + PHP + MySQL 실습 -3X3 Photobook #vi photo.php -위의 코드는 3X3 사진첩을 만들 구조이다. -src 속성의 값에 이미지의 URL을 넣어주면 사진첩이 완성된다. -mysql에 접속해서 photobook DB에 photo 테이블을 만든다. -INSERT 문을 이용하여 9개의 URL를 저장한다. -> insert into photo(url) value("url"); 저장된 URL 확인 PHP는 MySQL 관련 라이브러리를 지원한다. ※ 여기서는 에러 메시지가 출력되도록 코드를 작성했지만, 에러 메시지가 출력되면 공격자에게 DB, 테이블 이름이 노출될 수 있으므로 출력하지 않는 것이 좋다. MySQL 함수 mysql_connect(): mysql 서버에 접속 = #..
데이터베이스 RDBMS(Relational DataBase Management System) -> Oracle, SQL, MySQL, MariaDB, ... MySQL mysql 서버에 접속할 수 있는 클라이언트 프로그램 설치 mysql 서버 설치 mysql 시작 mysql의 관리자 root 계정으로 접속 root 계정의 패스워드 설정 패스워드 입력하고 접속 1. SQL(Structured Query Language) -구조화된 질의 언어 1) DDL(Data Definition Language) -데이터 정의어 -데이터베이스 및 테이블 생성(CREATE), 삭제(DROP) 2) DML(Data Manipulation Language) -데이터 조작어 -테이블에 데이터를 삽입(INSERT), 수정(UPD..
WEB 1.0 HTML + Javascript WEB 2.0 +Server application : PHP, python, JSP +HTML : form 태그 Server side script language : PHP 1. PHP 설치 2. 실행 -확장자가 .php인 파일 생성 #php php 파일 실행 3. 기본 구조 // php 블록의 끝 -모든 php 코드는 이 블록 안에 있어야 한다. -블록은 여러 개일 수 있다. -> 하나의 php 파일 안에 php 코드만 존재하지 않기 때문이다. (HTML, Javascript...) 4. 변수 -선언은 없고 정의해서 사용 -변수의 타입은 정의될 때 결정 -$변수이름 1) 미리 선언된 변수 -프로그램 내에서 정의된 변수들 -super_global 변수: $_..
자바 스크립트(Javascript) -1990년대 넷스케이프(웹 브라우저 회사)에 의해서 제일 처음 도입되었다. -넷스케이프의 점유율이 90%이상을 차지하여 영향력이 컸기 때문에 다른 웹 브라우저도 지원을 안할 수 없었다. -현재는 자바스크립트가 웹 표준으로 자리를 잡았다. -자바(java)와는 전혀 상관이 없다. 실행하는 방법 1) 콘솔에서 직접 실행 [F12] -> 콘솔에 코드 입력 2) URL 입력창을 통해 실행 javascript: 코드 -> 해당 코드 바로 실행 3) HTML 파일에 코드 추가 ※ 명령어를 연속으로 사용할 때는 끝에 세미 콜론(;)을 꼭 붙여줘야 한다. 입/출력 -웹 브라우저에서의 입출력 -웹 브라우저에서 어떠한 자바 스크립트 코드를 사용해도 서버는 알 수 없다. 페이지를 받아올..
문서에서 사용되는 대표적인 태그 1. 그림 : img -src 속성: 표현하는 그림에 대한 경로, url -width / height 속성: 픽셀(px) 단위로 그림의 크기 조절 -로컬상에 위치하는 이미지는 상대경로를 사용한다. -인라인(inline) 태그 블록(block) 태그: h, p, a -요소 하나가 한 블록을 전부 차지한다. 인라인(inline) 태그: img, div -빈 공간에 다른 요소가 위치할 수 있다. 글로벌(global) 속성 1. 스타일(style) 속성 background-color:gray background-color:#7F7F7F -배경색 지정(영단어, RGB 값) background-image:url/path -배경 이미지 지정 2. 스타일 태그 -태그 내에서 스타일 속성..
웹 기초 프로그래밍(WEB 2.0) 필요한 기술 -클라이언트 쪽 언어: HTML, Javascript -서버 쪽 언어: PHP -DB : MySQL 1. HTML(HyperText Markup Language) -를 사용하는 markup 언어 -분기, 반복, 함수 같은 개념이 존재하지 않기 때문에 엄밀하게 언어라고 할 수는 없다. -문서에 대한 구조를 정의한다. WEB 2.0 -플래시(액션 스크립트) -Active X -자바(애플릿) -Javascript -비주얼 베이직 스크립트 -> 과거 HTML을 동적으로 사용하기 위하여 필요 WEB 3.0 -HTML 5 발표 -분기, 반복 등을 처리할 수 있는 Javascript를 표준으로 설정 (Ajax, Jquery, node.js 등의 자바스크립트 관련 라이브..