Information Security (4 Page)
본문 바로가기

Python 1. 연산자 연산자를 설정하기 전에 변수의 선언 규칙에 대해 설명하자면, 1. 대소영문자, 숫자, 밑줄문자(_)를 조합하여 구성 2. 첫자는 반드시 영문자, 밑줄문자로 시작 3. 첫자는 숫자가 오면 안된다. 4. 구분 공백 및 특수문자 포함 불가능(공백이 있을 경우 다른 변수로 취급함) 등이 있다. 연산자의 종류는 여러가지가 있지만 많이 쓰이는 것으로 추려보았다. 산술 연산자 [그림 1] 과 같이 이런 식으로 a와 b라는 변수를 지정하여 숫자를 대입할 수 있으며 더하기, 곱하기, 빼기, 나누기, 몫, 나머지 등을 구할 수 있다. [그림 2] 와 같이 변수에 숫자를 대입한 변수의 연산도 가능하다. 비교 연산자 x > y x가 y보다 크다 x = y x가 y보다 크거나 같다 x
Webhacking의 1번 문제 Webhacking 사이트에서는 여러 난이도의 문제가 있다. 각 문제마다 점수별로 나뉘어져 있고 점수가 높을수록 문제의 난이도는 더 어려운 형식이다. 하지만 1번 문제같은 경우에는 Burp를 쓰면 간단히 해결할 수 있다. Level 1의 문제. 1번 문제를 클릭하고 들어가면 [그림 1] 처럼 Level : 1 문구가 적혀있는 화면만 뜨고 아무것도 나타나지 않는다. 하지만 [그림 2]와 같이 index.phps 를 클릭했을 때 해당 소스코드가 나타난다. 위의 소스코드를 확인해보면 user_lv는 "1" 로 설정되어 있고 두번째 빨간색 칸으로 표시해놓은 화면을 보면 if문을 통해 user_lv가 5보다 크고 6보다 작아야 한다는 조건이 있는것을 알 수 있다. [그림 3]의 소스코드를 통해 얻은 힌트를 가지고..
Webhaking.kr에서 회원가입 웹해킹에 대해 관심을 갖고 계신 분이라면 한번쯤은 들어봤을 사이트입니다. 처음 입문하실 때 회원가입 하는 페이지는 나오지 않고 로그인 하는 페이지만 나오기 때문에 많이 당황하실텐데요 회원가입 하시는 방법을 설명드리겠습니다. 우선 webhaking.kr 의 URL로 접속을 합니다. 위의 [그림 1]과 같이 회원가입 하는 폼이 없고 로그인 하는 폼 화면만 있습니다. 마우스 우클릭 통해 페이지 소스를 확인해봅니다. 소스코드를 보시면 Register가 주석처리 되어 있고 join과 URL경로가 통해 뭔가 수상하다는 것을 느낄 수 있습니다. 그대로 복사하여 webhaking.kr의 URL뒤에 붙여서 입력해봅니다. 회원가입하는 폼 화면은 나타났습니다. 하지만 decode me 라는 칸에 이상한 값이 적혀있습니다. ..
Oracle) PL/SQL Cursor(커서) PL/SQL 커서란? SQL의 커서는 크게 묵시적커서(Implicit Cursor)와 명시적커서(Explicit Cursor)로 나뉜다. 묵시적 커서는 필요한 경우 오라클이 자동적으로 선언하여 사용한 후 자동적으로 정리한다 우리가 자주 사용하는 SELECT문, UPDATE문, INSERT문, DELECT문 등이 실행될 때는 묵시적커서가 선언된다. 묵시적 커서는 하나만 실행되었다가 종료하므로 여러 행을 작업해야 한다면 묵시컥 커서는 사용할 수 없다. 묵시적 커서의 속성 SQL%ROWCOUNT : 해당 커서에서 실행한 총 행의 개수 SQL%FOUND : 커서 안에 수행할 데이터가 있다면 TRUE, 없다면 FALSE 반환 SQL%NOTFOUND : 커서 안에 수행할 데이터가 없을 경우 TRUE, 있다면 FAL..
Oracle) PL/SQL 개념 PL/SQL 이란? 오라클에서 제공하는 프로그래밍 언어를 뜻한다 일반 프로그래밍 언어적인 요소는 거의다 가지고 있어서 절차적인 데이터 처리가 모두 가능하고 SQL과 결합하여 기존 언어보다 더욱 편하게 데이터베이스 관련 작업을 처리할 수 있게 해준다 PL/SQL BLOCK의 기본 구성을 살펴보자 DECLARE : 모든 변수나 상수를 선언하는 선언부 BEGIN : 제어문, 반복분, 함수 정의 등을 기술하는 실행부 Exception : 실행 도중 에러 발생 시 해결하는 문장을 기술하는 예외처리부 (선언부와 예외처리부는 경우에 따라 생략 가능) 프로그램을 작업하기 전에 처음에 해야할 것이 있다. SET SERVEROUTPUT ON; 을 입력시켜야 한다. 화면 출력기능을 활성화 시키는 것이다. 처음에 한번만 입력..
JAVA) 상속 상속이란? 상속은 부모의 재산을 자식이 물려받는다는 의미이다 이와 비슷하게 자바는 객체지향언어이므로 부모 클래스에서 만들어진 필드와 메소드를 자식 클래스가 물려받는다고 이해하면 된다. 하지만 주의할점은 상속은 클래스 사이의 상속이다. 객체 사이의 상속이 아니므로 주의하도록 하자 아래의 몇가지 예를 통해 알아보자 ex 1) 상속 위에 Point로 만들어진 클래스가 부모 클래스를 나타낸다 부모클래스의 필드와 메소드를 작성해놓은 후 class ColorPoint extends Point 이렇게 선언해놓으면 자식클래스가 부모클래스를 물려받게 된다. 즉 자식클래스는 ColorPoint가 되고 extends를 통해 부모클래스인 Point를 물려받게 되는것이다 class (자식클래스) extends (부모클래스) P..
Oracle) 다중행 Sub Query 다중행 Sub Query (Multi Row Sub Query) 란? Sub Query의 결과가 2건 이상 출력되는 것을 말한다. 결과가 여러개 출력되기 때문에 단일행 연산자(,=)를 사용할 수 없다 다중행에서 사용하는 연산자는 따로 있다 IN : 서브 쿼리 결과와 같은 값을 찾는다 EXISTS : Sub Query의 값이 있을 경우 메인 쿼리를 수행한다. >ANY : 서브 쿼리 결과 중에서 최솟값을 반환. ( >MIN 과 같다)
Oracle) 단일행 Sub Query 단일행 Sub Query 란? Sub Query 의 수행 결과 값이 1개의 행만 출력되는 것을 의미한다 가장 일반적으로 많이 사용하며 수행한 결과가 1건만 나오고 이 결과를 Main Query로 전달해서 수행한다 Sub Query 는 WHERE 절에 연산자 오른쪽에 위치해야 하므로 반드시 괄호로 묶어서 사용한다. 특별한 경우를 제외하고는 Sub Query 절에 Order by 절이 올 수 없다. 문제 1) Student 테이블과 Department 테이블을 사용하여 'Anthony Hopkins' 학생과 1전공(deptno1) 이 동일한 학생들의 이름과 1전공 이름을 출력하세요 select s.name, d.dname from student s, department d where s.deptno1 = d..