Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
phpmyadmin-pmadb-central-sqli — phpMyAdmin 5.2.3 - 높음 - 원격 - SQLi - central columns pmadb 쿼리 잔여물 | Kitploit
도구/GitHubGitHub/abraxas/phpmyadmin-pmadb-central-sqli
Vulnerability AnalysisExploitationWeb Application ExploitationWeb SecurityPenetration TestingLabs & Practice
GitHubabraxas/phpmyadmin-pmadb-central-sqli

phpmyadmin-pmadb-central-sqli

phpMyAdmin 5.2.3 - 높음 - 원격 - SQLi - central columns pmadb 쿼리 잔여물

저장소 보기
4일 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

Abraxas Labs - phpmyadmin-pmadb-central-sqli

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  phpmyadmin-pmadb-central-sqli

phpmyadmin-pmadb-central-sqli

Class: SQLi Reach: Remote

phpMyAdmin 5.2.3 (tag RELEASE_5_2_3, commit 962857e). Central columns는 POST extra와 attribute를 control-user 링크에서 단일 인용부호 SQL 리터럴로 연결하여 col_extra를 기록합니다. 인접 필드는 escapeString을 거칩니다. 이 두 필드는 그렇지 않습니다.

로그인한 사용자가 multi_edit_central_column_save=1과 함께 field_attribute(또는 col_extra)에 인용부호를 넣어 index.php?route=/database/central-columns를 POST합니다. 그러면 getInsertQuery / updateOneColumn이 해당 문자열을 pma control user로서 pma__central_columns에 대해 실행합니다. 이 계정은 구성 저장소 사용자이며, 로그인한 SQL 박스가 아닙니다.

CVE-2016-5703은 central columns의 데이터베이스 이름이었습니다. 이 extra 및 attribute 필드는 그 버그가 아니었습니다.

ID아직 CVE 없음
ClassSQLi (pma__central_columns에 대한 control-user)
ReachRemote (인증된 쿠키 로그인, pmadb central columns 활성화)
CWECWE-89
CVSSHigh: 8.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
ProductphpMyAdmin
Affected5.2.3 tag RELEASE_5_2_3 (962857e)
Auth인증된 쿠키 로그인. pmadb central columns 활성화.
LicenseGNU Affero GPL v3.0
Lab127.0.0.1:19210 전용

공격자가 할 수 있는 일

Central columns를 열 수 있는 로그인한 phpMyAdmin 사용자는 pma__central_columns에 대해 control user로서 SQL을 주입할 수 있습니다.

PrivilegeMethod / pathLab-proven or inferred
control-user INSERT/UPDATE 문자열 깨기 (pmadb SQL의 무결성)POST index.php?route=/database/central-columns multi_edit_central_column_save=1과 field_attribute / col_extra에 인용부호Lab-proven. #1064 JSON 오류. control-user 오류에서 PMA-PMADB-CENTRAL-SQLI-WITNESS 확인
인접 필드를 in-band로 유지동일 POST, field_name에 인용부호Lab-proven. 행이 neg'col로 저장됨. escapeString이 방어함
다른 사용자의 central-column 행 읽기 또는 덮어쓰기동일 sink, 문자열이 닫히면Inferred. Lab은 구문 오류에서 중단됨. stacked query 없음
control user로서 추가 statement 실행control mysqli 링크가 multi-query를 허용하면 동일 sinkInferred. 기본 mysqli::query는 단일 statement. 여기서는 활성화되지 않음
다른 pmadb 테이블 도달 (bookmarks, history, pma__userconfig)stacked query 또는 INTO 스타일 쓰기가 가능한 경우에만Inferred. 이 lab의 control user는 phpmyadmin.* DML만 가짐

이 lab에서 차단됨: 인증되지 않은 접근, 로그인한 appuser SQL 박스(appdb 전용), OS shell, stacked query. pmadb / central columns가 꺼져 있으면 기능이 no-op (이는 FAIL이며, 이 leftover가 아님).

발견 방법

RELEASE_5_2_3에 대한 8개의 병렬 소스 탐색. CentralColumns.php의 인접 필드는 escapeString 처리됨. Extra와 attribute는 단일 인용부호 리터럴로 implode됨. CVE-2016-5703은 데이터베이스 이름이었으며, 이 컬럼들이 아니었음.

잘못된 방향: field_name의 인용부호를 leftover로 취급 (이는 neg'col로 저장됨; 그것이 negative임); general log가 이스케이프되지 않은 witness를 보여줄 것이라 기대 (INSERT는 성공적인 쓰기 전에 #1064로 죽음); pmadb-off를 이 leftover로 취급 (기능이 no-op).

Lab

python3 phpmyadmin-pmadb-central-sqli-Abraxas-Labs.py

또는

cd lab
./run.sh

Loopback 전용: http://127.0.0.1:19210. 이미지 phpmyadmin:5.2.3 및 mysql:8.0. Compose 프로젝트 phpmyadmin-pmadb-central-sqli. Witness PMA-PMADB-CENTRAL-SQLI-WITNESS.

SUCCESS phpmyadmin-pmadb-central-sqli how=live insert-syntax=yes field-name-escaped=yes general-log-unescaped=false error-has-witness=true PMA-PMADB-CENTRAL-SQLI-WITNESS

수정

extra와 attribute에 escapeString / quoteString(..., CONNECT_CONTROL). auto_increment, UNSIGNED, BINARY, UNSIGNED ZEROFILL, on update CURRENT_TIMESTAMP를 허용 목록에 추가. phpMyAdmin 6.x의 designer JSON blob에 대한 quoteString이 이 부류의 pmadb concat에 대한 패치된 형태임.

참고

  • github.com/phpmyadmin/phpmyadmin tag RELEASE_5_2_3 (962857e)
  • libraries/classes/Database/CentralColumns.php getInsertQuery / updateOneColumn
  • Controllers/Database/CentralColumnsController.php POST multi_edit_central_column_save
  • Route GET|POST /database/central-columns
  • 동일 pin leftovers: phpmyadmin-webauthn · phpmyadmin-designer-json-sqli · phpmyadmin-setup-validate · phpmyadmin-csrf-sql
  • CWE-89

License

GNU Affero GPL v3.0. LICENSE 참조. Loopback lab 전용. 보증 없음.

도구 다운로드