@@ -8,13 +8,13 @@ import (
88func serve2 () {
99 http .HandleFunc ("/echo" , func (w http.ResponseWriter , r * http.Request ) {
1010 r .ParseForm ()
11- data := r .Form .Get ("data" )
11+ data := r .Form .Get ("data" ) // $ Source[go/reflected-xss]
1212
1313 // Not OK; direct flow from request body to output.
1414 // The response Content-Type header is derived from a call to
1515 // `http.DetectContentType`, which can be easily manipulated into returning
1616 // `text/html` for XSS.
17- w .Write ([]byte (data ))
17+ w .Write ([]byte (data )) // $ Alert[go/reflected-xss]
1818 })
1919 http .ListenAndServe (":80" , nil )
2020}
@@ -46,11 +46,11 @@ func serve4() {
4646func serve5 () {
4747 http .HandleFunc ("/echo" , func (w http.ResponseWriter , r * http.Request ) {
4848 r .ParseForm ()
49- data := r .Form .Get ("data" )
49+ data := r .Form .Get ("data" ) // $ Source[go/reflected-xss]
5050
5151 w .Header ().Set ("Content-Type" , "text/html" )
5252
53- fmt .Fprintf (w , "Constant: %s" , data ) // Not OK; the content-type header is explicitly set to html
53+ fmt .Fprintf (w , "Constant: %s" , data ) // $ Alert[go/reflected-xss] // The content-type header is explicitly set to html
5454 })
5555 http .ListenAndServe (":80" , nil )
5656}
@@ -60,8 +60,8 @@ func serve10() {
6060 r .ParseForm ()
6161 data := r .Form .Get ("data" )
6262
63- data = r .FormValue ("data" )
64- fmt .Fprintf (w , "\t <html><body>%s</body></html>" , data ) // Not OK
63+ data = r .FormValue ("data" ) // $ Source[go/reflected-xss]
64+ fmt .Fprintf (w , "\t <html><body>%s</body></html>" , data ) // $ Alert[go/reflected-xss]
6565 })
6666}
6767
@@ -70,13 +70,13 @@ func serve11() {
7070 r .ParseForm ()
7171 data := r .Form .Get ("data" )
7272
73- data = r .FormValue ("data" )
73+ data = r .FormValue ("data" ) // $ Source[go/reflected-xss]
7474 fmt .Fprintf (w , `
7575<html>
7676 <body>
7777 %s
7878 </body>
79- </html>` , data ) // Not OK
79+ </html>` , data ) // $ Alert[go/reflected-xss]
8080 })
8181}
8282
@@ -85,10 +85,10 @@ func serve12() {
8585 r .ParseForm ()
8686 data := r .Form .Get ("data" )
8787
88- data = r .FormValue ("data" )
88+ data = r .FormValue ("data" ) // $ Source[go/reflected-xss]
8989 fmt .Fprintf (w , `
9090 %s
91- ` , data ) // Not OK
91+ ` , data ) // $ Alert[go/reflected-xss]
9292 })
9393}
9494
@@ -110,7 +110,7 @@ func serve14() {
110110 r .ParseForm ()
111111 data := r .Form .Get ("data" )
112112
113- data = r .FormValue ("data" )
114- fmt .Fprintf (w , "<html><body>%s</body></html>" , data ) // Not OK
113+ data = r .FormValue ("data" ) // $ Source[go/reflected-xss]
114+ fmt .Fprintf (w , "<html><body>%s</body></html>" , data ) // $ Alert[go/reflected-xss]
115115 })
116116}
0 commit comments