PostgreSQL injection
**당신이 해킹 경력에 관심이 있다면서 해킹할 수 없는 것을 해킹하고 싶다면 - 우리는 고용 중입니다! (유창한 폴란드어 필수).
이 페이지는 포스트그레스ql 데이터베이스에서 발견된 SQL 삽입을 악용하는 데 도움이 되는 다양한 트릭을 설명하고 있으며 https://github.com/swisskyrepo/PayloadsAllTheThings/blob/master/SQL%20Injection/PostgreSQL%20Injection.md 에서 찾을 수 있는 트릭을 보완합니다.
네트워크 상호작용 - 권한 상승, 포트 스캐너, NTLM 챌린지 응답 노출 및 유출
**PostgreSQL 모듈 dblink
**은 다른 PostgreSQL 인스턴스에 연결하고 TCP 연결을 실행하는 기능을 제공합니다. 이러한 기능은 COPY FROM
기능과 결합되어 권한 상승, 포트 스캐닝 및 NTLM 챌린지 응답 캡처와 같은 작업을 가능하게 합니다. 이러한 공격을 실행하는 자세한 방법은 이러한 공격을 수행하는 방법을 확인하세요.
dblink 및 대형 객체를 사용한 유출 예제
CTF 예제를 보고 대형 객체 내에 데이터를 로드한 다음 dblink_connect
함수의 사용자 이름 내의 대형 객체 내용을 유출하는 방법을 볼 수 있습니다. 이 예제를 읽어보세요.
PostgreSQL 공격: 읽기/쓰기, RCE, 권한 상승
PostgreSQL에서 호스트를 침해하고 권한을 상승하는 방법을 확인하세요:
page5432,5433 - Pentesting PostgresqlWAF 우회
PostgreSQL 문자열 함수
문자열 조작은 WAF 우회나 다른 제한을 우회하는 데 도움이 될 수 있습니다. 이 페이지에서 유용한 문자열 함수를 찾을 수 있습니다.
Stacked Queries
PostgreSQL은 stacked queries를 지원하지만, 1개의 응답만을 예상하고 있을 때 2개의 응답이 반환되면 여러 응용 프로그램에서 오류가 발생할 수 있습니다. 그러나 시간 삽입을 통해 여전히 stacked queries를 남용할 수 있습니다:
XML 트릭
query_to_xml
이 함수는 모든 데이터를 XML 형식으로 한 파일에 반환합니다. 많은 데이터를 한 행에 덤프하고 싶을 때 이상적입니다:
database_to_xml
이 함수는 전체 데이터베이스를 XML 형식으로 덤프하여 1행에 저장합니다 (데이터베이스가 매우 큰 경우 DoS 공격이 발생할 수 있으니 주의하십시오).
16 진수 문자열
만약 문자열 내에 쿼리를 실행할 수 있다면 (예를 들어 query_to_xml
함수를 사용하는 경우). convert_from
을 사용하여 문자열을 16 진수로 전달하고 이를 통해 필터를 우회할 수 있습니다:
금지된 따옴표
만약 페이로드에 따옴표를 사용할 수 없다면 기본 절에 대해 CHR
를 사용하여 이를 우회할 수 있습니다 (문자 연결은 SELECT, INSERT, DELETE 등의 기본 쿼리에 대해서만 작동하며 모든 SQL 문에 대해 작동하지는 않습니다):
또는 $
를 사용하여 동일한 결과를 반환합니다:
해킹 경력에 관심이 있고 해킹할 수 없는 것을 해킹하고 싶다면 - 채용 중입니다! (유창한 폴란드어 필수).
Last updated