일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- War Game
- Cookie
- php login page
- Leviathan
- 파일 업로드 취약점
- BANDiT
- php file upload
- overthewire
- php
- sql injection
- privilege escalation
- over the wire
- active reconnaissance
- active recon
- php 로그인 페이지 만들기
- SQLi
- tryhackme
- THM
- ssrf
- FTZ
- OS Command Injection
- Recon
- Server Side Request Forgery
- php To Do List
- php 파일 업로드하기
- file upload
- Reconnaissance
- Authentication
- Cryptography
- access control
- Today
- Total
목록전체 글 (242)
R's Hacking Daily Log
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를 ..
SQLi (3)에서 살펴본 내용과 관련된 port swigger의 lab을 풀어보자! 첫 번째 lab에서는 column의 개수를 알아내라고 한다. url 창에 ' union select null--을 입력했더니 server error가 발생했다. null을 두 번 넣고 세 번 넣고 했더니..! column 개수가 3개인 걸 확인할 수 있었다. 두 번째 lab에선 제공한 특정 문자열을 가지고 어떤 column이 string data를 갖는지 확인하라고 한다. column의 개수가 3개인 건 첫 번째 lab에서 알아냈으니 총 3번만 시도해보면 알 수 있다. 두 번째 column 자리에 문자열을 넣고 확인해보니 공격에 성공했다. 이로써 3개의 column 중에서 두 번째 column은 string data를 ..
이번에 살펴볼 SQLi와 관련된 내용은 "Retrieving data from other database tables" 이다. :) DB 안에 있는 또 다른 테이블의 데이터를 조회하는 공격 :) Retrieving data from other database tables와 관련해서 중요한 keywords, "UNION" 다른 테이블의 데이터를 조회하는 부분은 UNION이라는 keyword가 중요하게 사용된다. 따라서 UNION과 관련된 SQL 내용을 전반적으로 살펴볼까 한다. SQL injection UNION Attack UNION attack이 무엇인지를 살펴보기 전에 UNION이 무엇인지를 먼저 간단히 설명하자면, UNION은 SQL에서 접속사처럼 사용할 수 있는 keyword로 하나 or 그 이상..
SQLi과 관련하여 살펴볼 두 번째 case는 "Subverting application logic"이다. :) application의 로직대로 따르지 않을 테야!! 라는 느낌이다. :) 이해를 돕기 위해 사용자의 username & password로 로그인을 하는 application이 있다고 상상해 보자. wiener이라는 계정을 로그인하기 위해 사용자는 username & password를 입력했다. SELECT * FROM users WHERE username = 'wiener' AND password = 'bluecheese' 서버는 사용자의 input 값을 가지고 DB에 username은 wiener이고 password는 bluecheese인 user 내용을 확인해 볼 것이다. 이 결과를 토대..