전체 글

안녕하세요. 공부하는 RedStone 입니다. 어서오세요!
Study/Python

파이썬 requests 모듈

requests 모듈 - python용 HTTP 라이브러리 - HTTP, HTTPS 웹 사이트에 요청하기 위해 자주 사용되는 모듈 중 하나 모듈 사용 방법 import requests 요청 방식 GET 방식 : requests.get() POST 방식 : requests.post() PUT 방식 : requests.put() ... 요청 시 사용되는 매개변수 - url = "웹사이트 URL" > 웹 사이트 주소 입력 - cookies = {'키1':'값1'} > 요청할 때 헤더에 쿠키에 대한 정보 포함 - allow_redirects = True/False > 요청하고 응답받는 과정에서 리다이렉션 허용여부 선택 - verify = True/False/certificate 경로 > SSL 인증서 확인 과정..

Study/Security

디렉터리 인덱싱

정의 : 특정 디렉터리에 초기 페이지(index.html, home.html 등)의 파일이 존재하지 않을 때 자동으로 디렉터리 리스트를 출력하는 취약점 대상 : 웹 서버 판단기준 : 디렉터리 파일 리스트가 노출되는지 여부 테스트 방법 : 점검 url 경로 중 확인하고자 하는 디렉터리까지만 주소창에 입력하여 확인 ※ 점검 편의를 위하여 python 스크립트로 제작해놓고 활용하는 것 추천

Study/Security

OS Command Injection

Command Injection 1) 정의 - 시스템 명령어를 실행하는 함수에 사용자가 임의의 인자를 전달할 수 있을 때 발생 - 웹 애플리케이션이 구동 중인 서버 운영체제에서 임의의 명령을 실행하도록 하는 공격 기법 쉘 함수를 통해 시스템 셸로 전달되는 명령에 사용자로부터의 입력값이 포함될 때 발생 2) 공격 수행 시 필요 조건 - 시스템 셸로 전달되는 명령에 사용자 입력값 포함 - 사용자 입력값이 이스케이프 없이 정상적으로 인식 - 웹 애플리케이션을 구동 중인 계정에 시스템 명령 실행 권한 있는 경우 3) 주로 사용되는 메타문자 - '' : ''안에 들어있는 명령어를 실행한 결과로 치환 - | : 왼쪽 명령의 결과를 오른쪽 명령의 입력으로 전달 - && : 왼쪽 명령 성공적으로 실행하면 오른쪽 명령 ..

Study/Security

Path Traversal

사용자 입력값이 웹 애플리케이션 서버의 파일 시스템에 전달될 경우 사용 GET 매개변수, URL 경로, POST Body 데이터, Cookie 요청 헤더를 통해 로드 요청하는지 점검 해당 부분이 있다면 ../를 통해 root 디렉토리까지 이동하고 /etc/passwd 등 파일 읽기 필터에 막히는 경우, 우회 시도하기 ....// 등 문자 URL 인코딩 유니코드 인코딩 . %2e %u002e / %2f %u2215 \ %5c %u2216 Ex) 워게임 내 path traversal

Study/Security

SQL Injection

SQL Injection - 서버 사이트 취약점 중 하나 - SQL 쿼리에 이용자의 입력 값을 삽입해 이용자가 원하는 쿼리를 실행할 수 있는 취약점 Error based SQL Injection 1. 내용 SQL의 잘못된 문법이나 자료형 불일치 등에 의해 데이터베이스가 알려주는 오류 메시지에 의존하여 수행되는 공격 기법 취약 여부 확인 방법 (사용자 입력값이 SQL 쿼리로 해석되어 백엔드의 DB와 통신하는지 파악) > 문자열 타입의 경우, ' 입력해보기 > 숫자형 타입의 경우, 3-2 와 같이 계산식 넣어보기 공격 순서는 다음과 같다 > DBMS 종류 파악 → DB 명 획득 → 테이블 명 획득 → 컬럼 명 획득 → 데이터 추출 주의) 언제나 비밀번호 입력칸에 SQL 쿼리를 넣을 필요 없음 > ID: ad..

Study/클라우드

AWS CloudTrail 로그 공부

보호되어 있는 글입니다.

NOredstone
RedStone의 공간