File tree Expand file tree Collapse file tree 1 file changed +13
-19
lines changed
javascript/ql/lib/semmle/javascript/security/dataflow Expand file tree Collapse file tree 1 file changed +13
-19
lines changed Original file line number Diff line number Diff line change @@ -251,25 +251,19 @@ module DomBasedXss {
251
251
}
252
252
}
253
253
254
- // /**
255
- // * A write to the `innerHTML` property of a DOM element, viewed as an XSS sink.
256
- // *
257
- // * Uses the Angular Renderer2 API, instead of the default `Element.innerHTML` property.
258
- // */
259
- // class AngularRender2SetPropertyInnerHtmlSink extends Sink {
260
- // AngularRender2SetPropertyInnerHtmlSink() {
261
- // exists(API::CallNode setProperty |
262
- // setProperty =
263
- // API::moduleImport("@angular/core")
264
- // .getMember("Renderer2")
265
- // .getInstance()
266
- // .getMember("setProperty")
267
- // .getACall() and
268
- // this = setProperty.getParameter(2).asSink() and
269
- // setProperty.getArgument(1).getStringValue() = "innerHTML"
270
- // )
271
- // }
272
- // }
254
+ /**
255
+ * A write to the `innerHTML` or `outerHTML` property of a DOM element, viewed as an XSS sink.
256
+ *
257
+ * Uses the Angular Renderer2 API, instead of the default `Element.innerHTML` property.
258
+ */
259
+ class AngularRender2SetPropertyInnerHtmlSink2 extends Sink {
260
+ AngularRender2SetPropertyInnerHtmlSink2 ( ) {
261
+ exists ( Angular2:: AngularRenderer2AttributeDefinition attrDef |
262
+ attrDef .getName ( ) = [ "innerHTML" , "outerHTML" ] and
263
+ this = attrDef .getValueNode ( )
264
+ )
265
+ }
266
+ }
273
267
274
268
/**
275
269
* A value being piped into the `safe` pipe in a template file,
You can’t perform that action at this time.
0 commit comments