Hi Steven,

thanks for the analysis and patch ... already pushed to master

lg
tobi

Today Steven Chamberlain wrote:

> Time specifiers supplied in the Navigator Graph page web form are used
> to construct filenames in the cache directory.
>
> Also on that page, or in error output, the URL of that graph is not
> properly escaped.  Injection of some characters into HTML is possible,
> similar to CVE-2012-0790 but perhaps not enough to cause XSS.
>
> As a precaution, use the existing regex $xssBadRx to filter out
> unnecessary characters which fixes both issues.  Doing this in
> parse_datetime conveniently covers all uses.
>
> diff --git a/lib/Smokeping.pm b/lib/Smokeping.pm
> index cec130a..babd658 100644
> --- a/lib/Smokeping.pm
> +++ b/lib/Smokeping.pm
> @@ -1029,12 +1029,13 @@ sub smokecol ($) {
>  sub parse_datetime($){
>      my $in = shift;
>      for ($in){
> +        $in =~ s/$xssBadRx/_/g;
>       /^(\d+)$/ && do { my $value = $1; $value = time if $value > 2**32; 
> return $value};
>          
> /^\s*(\d{4})-(\d{1,2})-(\d{1,2})(?:\s+(\d{1,2}):(\d{2})(?::(\d{2}))?)?\s*$/  
> &&
>              return POSIX::mktime($6||0,$5||0,$4||0,$3,$2-1,$1-1900,0,0,-1);
>          /^now$/ && return time;
>          /([ -:a-z0-9]+)/ && return $1;
>      };
>      return time;
>  }
>
>

-- 
Tobi Oetiker, OETIKER+PARTNER AG, Aarweg 15 CH-4600 Olten, Switzerland
http://it.oetiker.ch t...@oetiker.ch ++41 62 775 9902 / sb: -9900


-- 
To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to