본문 바로가기

전체 글

(226)
손 쉽게 웹페이지 꾸미는 법 #2 - 그리드 시스템 BootStrap #1 에서 코드 몇 줄 만 붙여넣으면 BootStrap에서 제공하는 수많은 스타일들을 사용할 수 있다는 것을 확인했다. 이제 BootStrap을 이용해서 웹 페이지의 어느 정도 틀을 잡을 수 있는 방법을 정리해보자. BootStrap은 반응형 웹사이트도 제공할 수 있고 전체 길이를 12로 본다. 6이면 웹 사이트의 절반 길이인 것이다. BootStrap의 Layout 탭에서 Grid를 눌러보자 웹 사이트는 사실 행과 열로 구성되어 있다. 메뉴바든, 메인 페이지든 넓고 작은 크기의 행과 열들이 모여서 만들어내는 것이다. "row" 와 "col" class 로 간단히 Column 을 구성할 수 있다. 일단 테스트를 해보기 위해 만들어놓은 메인 페이지에 카드를 하나 추가해뒀다. 저장하고 실행하니 카드가 하나 ..
[5주차] 게시판 구현 #1 - 게시판 리스트 만들기 이번엔 여태까지 만든 페이지에서 게시판을 구현해볼 것이다 우선, board.php를 만들어준다. 게시판에서 사용될 컬럼을 미리 만들어두었다 자동으로 증가하는 auto_increment 속성을 가진 number 컬럼 제목이 저장될 title 컬럼 내용이 저장될 content 컬럼 작성자의 닉네임이 저장될 name 컬럼 글 작성시간이 저장될 date 컬럼 조회수가 저장될 hit 컬럼 추천수가 저장될 thumbup 컬럼 그다음 비밀번호가 저장될 password 컬럼이다. 우선, board라는 이름의 테이블을 생성한다. 터미널을 열고 mysql 코드를 입력해주자. CREATE table board ( number int not null auto_increment primary key, title varchar(..
손 쉽게 웹페이지 꾸미는 법 #1 - Bootstrap 적용하는 법, 버튼 디자인 웹 페이지를 HTML로 실컷 만들어놓으면 기능은 문제가 없을지 몰라도 하나의 산이 더 존재한다. 바로 css로 꾸미기..... 아니 꾸미는 거 젬병인데 컴퓨터에서도 꾸며야한다고? 근데 css 안쓰기에는 기본 html 골격 자체가 너무 날것이다 이런 개발자들에게도 희망은 있다. 바로 BootStrap 이라는 사이트인데, 구글에 검색해서 쉽게 접속할 수 있다. getbootstrap.com 이라는 곳 누르면 접속이 된다. https://getbootstrap.com/ Bootstrap Powerful, extensible, and feature-packed frontend toolkit. Build and customize with Sass, utilize prebuilt grid system and com..
Python - Requests 모듈 이번엔 파이썬으로 스크립트를 짤 때, 아주 유용하게 응용할 수 있는 requests란 모듈에 대해서 알아보자 requests 모듈을 사용하면 페이로드를 날릴 수 있다. 기본적인 사용방법은 import로 불러온 후, URL을 get이나 post 방식으로 응답을 받아온다. http 관련 스크립트를 짤 때, selenium 보다 가벼워서 쓰기가 좋다. 밑 코드를 입력만 한 것으로 웹브라우저에서 해당 url에 접속한 것과 같은 효과를 얻는다. import requests url = "http://www.naver.com" response = requests.get(url) response.status_code response.text response.status_code 를 입력했는데 200의 값을 반환했다면 ..
[5주차] 스터디 정리 - Blind SQL Injection, 대응 방안 Blind SQL Injection ->DB 결과가 화면에 안 나오는 곳 -> Error based -> SQL Injection이 가능한 모든 곳에서 사용이 가능하다 : SQL 참과 거짓의 조건으로 데이터를 추출하는 기법 보통 Burp Suite 리피터로 옮겨서 작업함 **일어나는 곳. > 참과 거짓 조건에 따라 응답이 다른 곳! > 어떻게든 다르면 됨. overwatch%' and '1%'='1 title like '%_____%' 일부러 overwatch%' and '1%'='2 를 넣어서 일부러 거짓을 유도한다. 그 후, Burp Suite의 Comparer 를 이용해 response를 전체 선택해서 참일 때와 거짓일 때 어떤 부분이 미묘하게 다른지를 볼 수 있다. sync with를 누르면 같이..
로그인 우회 CTF 풀이 # 3 평범한 로그인 창이지만, 로그인 로직이 여러가지이기도 하고, 에러메시지를 출력하지 않으므로 SQL 문의 형태가 어떨지 추측해야만 한다. 여기서 normaltic3 계정으로 로그인해야만 한다. 주석처리가 먹히는지 한번 테스트를 해본다. 택도 없음 항등원에 주석까지 넣어서 테스트를 해보자 택도 없음 항등원만 넣어서 테스트를 해보자 택도 없음 union 구문을 한번 써봤다 ???!?!?! 풀렸다 개행인지 테스트를 해보기 위해서 주석도 처리해보았는데, 이것도 로그인 우회가 되었다. 어떻게 sql문이 되있을지 추측해봤다 기본적인 식별 / 인증 동시인 SQL 구문이다. select id, pass FROM member WHERE id='' AND password = ''; 라고만 되어있었다면 normaltic3' ..
DB 데이터 추출 CTF 풀이 DB 데이터 추출 1 문제 게시판 형태의 CTF이다. 여기서 SQL Step을 한번 밟아보자. (1) 추측 Adminer가 포함하고 있는 알파벳 중 min을 쳤을 때 과연 Adminer가 출력될까? 출력된다. min을 포함하고 있는 데이터가 출력되는 것을 확인했다 이로써 =이 아니라 문자열 포함 데이터를 출력해주는 like절 구문을 사용하고 있을 것이라 생각할 수 있다 select "" from "" where id like '%@@@%' 의 형태를 가지리란 것을 추측할 수 있다. (2) 취약점 확인 mario%'# 라고 입력했는데 mario가 출력되는 걸로 보아 SQL Injection 공격이 먹히고 있는 것을 알 수 있다. 확인차 mario%' and '1%'='1 이라고 입력했을 때도 mario가 ..
aws - 클라우드 컴퓨팅이란? 인터넷으로 하는 서비스를 구현할 때, 서버를 두는 두 방식이 존재 온프레미스 (On-premise): 회사가 자사의 시설 혹은 IDC (인터넷 데이터 센터)에 직접 서버를 둠 클라우드 : 고급 프로그래머들이 구현해놓은 훌륭한 컴퓨팅 자원을 돈을 지불하고 빌려서 사용하는 방식 AWS란? AWS는 클라우드 서비스의 대표적인 예시이다. 인터넷을 통해서 언제어디서든지 원하는 때, 원하는 만큼의 컴퓨팅 리소스 (컴퓨팅, 스토리지, 네트워크)를 손쉽게 사용할 수 있게 하는 서비스 AWS는 훌륭한 개인의 아이디어를 받쳐줄 수 있는 좋은 지렛대와 같은 서비스이다. 컴퓨팅 CPU라고 하는 계산 능력을 사용한 것 스토리지 파일, 정보 등을 저장하는 것 네트워크 저장된 것들을 전송, 배포하는 것 클라우드란? 원거리에 있는 ..