일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 다이나믹 프로그래밍
- Javascript
- TypeScript
- java
- DFS
- Algorithm
- react
- 프로그래머스
- 동적 계획법
- 리트코드
- CS
- DP
- vscode
- Data Structure
- db
- Database
- Redux
- 안드로이드
- 자바
- Python
- frontend
- BFS
- 알고리즘
- 백준
- LeetCode
- VIM
- 그레이들
- git
- Graph
- network
- Today
- Total
목록SQL (2)
늘 겸손하게
SQL Injection 해커에 의해 조작된 SQL 쿼리문이 데이터베이스에 그대로 전달되어 비정상적 명령을 실행시키는 공격 기법 공격 방법 1) 인증 우회 보통 로그인을 할 때, 아이디와 비밀번호를 Input창에 입력하게 되는데, 비밀번호를 입력함과 동시에 다른 쿼리문을 함께 입력하는 것. 보안이 완벽하지 않은 경우, 같이 입력(주입)된 쿼리문이 데이터베이스에 영향을 줄 수도 있다. 2) 데이터 노출 시스템에서 발생하는 에러 메시지를 이용해 공격하는 방법. 보통 에러는 개발자가 버그를 수정하는 면에서 도움을 받을 수 있는 존재. 해커들은 이를 역이용해 악의적인 구문을 삽입하여 에러를 유발시킨다. 방어 방법 1) input 값을 받을 때, 특수문자 여부 검사하기 로그인 전, 검증 로직을 추가하여 미리 설정..
SQL 작성 유의점 SQL 구문은 대소문자를 구별하지 않는다. ( select == SELECT == Select == SELect) 데이버베이스 시스템에 따라서 SQL 구문 마지막에 세미콜론(;)을 요구할수도 있다. 혹시 모르니 다 붙이자 목차 SELECT WHERE ORDER BY DELETE UPDATE MIN, MAX, SUM, COUNT, AVG SELECT SELECT 구문은 데이터베이스에서 데이터를 선택하기 위한 구문. 반환된 데이터는 result-set으로 불리는 result 테이블에 저장된다. 예제 - Customer 테이블의 모든 column을 가져오려면? SELECT * FROM Customer - Customer 테이블의 City column을 가져오려면? SELECT City FR..