강의를 듣고 정리한거 이후 수정할 예정임 Prepared Statement는 SQL Injection을 막는 방법 중의 하나이다. SQL Injection을 막을 때는 1. Prepared Statement 2. 입력값 검증 로직(입력 타입에 따른) 3. 입력 길이 제한 으로 시큐어 코딩을 적용한다고 한다. 보통 1이 우선순위가 제일 높고 2,3이 보조하는 구조임 그럼 Prepared Statement 에 대해 알아보자 SQL에 쿼리를 날리고 실행되는 구조는 다음과 같다. 1. 구문 분석 및 정규화 2. 컴파일 3. 트리 최적화 4. 캐시 5. 실행 문자열로 쿼리를 적당히 만들어 두고 execute하면 statment이다. 1,2,3,4,5 를 바로 간다. prepared statement는 3까지 간다..
강의듣다가 급하게 정리한 내용임. 이후 변경 예정 SQL Injection/데이터 조회 공격/Blind Based blind based : 다른 애들 (error based, union based)에 비해 전제 조건 거의 없음 -> error based는 DBMS의 에러가 직접 찍혀야 함 -> union based는 query문의 영향을 많이 받음. 그리고 뒤에 위치해야 함(terminating 이 필요하므로) -> 응답을 통해 데이터를 추론한다 -> 보통은 요청에 대해 True, False인지만 파악할 수 있으므로, 이걸 기반으로 추론. 즉 아주 많은 T/F로 값 재구성한다고 생각하면 됨 -> 순차 탐색, 이진 탐색, 비트 단위 탐색 을 SQL Injection 과 연결해서 사용 SQL Injectio..
강의듣다가 급하게 정리한 내용임 이후 변경예정 SQL Injection/데이터 조회 공격/Union Based 데이터 조회 공격 1. Error Based 2. Blind Based 3. Union Based 4. Out of Band union based 공격 -> DB 의 데이터를 그대로 보여줄 때 사용하기 좋음 union 공격의 절차는 다음과 같음 1. order by 구문을 통해 컬럼 갯수 식별 -> ' order by 9# : 출력 -> ' order by 10# : 미출력 제일 마지막에 출력되는 숫자 = 컬럼의 갯수(테이블의) * 참고로 union 구문은 컬럼의 개수가 맞아야 한다 2. union 구문이 사용 가능한지 테스트 ->' union null,null,null,null,null,nul..

요약 URL에서 도메인, 서브도메인을 가져올 때 패턴화하기 어려운 부분은 public suffix list 기반인 tldextract를 사용하자! 내용 URL을 파싱하는 것은 손이 많이 가는 일이다. 특히 그 중에서도 도메인, 서브도메인과 관련되면 더더욱 고려할게 많아진다. 만약에 URL이 주어지고, 그의 도메인을 파악해야하는 상황이라고 가정해보자. maps.naver.com, docs.github.com 를 예로 들어보자면, 당연히 도메인이 naver, github임을 파악할 수 있다. 하지만 이들을 직접 구현해야 하는 상황이라면 약간 복잡해진다. 대부분의 URL 라이브러리들은 간단한 것들(도메인 + path 형태) 를 정확하게 찾는다. (furl 의 host라던가 urllib라던가) 혹은 약간 귀찮지..
docker logs (컨테이너 이름) -옵션 --arguments들로 현재 실행중인 컨테이너들의 로그를 확인할 수 있다. ex) docker logs container1 -f --timestamps => container1 이라는 이름의 현재 실행중인 컨테이너를 실시간으로 찍는다 (timestamp와 함께) 근데 log가 많이 쌓이다 보면 용량이 커지는 문제가 발생한다. 용량이 너무 커지면 컨테이너가 터지므로 매우 귀찮다. 이를 해결하기 위해 docker inspect로 직접 logpath 가서 삭제하면 이후 로그를 확인할 수 없다는 문제점이 있다 구글링해서 우분투의 truncate를 써서 해결해보려고 했다. 이에 대해서는 자세하게 잘 써주신 분들이 많다. 한번 확인해보자 lemontia.tistory..
- Total
- Today
- Yesterday
- 불필요한 값 무시하기
- django test
- 백준
- Python
- 코딩테스트
- SQL
- 그리디
- SSL
- factory_pattern
- endl을절대쓰지마
- 최대한 간략화하기
- BOJ
- 파이썬
- requests
- docker-compose update
- Til
- 힙
- 스택
- Remote
- django testcase
- 위상정렬
- jwt
- 이것도모르면바보
- 프로그래머스
- Event Sourcing
- 우선순위큐
- vscode
- Javascript
- cipher suite
- 삽질
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |