javascript.angular.security.detect-third-party-angular-translate.detect-angular-translateprovider-useStrategy-method

Author
490
Download Count*
License
If the $translateSanitization.useStrategy is set to null or blank this can be dangerous.
Run Locally
Run in CI
Defintion
rules:
- id: detect-angular-translateprovider-useStrategy-method
patterns:
- pattern: |
$translateSanitization.useStrategy();
- pattern-inside: |
app.controller(..., function($scope,$sce){
...
});
message: If the $translateSanitization.useStrategy is set to null or blank this
can be dangerous.
languages:
- javascript
severity: WARNING
metadata:
references:
- https://docs.angularjs.org/api/ng/service/$sce#trustAsUrl
- https://owasp.org/www-chapter-london/assets/slides/OWASPLondon20170727_AngularJS.pdf
category: security
technology:
- angular
- typescript
license: Commons Clause License Condition v1.0[LGPL-2.1-only]
Examples
detect-third-party-angular-translate.js
var app = angular.module('MyApp', []);
app.controller('myCtrl', function($scope, $sce) {
// ruleid: detect-angular-translateprovider-useStrategy-method
$translateSanitization.useStrategy();
var output = 'Hallo <b>{{name}}</b>';
// ruleid:detect-angular-translateprovider-translations-method
$translateProvider.translations('de', {output});
// ruleid:detect-angular-translateprovider-translations-method
$translateProvider.translations('de', {GREETING: 'Hallo <b>{{name}}</b>'});
});
Short Link: https://sg.run/dKxQ