일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- active reconnaissance
- php
- SQLi
- php login page
- Authentication
- THM
- Server Side Request Forgery
- 파일 업로드 취약점
- active recon
- ssrf
- Recon
- privilege escalation
- php 로그인 페이지 만들기
- php 파일 업로드하기
- OS Command Injection
- php To Do List
- Leviathan
- FTZ
- BANDiT
- overthewire
- tryhackme
- Cryptography
- php file upload
- access control
- Reconnaissance
- Cookie
- War Game
- file upload
- sql injection
- over the wire
- Today
- Total
목록Port Swigger (50)
R's Hacking Daily Log
How to detect SQL injection vulnerabilities 공격자의 입장에서 SQL injection 공격을 한다고 할 때, 1. ' 를 입력해서 에러가 발생하는지 확인 2. or '1' = '1와 같은 boolean 조건문 활용 3. case then 문 사용 4. time delay 와 같은 기술을 Lab을 통해 접해보았다. sql injection에서는 web page에 결과를 포함하느냐 안 하느냐의 여부가 중요한 정보가 될 수 있으며 web page에서의 차이를 찾을 수 없다면 time delay와 같이 부가적인 기술을 사용할 수 있다는 것도 배울 수 있었다! 또한 mysql의 information_scheme같이 meta data를 저장하는 table을 활용하여 어떤 테이블이..
Authentication - Lab (1)에 이어서 password 기반의 인증 체제에 대한 내용을 살펴보도록 하자. Flawed brute force protection 공격자는 성공적으로 계정을 해킹하기까지 무수히 많은 brute force 공격에 실패하게 된다. 따라서 brute force 보호는 프로세스를 자동화하기에 최대한 까다롭게 만들거나 로그인을 시도할 수 있는 속도를 늦추는 식으로 수행될 수 있다. ** "프로세스를 까다롭게 만들다"는 말이 애매하게 들릴 수 있는 데 간단한 예시를 들자면! 이전 Lab 중에서 burp suite - Intruder를 이용해 brute force 공격을 했지만 response length가 다양하면서도 고유한 하나의 결과가 나오지 않아 결국 Grep - E..
Password 기반 인증체제에서 Brute force와 관련된 Lab을 풀어보도록 하자! Lab - Username enumeration via different responses ) lab에 들어가 Myaccount를 누르면 위와 같은 login 페이지가 나오는 걸 볼 수 있다. 일단 아무거나 입력해서 packet을 burp suite로 가로챘다. packet 내용을 확인해 보면 login 페이지에서 입력한 username & password 값이 들어가 있는 걸 볼 수 있다. 계정을 찾기 위해 첫 번째로 해볼 건 유효한 계정의 username을 찾는 것! lab 설명에 나와있는 username list를 파일로 만들어 load 해주면 payload를 세팅하기 쉽다. Intruder에서 usernam..
What is the impact of vulnerable authentication? 취약한 인증 체제로 인한 피해는 굉장히 심각할 수 있다. 공격자가 brute force 공격으로 다른 사용자의 계정을 탈취하거나 인증을 우회하게 되면 그들이 탈취한 계정이 가지는 모든 기능과 데이터에 대한 접근이 가능해진다. 만약 공격자가 시스템 관리자와 같이 높은 권한의 계정을 탈취했다면 그들은 시스템 전반에 걸친 제어권을 갖게 되며 잠재적으로 내부 인프라에 대한 접근성을 얻을 수 있다. 낮은 권한의 계정이 탈취되는 경우에도 공격자에게 알지 못했던 (상업적으로 민감한 사업 정보와 같은) 데이터를 얻을 권한이 주어지게 된다. 어떠한 데이터를 얻지 못한다고 하더라도 인증된 사용자에게만 출력되는 페이지에 접근 가능해지기 ..
개념적으로 authentication vulerabilities는 이해하기 간단한 이슈 중 하나지만, 보안과 인증의 관계성이 뚜렷하기 때문에 굉장히 중요한 이슈에 속한다고 할 수 있다. Authentication vulnerability는 잠재적으로 공격자가 민감한 데이터나 기능에 바로 접근할 수 있도록 허용하기 때문에 추가적인 공격 측면을 제공하게 될 수 있다. 그렇기 때문에 인증 취약점이 어떻게 악용되는지, 인증 취약점을 어떻게 식별하는지 그 과정에서 보호 체제가 어떻게 우회되는 지 아는 것은 필수적인 스킬이라 할 수 있다!! What is authentication Authentication이란, 주어진 사용자 또는 클라이언트의 신원 or 정체를 확인하는 과정을 얘기한다. 다른 말로 하자면 사용자가..
이번 글에서는 Blind SQL injection과 관련된 Lab 문제를 풀어보자!! 첫 번째 Lab )) :) 이 lab에서는 sql의 결과나 error 문구가 출력되지 않는 대신 "Welcome back" 문구가 페이지에 나온다고 한다. :) username & password column을 포함하는 users table이 있고 궁극적인 목표는 admin's password를 알아내 로그인하는 것! burp suite를 사용해 lab page를 요청하는 packet을 잡았다. 내용을 보면 Cookie : ~~ 해서 TrackingId의 값이 기재된 부분을 볼 수 있다. 본격적인 공격에 앞서 "welcome back"문구가 출력된다는 것이 어떤 말인지 확인해 보자. cookie_value' AND SU..
이번에 살펴본 TOPIC은 Blind SQL injection!! :) 앞에서 살펴본 상황과는 다르게 Blind SQL injection은 DB 에러나 SQL 결과가 반영된 HTTP 응답을 받을 수 없는 상황에서 사용된다. :) SQL 결과가 HTTP 응답에 포함되지 않는다는 건, 이전에 풀어본 lab에서와 같이 username이나 password가 페이지에 출력되지 않는다는 뜻이다. :) 이번에 살펴볼 application은 cookie를 사용해 인가된 사용자로부터 온 요청인지 확인한다. :) 주입된 SQL로 username과 같은 세부정보는 알아낼 수 없지만 cookie가 유효한 경우에는 "Welcome Back" 문구를 출력하고 유효하지 않은 경우에는 아무것도 출력하지 않는다. :) Welcome ..
이번에 정리할 SQL injection 내용은 Examining the database in SQL injection Attack이다. :) 앞에서 공부한 내용 중에서 username & password column을 갖는 users table이 있는 걸 공격자가 알고 이 내용을 조회하고 싶어 하는 상황을 가정했다. :) 사실 이 상황을 살펴보면 공격자는 users table에 대한 정보를 알아내는 단계를 미리 거쳐야 한다. :) Examining the database는 조회하고자 하는 "other database"의 테이블 정보를 수집하는 과정에서 사용할 수 있는 SQL injection이라 할 수 있다. Querying the database type and version 어떤 data base를 ..