Web Security(28)
-
blind sql injection
blind sql injection의 경우, error sql injection 과 union base sql injection에 비하면 너무 많이 걸린다. 하지만, 결과값을 확인하기 힘든 경우 time base blind sql injection 혹은 blind sql injection을 사용할 수 있는다. 또한, blind sql injection은 error, union base 보다 환경적으로 더 발생활 확률이 높다. 이에 blind sql injection을 설명 해보고자 한다. 아래 영상은 blind sql injection 버그바운티 영상이다. 궁금하신분들은 한번 구경해보세요 https://www.youtube.com/watch?v=bhPV7Mmp66o 일단 blind sql injecti..
2024.10.29 -
sql injection CTF vs real world. finger print
sql injection을 통해서 인증 우회, 정보 탈취, 서버권한 탈취 등등 많을 것을 할 수 있다. 그런데 대부분의 CTF의 환경에서 sql injection의 경우 서버 코드 및 DB의 스키마를 알고 있는 상태에서 공격한다, 하지만 진짜 웹 사이트는 그러한 정보가 주어지지 않는다. 이에 진짜 웹 사이트를 공격할 때 어떤 방식으로 진행되는지 설명하고자 한다. sql injection 정보탈취 시 error base attack, union base attack, sub query base attack, blind attack, out bound attack 등등 많다. 그 중에 대표적으로 union base attack을 처음부터 어떻게 진행되는지 설명해보도록 하겠다. 대표적으로 이런 검색창이 대부분..
2024.10.27 -
버그 바운티 RECON. feat hackerone
버그 바운티에서 중요한 것은 타겟 선정 및 정찰인거 같아. 이에 따라 정찰하는 방식을 설명하고자 한다. HAKERONE 로그인 후 버그바운티 SCOPE에 들어간다. 와일드카드.wystart.com 등등의 in Scope가 존재한다. 서브도메인을 포함하여 해킹을 해도 된다는 뜻이다.일단. 조금 취약해보이는 도메인을 고르자 ㅎㅎ *. mworld.com 을 대상으로 분석하겠다. 정찰 1. assetfinder 정찰 2. subfinder 3. 통합 툴을 여러개 돌리는 이유는 한개의 툴에서 노치는 부분을 없애기 위해서이다. 도합. 중복 제거를 하니 210개의 도메인이 나왔다, 4. 살아있는 도메인 확인 도메인이 존재한다. 모두 살아있는 상태는 아니다.httpx를 사용하여 살아 있는 상태 확인
2024.10.25 -
SQL injection 취약 부분 찾기
웹 CTF를 풀다가 실제 웹 사이트의 취약점을 찾을 때, 취약한지 취약하지 않은지 빠르게 확인하는 절차가 필요하다. 아무래도 CTF의 경우 SQL injection 문제의 경우 확실히 input 요소에 sql 구문을 잘 넣기만 하면 된다는 것을 알고 있다. 하지만 버그 바운티 등 실제 사이트는 아니다. 또한 소스코드의 유무에서 차이가 난다. 그렇다면 어떻게 빠르게 취약점의 존재여부를 확인할 수 있을지가 문제가 된다. 만약 ?indexPage=1이라는 파라미터가 존재한다면 2-1과 같이 산술연산을 통해서 확인을 할 수 있다. 에러가 발생하지 않고 page=1를 반환한다면 취약한 점이 존재하는것이다. ?indexFind = hello의 처럼 문자를 넣는 경우 hel' 'lo처럼 연결연사자를 사용할 수 ..
2024.10.24 -
NO-SQL injection
파일의 저장방식은 아래 사진처럼 발전하였다. NoSQL은 전통적인 관계형 데이터베이스 관리 시스템(RDBMS)과는 다른 방식으로 데이터를 저장하고 관리하는 데이터베이스 유형을 의미합니다. **스키마(Schema)**는 데이터베이스에서 데이터 구조와 그 구조에 대한 제약 조건을 정의하는 것을 의미합니다. 쉽게 말해, 데이터베이스 스키마는 데이터가 어떻게 조직되고 저장될 것인지를 나타내는 청사진 또는 설계도와 같습니다. NO-sql에서는 스키마가 정해져 있지 않으며 key-value와 같은 형식으로 값을 저장합니다. 또한, JSON 형식으로 쿼리를 만들 수 있습니다. 대표적으로 몽고 DB와 REDIS 가 존재합니다. 그렇다면 NO-SQL injection은 어떤 방식으로 진행되는지 몽고DB 통하여 설명하도..
2024.10.02 -
sql injection
sql injectioninjection 공격이라고 한다면 대표적으로 SQL injection을 떠오를 것이다. SQL Injection이란 SQL 문법 상의 빈틈을 통하여 서버의 권한을 탈취하거나 정보를 탈취하는 공격이다. SQL injection을 알기 위해서 SQL 문법을 알야한다.DDL, DML ,DCL - DMLSQL에서는 Data Definition Language (DDL), Data Manipulation Language (DML), Data Control Language (DCL) 총 세 가지의 질의 언어를 제공합니다. 이중 사용자는 DML을 이용하게 됩니다. 그렇기에 DML에 어떻게 이루어져 있는지 알아야 합니다. DML은 SELECT, INSERT, UPDATE, DELET 문으로 ..
2024.10.02