fix XSS
authorIvan Kohler <ivan@freeside.biz>
Fri, 12 Apr 2013 01:10:13 +0000 (18:10 -0700)
committerIvan Kohler <ivan@freeside.biz>
Fri, 12 Apr 2013 01:10:13 +0000 (18:10 -0700)
FS/FS/UI/Web.pm

index 22b4456..59e59d4 100644 (file)
@@ -404,23 +404,26 @@ sub cust_fields_subs {
   my $unlinked_warn = 0;
   return map { 
     my $f = $_;
-    if( $unlinked_warn++ ) {
+    if ( $unlinked_warn++ ) {
+
       sub {
         my $record = shift;
-        if( $record->custnum ) {
-          $record->$f(@_);
-        }
-        else {
+        if ( $record->custnum ) {
+          encode_entities( $record->$f(@_) );
+        } else {
           '(unlinked)'
         };
-      }
-    } 
-    else {
+      };
+
+    } else {
+
       sub {
         my $record = shift;
-        $record->$f(@_) if $record->custnum;
-      }
+        $record->custnum ? encode_entities( $record->$f(@_) ) : '';
+      };
+
     }
+
   } @cust_fields;
 }