전체 글 9

Authentication vulnerabilities 3

1. 이론 : Vulnerabilities in other authentication mechanisms사용자가 자동 로그인을 키는 경우(= 로그인 유지하기)는 보통 쿠키 값을 저장하여 컴퓨터 브라우저 확인.따라서 보안을 위해서1) 쿠키 값에는 비밀번호 내용 들어가면 안 됨.2) 쿠키 값은 base64와 같은 단순 양방향 인코딩으로 암호화 하면 안 됨.즉, 쿠키 값 유추할 수 없도록 쿠키 생성 방식에 관련된 내용을 비밀로 해야함. (해당 내용 파일도 숨겨야함)3) XSS가 가능한 경우, 공격자는 다른 사용자의 "로그인 유지" 쿠키를 탈취하고 이를 통해 쿠키 생성 방식을 추론할 수 있음.XSS는 막아야 좋긴하지.. 2. 이론 : 비밀번호 재설정사용자가 비밀번호 재설정을 요청했을 때 크게 2가지 방법이 있음..

Authentication vulnerabilities 2

1. 실습 : Lab: Username enumeration via response timing해당 실습은 ID가 일치한데 비밀번호가 틀릴 경우, 응답시간이 다른 것을 이용한다.대신 비밀번호는 100자 이상 매우 길게 작성하여 ID가 있을때만 응답이 오래걸리는 취약점을 이용한 것이다.추가로 동일 IP에 대해서 차단조치가 시행된다.- solution우선, ID와 비번 입력에 대해서는 기존의 intruder 기능을 사용하면 된다. 쉬움.내가 어려움을 겪었던 점은 IP를 어떻게 바꾸는가? 였는데, 이는 X-Forwarded-For 헤더를 이용하면 되는 것이었다... 몰랐음;; X-Forwarded-For 헤더 설명: 프록시 서버나 로드 밸런서를 거쳐 웹 서버에 접속하는 클라이언트의 원래 IP 주소를 식별하기..

Authentication vulnerabilities

1. 원인 : 시스템이 사용자의 신원을 제대로 확인하지 못해 발생하는 보안 결함2. 주요 예시취약한 비밀번호 정책인증 우회(Authentication Bypass)세션 관리 미흡자격 증명 도용3. 대응 방안다중 인증(MFA) 도입강력한 세션 관리보안 라이브러리 활용자동화 공격 방어4. 추가 조치 사항로그인 시 status code, error messages 등이 뜨지 않도록 설정하면 좋음.로그인 시 response times가 동일해야 함. ID 틀리고, 비번 틀리고 등으로 차이 확인 가능5. 실습 1 (Username enumeration via subtly different responses)해당 실습은 아이디 list, 비밀번호 list가 있을 때 매칭되는 것을 찾는것이다. 처음엔 ID만 입력해보..

웹해킹 4 (file upload vulnerabilities)

file upload vulnerabilities1. 원인 : 웹 서버가 파일 이름, 유형, 내용, 크기 등의 유효성 검사를 제대로 하지 않고 사용자가 파일을 업로드하도록 허용하는 경우 발생2. 실습1 (Remote code execution via web shell upload)일단 php파일을 업로드하면 해당 파일의 내용이 실행?되는건지 아니면 서버에서 코드를 바로 인식해서 이를 응답하는 건지 모르겠음.일단 이걸로 답을 제출해서 문제는 풀었는데, 하단은 추가 공부 내용.POST를 한다고 php파일이 바로 실행되는 것은 아님.- 일반적인 과정1. 파일이 실행되는 시점 : 보통 업로드된 경로로 GET 요청 보냈을 때1) Upload(POST) : php파일을 특정 경로에 저장|2) Request(GET)..

스터디/웹해킹 2026.03.24

웹 해킹 3 (SSRF)

SSRF (server side request forgery)1. 정의 : 공격자가 취약한 웹 애플리케이션을 조작하여, 서버가 의도하지 않은 내부 리소스나 외부 서버로 요청을 보내게 만드는 보안 취약점2. 원리 : 서버가 사용자 입력을 검증하지 않고 외부 URL을 요청할 때 발생.>>> ex) 입력 검증하지 않으므 localhost인 척 위장해서 URL 요청하면 서버가 정상이라고 판단함.3.1. 실습1 (Basic SSRF against the local server)stockApi뿐 아니라 API 입력할 수 있는 것에서는 다 되는 것 같다는 내 예상....일종의 프록시 역할이 됨.암튼, 이걸로 http://localhost/admin 접속해서 해당 사이트에서 정보를 확인할 수 있다.예를 들어 아래와 같..

스터디/웹해킹 2026.03.23

웹 해킹 2 (Authentication)

Authentication1. authentication vs authorization : Authentication is the process of verifying that a user is who they claim to be. Authorization involves verifying whether a user is allowed to do something.2.1. 실습 : 무작위 대입 (Username enumeration via different responses)문제에서 ID 리스트랑 PW 리스트를 제공하며 이에 맞는 계정을 찾는 것이었다. 나는.. 파이썬 코드짜서 101 X 100개 조합을 돌렸지... 너무 오래 걸렸지...하하 (첨부파일로 python 코드 첨부)그래서 솔루션 확인. b..

스터디/웹해킹 2026.03.23

웹해킹 1 (path traversal, Access control)

Path traversal (= directory traversal)1. 정의 : 사용자 입력값을 통해 애플리케이션의 파일 경로를 조작하여 허가되지 않은 디렉터리나 파일에 접근하는 취약점2. 원리 : 패러미터 입력 값에 경로에 대한 내용(../../../../etc/passwd)을 넣어 임의로 경로를 지정하는 방법3. 실습URL에 /image?filename=../../../../../etc/passwd 를 입력한 것을 확인할 수 있음.이로 인해서 Request창에 GET /~/ etc/passwd를 요청함(브라우저)Response로는 content-type으로 image/jpeg 형식을 보내줬지만, 실제 내용은 하단에 passwd관련 내용이 txt로 포함되어 있음Access control1. 정의 : ..

스터디/웹해킹 2026.03.19