본문 바로가기

sql4

[도서 리뷰] 김상형의 SQL 정복 김상형의 SQL 정복 // 김상형 지음, 한빛미디어 학교 수업으로 아슬아슬하게 만든 데이터베이스 지식이 부족해서 데이터베이스, SQL의 기초를 다시 탄탄히 쌓아올릴 필요가 있다고 느끼던 중 '김상형의 SQL 정복'이라는 책을 접할 수 있는 기회가 생겼다 # 이 책은 데이터베이스를 처음 공부하려는 사람들에게 꼭 추천하고 싶다. 물론 나처럼 숭덩숭덩 이름만 공부한, 구멍난 지식을 가진 사람들에게도 추천한다. 1. 처음 공부하는 사람들에게 추천한 가장 첫번째 이유는 우선 보통 이 책을 공부하려는 사람들은 컴퓨터공학, 컴퓨터 언어를 배우던 사람들일 확률이 높다. 데이터베이스라는 새로운 개념을 이전에 배웠던 컴퓨터 언어와 비교하며 어떤 특성을 가지고 있는지, 어떻게 활용하기 위해 어떤 점을 공부해야하는 것인지 설.. 2022. 5. 29.
[웹해킹] # sqlmap 자동화 공격 * sqlmap 프로그램 : SQL인젝션 공격 프로그램 중 가장 대중적으로 사용되며, 오픈 소스 프로젝트이다. 이 프로그램을 이용하여 SQL 인젝션을 자동 공격하고 원하는 정보를 탈취한다. 1) 칼리 리눅스의 좌측 상단 아이콘을 누른 후 -> 3.Web Application Analysis를 선택 -> sqlmap 선택 OR 2) 터미널에 명령어를 입력하여 실행 가능 (sqlmap -h를 입력하면 사용법과 옵션 확인 가능) # sqlmap 프로그램 옵션 알아보기 -u : 필수 옵션으로 공격을 시도할 URL 을 지정 --cookie : 로그인이 필요한 경우, 로그인하고 난 다음 발급된 세션 .. 2020. 10. 3.
[웹해킹] # 블라인드 SQL 인젝션_level.low 일반적인 쉬운 SQL인젝션은 정상적이지 않은 입력에 대해 사용자에게 쿼리문 오류를 출력한다던지 쿼리 조작문에 대한 결과가 나와 정보를 캐낼 수 있는 반면, !!! 비정상적인 입력에 대해 별다른 오류도 나지 않고 어짜다 SQL 쿼리문을 사용함을 알게되어 조작하여도 사용자의 정보를 화면상으로 출력하지 않기 때문에 일반적인 SQL 인젝션으로는 정보를 캐낼 수가 없는 경우가 있다. 이럴때, SQL 쿼리문을 사용하고 입력값에 따라 id의 존재 유무를 알려주는 결과가 달라짐을 확인할 수 있다면 블라인드 SQL 인젝션 공격을 실행한다. 실습을 통해 알아보자. 우선 실습 환경 준비! dvwa에 들어가서 보안레벨을 low로 설정한 뒤 블라인드 SQL 창으로 들어가자. 우선 블라인드SQL인젝션 실습에 들어가기 앞서 일반적.. 2020. 10. 3.
[웹해킹] # SQL 인젝션 SQL인젝션은 웹 공격 중에 가장 잘 알려져 있는 공격으로 가장 심각한 리스크의 공격으로 선정된 인젝션 리스크의 대표적인 공격이다. SQL인젝션 : 공격자가 데이터베이스에 전송되는 SQL쿼리문을 조작하여 데이터를 변조하거나 허가되지 않은 정보에 접근. # WHERE 구문 우회 - WHERE구문 : WHERE 이하의 구문을 만족하면 쿼리문을 실행한다. ex) SELECT first_name, last_name FROM users WHERE ID='1' //id=1 이 참이면 first_name과 last_name의 목록을 가져와라. 이런 WHERE문의 성격을 이용하여 정보를 캐낸다. - WHERE 구문 우회 : WHERE의 조건이 항상 참이 되도록 퀴리를 조작하여 무조건 정보를 출력하도록 한다. 입력값 :.. 2020. 10. 3.