normaltic(64)
-
[normaltic 취업반 5기] 2023-12-13 8주차 과제 : 4번 과제
ORDER BY SQL 질의문에서 ORDER BY 구문은 조회 데이터를 임의 기준으로 정렬하여 출력할 때 사용된다. ORDER BY 구문은 SQL 질의문의 가장 마지막 부분에 위치한다. 만약 ORDER BY 구문이 생략되어 있다면 조회 데이터는 임의의 순서로 출력이 된다. ORDER BY 구문에서 정렬 방식은 오름차순 정렬, 내림차순 정렬이 존재한다. 오름차순 정렬을 나타내는 단어는 ASC이며 내림차순 정렬을 나타내는 단어는 DESC이다. 정렬 방식을 표기하지 않았으면(생략하면) 기본적으로 오름차순 정렬로 출력된다. ORDER BY 구문은 정렬 기준이 되는 컬럼과 정렬 방식으로 구성되어 있다. 또한 여러 컬럼을 기준으로 정렬할 수 있으며 이때의 구분자는 ','이다. 예를 들어 라는 테이블에서 데이터 조회..
2023.12.20 -
[normaltic 취업반 5기] 2023-12-13 8주차 과제 : 3번 과제 SQL Injection Advanced 3,4
SQL Injection Point 3 문제 해당 문제에서의 실습용 웹 애플리케이션이다. SQL Injection Point를 찾는 작업을 진행한 후 SQL Injection 공격을 진행하도록 한다. 먼저 Login 버튼을 클릭해 보자. Login 버튼을 클릭하면 로그인 페이지를 확인할 수 있다. Sign up 버튼을 클릭하여 계정을 새로 생성한 후 로그인을 하게 되면 마이페이지, 게시판, Logout 버튼이 나타난다. SQL Injection은 SQL 질의문이 사용되는 위치에서 공격 수행이 가능하다. 우선 마이페이지 버튼을 클릭하여 Point가 있는지 확인해 보자. 마이페이지에서 SQL 질의문이 사용되는 부분은 사용자 측의 SESSION ID를 참고하여 사용자 계정 정보를 출력해 준다. SESSION ..
2023.12.20 -
[normaltic 취업반 5기] 2023-12-13 8주차 과제 : 3번 과제 SQL Injection Advanced 1,2
SQL Injection Advanced 과제 목표 : SQL Injection Point를 찾고 DB 데이터를 추출하여 Flag를 찾기 SQL Injection Point 1 문제 해당 문제에서의 실습용 웹 애플리케이션이다. SQL Injection Point를 찾는 작업을 진행한 후 SQL Injection 공격을 진행하도록 한다. 먼저 Login 버튼을 클릭해 보자. Login 버튼을 클릭하면 로그인 페이지를 확인할 수 있다. Sign up 버튼을 클릭하여 계정을 새로 생성한 후 로그인을 하게 되면 마이페이지, 게시판, Logout 버튼이 나타난다. SQL Injection은 SQL 질의문이 사용되는 위치에서 공격 수행이 가능하다. 우선 마이페이지 버튼을 클릭하여 Point가 있는지 확인해 보자. ..
2023.12.20 -
[normaltic 취업반 5기] 2023-12-13 8주차 과제 : 2번 과제 SQL Injection 공격 기법 정리
SQL Injection이란? SQL Injection이란 웹 사이트의 보안 취약점을 이용하여 특정 SQL 쿼리문을 삽입하여 공격자에게 필요한 DB 정보를 추출하거나 인증 우회 등의 공격을 하는 해킹 기법이다. 주로 클라이언트가 입력하는 값에 대한 필터링 기능이 제대로 갖춰지지 않은 경우 발생한다. SQL Injection 공격은 쉬운 난이도에 비해 그 피해는 상당히 효과적이므로 주의해야 한다. SQL Injection으로 가능한 공격으로는 다음과 같다. Authentication Bypass (인증 우회) DB Access (데이터베이스 접근) Content Change (콘텐츠 변경) SQL Injection 조건 SQL Injection 공격이 이루어지는 원리에 대해 설명하기 위해서는 먼저 SQL ..
2023.12.16 -
[normaltic 취업반 5기] 2023-12-13 8주차 내용 정리
SQL Injection 공격이 가능하려면? SQL Injection 공격은 주로 사용자가 입력을 할 수 있는 입력창에서 발생한다. 그러나 입력창이 아니더라도 SQL Injection 공격은 DB와 관련된 곳이라면 어디든지 발생할 수 있다는 것을 인지해야 한다. SQL Injection 공격이란 공격자의 입맛에 맞게 SQL 질의문을 삽입함으로써 공격대상의 DB에 존재하는 데이터를 추출하는 것으로 목표로 한다. 그렇다는 것은 SQL Injection 공격은 DB와 연결되어 있으며 DB에서 데이터를 조회하는 곳(select 구문이 존재하는 곳)이라면 어디든지 가능하다는 의미이다. *SQL Injection 공격이 발생 가능한 조건 DB와 연결되어있어야 한다. DB에서 데이터를 조회해야 한다. (select ..
2023.12.13 -
[normaltic 취업반 5기] 2023-12-06 7주차 과제 : SQL 6번 문제
SQL Injection 6번 문제 유효 계정 정보 ID : normaltic Password : 1234 1) SQL Injection 작동 여부 테스트 결과 해당 문제에서는 SQL Injection을 사용 가능하다. 2) 사용 가능한 SQL Injection 종류 파악 로그인 페이지 같은 경우 UNION SQL Injection 공격은 사용이 힘들기 때문에 나머지 두 공격이 가능한지 확인한다. Error Based SQL Injection 공격에 쓰일 Payload를 입력했더니 에러 메시지가 출력되지 않았다. 그렇다면 해당 문제는 Blind SQL Injection 공격을 진행해야 한다. 3) Blind SQL Injection 자동화 프로그램 Blind SQL Injection 공격은 문자를 하나하..
2023.12.07