CVSTrac远程拒绝服务漏洞

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

CVSTrac是一个为CVS设计的补丁和错误跟踪系统。 CVSTrac在处理用户请求时存在输入验证漏洞,远程攻击者可能利用此漏洞执行拒绝服务攻击。 CVSTrac的format.c文件中is_eow()函数没有检查用户提供字符串的first(!)字符中的End-Of-Word终止字符,而是迭代字符串,这可能允许跳过单个嵌入的问号。然后is_repository_file()函数假设文件名字符串中不会包含单个问号,因此可能出现SQL转义问题。 但由于is_eow()处理空格的方式,尽管攻击者可以执行SQL注入攻击,但仅限于包含有能够超过isspace(3)函数之后字符的SQL查询。如果攻击者在提交的commit消息、凭据或Wiki页面中包含有特殊的文本结构的话,就可能导致拒绝服务,具体取决于所请求的页面。 CVSTrac CVSTrac 2.0.0 临时解决方法: ## ## cvstrack-resurrect.pl -- CVSTrac Post-Attack Database Resurrection ## Copyright (c) 2007 Ralf S. Engelschall &lt;<a href="mailto:rse@engelschall.com" target="_blank">rse@engelschall.com</a>&gt; ## use DBI; # requires OpenPKG perl-dbi use DBD::SQLite; # requires OpenPKG perl-dbi, perl-dbi::with_dbd_sqlite=yes use DBIx::Simple; # requires OpenPKG perl-dbix use Date::Format; # requires OpenPKG perl-time my $db_file = $ARGV[0]; my $db = DBIx::Simple-&gt;connect( &quot;dbi:SQLite:dbname=$db_file&quot;, &quot;&quot;, &quot;&quot;, { RaiseError =&gt; 0, AutoCommit =&gt; 0 } ); my $eow =...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息