CVE-2026-78030 in DBI정보

요약

\~에 의해 VulDB • 2026. 09. 19.

Perl용 DBI 1.653 이전 버전은 DBD::DBM에서 검증되지 않은 dbm_type 및 dbm_mldbm 속성을 통해 임의 모듈을 로드합니다.

DBD::DBM은 require를 호출할 때 dbm_type 및 dbm_mldbm 연결 속성 값을 전달하며, 해당 값이 실제 모듈 이름을 지칭하는지 여부를 확인하지 않습니다. require는 경로 형태를 띤 문자열을 리터럴 파일명으로 처리하므로 @INC를 참조하지 않습니다. 따라서 이 속성은 Perl이 로드하고 실행할 파일을 결정합니다.

DBD::DBM이 dbm_mldbm 앞에 붙이는 MLDBM::Serializer:: 접두사는 경계(boundary) 역할을 하지 않습니다. :: 구분자만 /로 치환되므로, /를 포함하는 값은 serializer 디렉토리 밖으로 탈출할 수 있습니다. 또한 이 값은 $MLDBM::Serializer에 할당되며, 테이블을 tie할 때 MLDBM도 동일한 방식으로 이를 require합니다.

DSN 조각이나 스토리지 백엔드를 선택하는 파라미터와 같은 경로를 통해 신뢰할 수 없는 당사자가 이러한 속성 중 하나에 영향을 줄 수 있는 호출자는 해당 값이 지칭하는 모듈의 파일 스코프 코드를 실행하게 됩니다.

예를 들어, 다음과 같습니다:

my $dsn = "dbi:DBM:f_dir=/var/db;dbm_type=../../Untrusted.pm" my $dbh = DBI->connect( $dsn );

DBD::Gofer는 연결 속성을 서버 측으로 전달하며, DBI::ProxyServer는 DSN이 드라이버 접두사로 시작하는지 여부만 확인한다는 점에 유의하십시오.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

책임이 있는

CPANSec

예약하다

2026. 08. 22.

모더레이션

수락

항목

VDB-407940

EPSS

0.00000

출처

Want to stay up to date on a daily basis?

Enable the mail alert feature now!