일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- FTZ
- Linux
- 웹
- 대외활동
- Web
- 파이썬
- html5
- 피들러
- 암호수학
- 리눅스
- 리버싱
- hackerschool
- 파이썬챌린지
- setCookie
- ARP Redirect
- 경기대학교
- C언어
- 실습문제
- pythonchallenge
- 써니나타스
- 웹해킹
- webhacking.kr
- 해커스쿨
- 자바
- 명품자바프로그래밍
- SuNiNaTas
- java
- 석문초등학교
- 쏙쏙캠프
- C
- Today
- Total
목록웹 (10)
Hongfluenza
1> SQL 인젝션? 1.1> SQL(Structured Query Launguage) - 데이터베이스(DB)를 만들고 유지하는 데 사용하는 프로그래밍 언어 중 하나. - DB를 구축하고 조작하기 위해 사용하는 일종의 명령어. - SQL을 이용해 데이터 정의·조작·제어 가능 1.2> Injection - 애플리케이션에서 서버로 전달되는 명령, 쿼리, 스크립트 등의 값을 변조하여 비정상적인 방법으로 시스템에 접근하는 공격기법 - 웹 애플리케이션에만 국한되지 않고 DB와 연결된 모든 애플리케이션에서 고려해볼 수 있는 공격 기법 - 특징 : 파라미터, 쿠키, 내·외부 웹 서비스 등 거의 모든 데이터가 인젝션 공격 대상이 된다. 1.3> SQL Injection - 입력창에 정상적인 값(데이터)을 입력하는 것이..
webhacking.kr 회원가입 문제를 해결하면서 Base 64 디코딩을 활용했다. 네트워크 전공 시간에 다양한 디코딩 방법을 이용해 문제를 해결했던 기억을 되살려 인코딩이 무엇이며 어떠한 종류가 있는 지에 대해 살펴보도록 하겠다. 1> 인코딩이란? 정보의 형태나 형식을 표준화, 보안, 처리 속도 향상, 저장 공간 절약 등을 위해서 다른 형태나 형식으로 변환하는 처리 혹은 그 처리 방식 → 즉, 컴퓨터가 이해할 수 있는 형식으로 바꾸어주는 것. 내용에는 변화가 없고, 암호화로는 사용이 불가능하다. 인코딩의 종류에는 ASCII, URL, HTML, Base64, MS Script 등이 있다. 2.1> ASCII 인코딩 ASCII (American Standard Code for Information In..
Webhacking.kr 홈페이지에 들어가면, 로그인 창은 있지만 회원가입 창은 없다. 회원가입을 하기 위해서 어떻게 해야하는 지 살펴보자. F12(개발자 도구)를 사용해 스크립트를 살펴본다. 다음과 같이 주석처리 된 Register(회원가입) 부분을 살펴볼 수가 있다. 회원가입 창으로 이동하기 위한 방법에는 두 가지가 있다. 해당 박스 내용은 Register라는 버튼을 클릭했을 때, join/includ2_join__frm__0001.php?mode=386a06192380430fc8953c58cf18fd74 로 이동한다는 이야기다. 그렇다면, url에 다음과 같은 주소를 입력해 회원가입 창으로 이동하면 회원가입을 할 수 있다. 회원가입 창으로 이동한 모습이다. 내용은 각각 ID, PW, EMAIL, 그..
SuNiNaTaS 06번 문제이다. 이 문제는 SQL Injection과 관련이 있는 문제였다. 이 부분은 공부해서 따로 올릴 예정이다. 처음에 ' or '1'='1' 을 쓰니 막힌다고 하여 참이 될 수 있는 다른 조건을 넣어주었다. 다음과 같은 alert가 뜨고, auth key를 얻어낼 수 있다. 그리고 확인을 누르자, 접근권한이 없다는 다음과 같은 alert가 떴다. 문제에서 알려준 사이트를 통해 authkey를 MD5 방법으로 Hash 해보았다. 다음과 같은 결과가 나왔다. 접근권한은 쿠키와 관련이 많다고 하여 쿠키를 사용해 보았다. 쿠키의 값을 HASH한 결과 값으로 바꾸어 주었다.다음과 같은 화면이 나오는데 소스 코드에서 다음과 같은 힌트를 얻을 수 있었다. 정답은 Augustus
써니나타스 5번 문제이다. 너무 볼 것이 없어서 페이지 소스를 보았다. 핵심이 될 만한 코드는 이 함수였다. eval(function(p,a,c,k,e,r) 이 부분을 알기 위해 구글링을 한 결과, 자바스크립트 난독화가 되어있었다는 것을 알게 됐다. 간단한 자바스크립트 난독화를 해제해주는 사이트도 많았다. https://www.strictly-software.com/unpack-javascript 이 사이트를 통해서 해제 해보았다. 소스코드에서 힌트가 될 만한 내용은 다음과 같다. atom을 이용해 다음과 같은 코드에 alert(PASS(12342046413275659)) 를 추가시켜 실행해보았다. 1234567891011121314151617181920212223!DOCTYPE html> var dig..
SuNiNaTas 04번 문제 를 풀기 위해서 Fiddler(피들러)라는 툴을 사용하면 문제를 풀 수 있다고 해서 피들러에 대해서 알아보았다. 일단, 피들러 툴을 다운받아야 한다. https://www.telerik.com/download/fiddler 피들러(Fiddler)의 특징 01. 웹 디버깅: 쿠키, 헤더, 캐쉬를 조회할 수 있으며 서버의 언어, 클라이언트의 운영체제 및 디바이스에 관계없이 사용할 수 있다. 02. 성능 테스트: 서비스 되는 웹 페이지의 무게를 측정하거나 네트워크의 병목현상도 감지할 수 있다 03. 웹 세션 조작: 쉽게 웹 세션을 조작할 수 있고, 모든 세션 작업에서 pause를 걸 수 있으며, 접속자의 요청과 응답을 조회할 수 있다. 04. HTTP/HTTPS 트래픽 기록: 피..
4번 문제를 클릭하면 이러한 화면이 나온다. 뭘까 싶지만 일단 페이지 보기를 클릭해보았다. 역시나 힌트가 있을 줄 알았다. Point를 50으로 바꾸라는 소리 같아서 일단 4번 문제의 plus를 눌러 50까지 바꿔보기로 했다. 50까지 plus 를 누르려고 했는데 25까지 누르니까 이러한 콘솔창이 떴다. 그리고 point 의 값은 더 이상 올라가지 않았다. 그렇다면 문제에서 User-Agent의 힌트를 찾아서 문제를 풀어보도록 하자. 일단, 이 문제를 풀기 위해서는 Fiddler(피들러)라는 툴이 필요하다. 피들러를 다운받은 후에, SuNiNaTaS를 25까지 수행시켜 놓고, 피들러를 켠다. RePlay - Reissue and Edit 을 클릭한다. Raw에서 User-Agent를 SuNiNaTaS로 ..
cellspacing은 테이블 내부의 선 굵기, cellpadding은 테이블 내용과 선 사이의 여백 이라고 나왔으나 이해하기 어려워 인터넷을 찾아 본 결과 cellpadding = 셀과 글자 사이의 간격 cellspacing = 셀 간의 간격 이라는 간단한 결과를 얻어낼 수 있었다. 좀 더 쉬운 이해를 위해서 실습을 해보았다. 기본적인 모양은 다음과 같다. cellpadding과 cellspacing이 적용 안 된 기본적인 표의 모습이다. 123456789101112131415161718192021222324 실습 table,th,td { border : 1px solid black; } 월 계절 1월 봄 Colored by Color Scriptercs cellpadding="10" 으로 적용 ( 셀..