|
1 | 1 | #select |
2 | 2 | | EmailBad.go:12:56:12:67 | type conversion | EmailBad.go:9:10:9:17 | selection of Header | EmailBad.go:12:56:12:67 | type conversion | Email content may contain $@. | EmailBad.go:9:10:9:17 | selection of Header | untrusted input | |
3 | | -| main.go:31:57:31:78 | type conversion | main.go:29:21:29:31 | call to Referer | main.go:31:57:31:78 | type conversion | Email content may contain $@. | main.go:29:21:29:31 | call to Referer | untrusted input | |
4 | | -| main.go:40:3:40:7 | definition of write | main.go:37:21:37:31 | call to Referer | main.go:40:3:40:7 | definition of write | Email content may contain $@. | main.go:37:21:37:31 | call to Referer | untrusted input | |
5 | | -| main.go:52:46:52:59 | untrustedInput | main.go:46:21:46:31 | call to Referer | main.go:52:46:52:59 | untrustedInput | Email content may contain $@. | main.go:46:21:46:31 | call to Referer | untrusted input | |
6 | | -| main.go:53:52:53:65 | untrustedInput | main.go:46:21:46:31 | call to Referer | main.go:53:52:53:65 | untrustedInput | Email content may contain $@. | main.go:46:21:46:31 | call to Referer | untrusted input | |
7 | | -| main.go:63:16:63:22 | content | main.go:58:21:58:31 | call to Referer | main.go:63:16:63:22 | content | Email content may contain $@. | main.go:58:21:58:31 | call to Referer | untrusted input | |
8 | | -| main.go:76:50:76:56 | content | main.go:68:21:68:31 | call to Referer | main.go:76:50:76:56 | content | Email content may contain $@. | main.go:68:21:68:31 | call to Referer | untrusted input | |
9 | | -| main.go:76:59:76:65 | content | main.go:68:21:68:31 | call to Referer | main.go:76:59:76:65 | content | Email content may contain $@. | main.go:68:21:68:31 | call to Referer | untrusted input | |
10 | | -| main.go:77:16:77:22 | content | main.go:68:21:68:31 | call to Referer | main.go:77:16:77:22 | content | Email content may contain $@. | main.go:68:21:68:31 | call to Referer | untrusted input | |
11 | | -| main.go:89:37:89:50 | untrustedInput | main.go:82:21:82:31 | call to Referer | main.go:89:37:89:50 | untrustedInput | Email content may contain $@. | main.go:82:21:82:31 | call to Referer | untrusted input | |
12 | | -| main.go:93:16:93:23 | content2 | main.go:82:21:82:31 | call to Referer | main.go:93:16:93:23 | content2 | Email content may contain $@. | main.go:82:21:82:31 | call to Referer | untrusted input | |
| 3 | +| main.go:33:57:33:78 | type conversion | main.go:31:21:31:31 | call to Referer | main.go:33:57:33:78 | type conversion | Email content may contain $@. | main.go:31:21:31:31 | call to Referer | untrusted input | |
| 4 | +| main.go:42:3:42:7 | definition of write | main.go:39:21:39:31 | call to Referer | main.go:42:3:42:7 | definition of write | Email content may contain $@. | main.go:39:21:39:31 | call to Referer | untrusted input | |
| 5 | +| main.go:54:46:54:59 | untrustedInput | main.go:48:21:48:31 | call to Referer | main.go:54:46:54:59 | untrustedInput | Email content may contain $@. | main.go:48:21:48:31 | call to Referer | untrusted input | |
| 6 | +| main.go:55:52:55:65 | untrustedInput | main.go:48:21:48:31 | call to Referer | main.go:55:52:55:65 | untrustedInput | Email content may contain $@. | main.go:48:21:48:31 | call to Referer | untrusted input | |
| 7 | +| main.go:65:16:65:22 | content | main.go:60:21:60:31 | call to Referer | main.go:65:16:65:22 | content | Email content may contain $@. | main.go:60:21:60:31 | call to Referer | untrusted input | |
| 8 | +| main.go:78:50:78:56 | content | main.go:70:21:70:31 | call to Referer | main.go:78:50:78:56 | content | Email content may contain $@. | main.go:70:21:70:31 | call to Referer | untrusted input | |
| 9 | +| main.go:78:59:78:65 | content | main.go:70:21:70:31 | call to Referer | main.go:78:59:78:65 | content | Email content may contain $@. | main.go:70:21:70:31 | call to Referer | untrusted input | |
| 10 | +| main.go:79:16:79:22 | content | main.go:70:21:70:31 | call to Referer | main.go:79:16:79:22 | content | Email content may contain $@. | main.go:70:21:70:31 | call to Referer | untrusted input | |
| 11 | +| main.go:91:37:91:50 | untrustedInput | main.go:84:21:84:31 | call to Referer | main.go:91:37:91:50 | untrustedInput | Email content may contain $@. | main.go:84:21:84:31 | call to Referer | untrusted input | |
| 12 | +| main.go:95:16:95:23 | content2 | main.go:84:21:84:31 | call to Referer | main.go:95:16:95:23 | content2 | Email content may contain $@. | main.go:84:21:84:31 | call to Referer | untrusted input | |
| 13 | +| main.go:124:57:124:65 | call to Bytes | main.go:113:21:113:31 | call to Referer | main.go:124:57:124:65 | call to Bytes | Email content may contain $@. | main.go:113:21:113:31 | call to Referer | untrusted input | |
| 14 | +| main.go:141:57:141:65 | call to Bytes | main.go:129:21:129:31 | call to Referer | main.go:141:57:141:65 | call to Bytes | Email content may contain $@. | main.go:129:21:129:31 | call to Referer | untrusted input | |
13 | 15 | edges |
14 | | -| EmailBad.go:9:10:9:17 | selection of Header | EmailBad.go:9:10:9:29 | call to Get | provenance | Src:MaD:1 MaD:5 | |
| 16 | +| EmailBad.go:9:10:9:17 | selection of Header | EmailBad.go:9:10:9:29 | call to Get | provenance | Src:MaD:1 MaD:7 | |
15 | 17 | | EmailBad.go:9:10:9:29 | call to Get | EmailBad.go:12:56:12:67 | type conversion | provenance | | |
16 | | -| main.go:29:21:29:31 | call to Referer | main.go:31:57:31:78 | type conversion | provenance | Src:MaD:2 | |
17 | | -| main.go:37:21:37:31 | call to Referer | main.go:41:25:41:38 | untrustedInput | provenance | Src:MaD:2 | |
18 | | -| main.go:41:25:41:38 | untrustedInput | main.go:40:3:40:7 | definition of write | provenance | MaD:4 | |
19 | | -| main.go:46:21:46:31 | call to Referer | main.go:52:46:52:59 | untrustedInput | provenance | Src:MaD:2 | |
20 | | -| main.go:46:21:46:31 | call to Referer | main.go:53:52:53:65 | untrustedInput | provenance | Src:MaD:2 | |
21 | | -| main.go:58:21:58:31 | call to Referer | main.go:60:47:60:60 | untrustedInput | provenance | Src:MaD:2 | |
22 | | -| main.go:60:14:60:61 | call to NewContent | main.go:63:16:63:22 | content | provenance | | |
23 | | -| main.go:60:47:60:60 | untrustedInput | main.go:60:14:60:61 | call to NewContent | provenance | MaD:3 | |
24 | | -| main.go:68:21:68:31 | call to Referer | main.go:74:47:74:60 | untrustedInput | provenance | Src:MaD:2 | |
25 | | -| main.go:74:14:74:61 | call to NewContent | main.go:76:50:76:56 | content | provenance | | |
26 | | -| main.go:74:14:74:61 | call to NewContent | main.go:76:59:76:65 | content | provenance | | |
27 | | -| main.go:74:14:74:61 | call to NewContent | main.go:77:16:77:22 | content | provenance | | |
28 | | -| main.go:74:47:74:60 | untrustedInput | main.go:74:14:74:61 | call to NewContent | provenance | MaD:3 | |
29 | | -| main.go:82:21:82:31 | call to Referer | main.go:89:37:89:50 | untrustedInput | provenance | Src:MaD:2 | |
30 | | -| main.go:82:21:82:31 | call to Referer | main.go:91:48:91:61 | untrustedInput | provenance | Src:MaD:2 | |
31 | | -| main.go:91:15:91:62 | call to NewContent | main.go:93:16:93:23 | content2 | provenance | | |
32 | | -| main.go:91:48:91:61 | untrustedInput | main.go:91:15:91:62 | call to NewContent | provenance | MaD:3 | |
| 18 | +| main.go:31:21:31:31 | call to Referer | main.go:33:57:33:78 | type conversion | provenance | Src:MaD:2 | |
| 19 | +| main.go:39:21:39:31 | call to Referer | main.go:43:25:43:38 | untrustedInput | provenance | Src:MaD:2 | |
| 20 | +| main.go:43:25:43:38 | untrustedInput | main.go:42:3:42:7 | definition of write | provenance | MaD:5 | |
| 21 | +| main.go:48:21:48:31 | call to Referer | main.go:54:46:54:59 | untrustedInput | provenance | Src:MaD:2 | |
| 22 | +| main.go:48:21:48:31 | call to Referer | main.go:55:52:55:65 | untrustedInput | provenance | Src:MaD:2 | |
| 23 | +| main.go:60:21:60:31 | call to Referer | main.go:62:47:62:60 | untrustedInput | provenance | Src:MaD:2 | |
| 24 | +| main.go:62:14:62:61 | call to NewContent | main.go:65:16:65:22 | content | provenance | | |
| 25 | +| main.go:62:47:62:60 | untrustedInput | main.go:62:14:62:61 | call to NewContent | provenance | MaD:4 | |
| 26 | +| main.go:70:21:70:31 | call to Referer | main.go:76:47:76:60 | untrustedInput | provenance | Src:MaD:2 | |
| 27 | +| main.go:76:14:76:61 | call to NewContent | main.go:78:50:78:56 | content | provenance | | |
| 28 | +| main.go:76:14:76:61 | call to NewContent | main.go:78:59:78:65 | content | provenance | | |
| 29 | +| main.go:76:14:76:61 | call to NewContent | main.go:79:16:79:22 | content | provenance | | |
| 30 | +| main.go:76:47:76:60 | untrustedInput | main.go:76:14:76:61 | call to NewContent | provenance | MaD:4 | |
| 31 | +| main.go:84:21:84:31 | call to Referer | main.go:91:37:91:50 | untrustedInput | provenance | Src:MaD:2 | |
| 32 | +| main.go:84:21:84:31 | call to Referer | main.go:93:48:93:61 | untrustedInput | provenance | Src:MaD:2 | |
| 33 | +| main.go:93:15:93:62 | call to NewContent | main.go:95:16:95:23 | content2 | provenance | | |
| 34 | +| main.go:93:48:93:61 | untrustedInput | main.go:93:15:93:62 | call to NewContent | provenance | MaD:4 | |
| 35 | +| main.go:113:21:113:31 | call to Referer | main.go:119:28:119:41 | untrustedInput | provenance | Src:MaD:2 | |
| 36 | +| main.go:116:3:116:4 | definition of mw | main.go:116:29:116:30 | &... | provenance | FunctionModel | |
| 37 | +| main.go:116:29:116:30 | &... | main.go:124:57:124:57 | b | provenance | | |
| 38 | +| main.go:119:28:119:41 | untrustedInput | main.go:116:3:116:4 | definition of mw | provenance | MaD:6 | |
| 39 | +| main.go:124:57:124:57 | b | main.go:124:57:124:65 | call to Bytes | provenance | MaD:3 | |
| 40 | +| main.go:129:21:129:31 | call to Referer | main.go:136:30:136:43 | untrustedInput | provenance | Src:MaD:2 | |
| 41 | +| main.go:132:3:132:4 | definition of mw | main.go:132:29:132:30 | &... | provenance | FunctionModel | |
| 42 | +| main.go:132:29:132:30 | &... | main.go:141:57:141:57 | b | provenance | | |
| 43 | +| main.go:135:3:135:12 | definition of formWriter | main.go:132:3:132:4 | definition of mw | provenance | FunctionModel | |
| 44 | +| main.go:136:30:136:43 | untrustedInput | main.go:135:3:135:12 | definition of formWriter | provenance | MaD:5 | |
| 45 | +| main.go:141:57:141:57 | b | main.go:141:57:141:65 | call to Bytes | provenance | MaD:3 | |
33 | 46 | models |
34 | 47 | | 1 | Source: net/http; Request; true; Header; ; ; ; remote; manual | |
35 | 48 | | 2 | Source: net/http; Request; true; Referer; ; ; ReturnValue; remote; manual | |
36 | | -| 3 | Summary: github.com/sendgrid/sendgrid-go/helpers/mail; ; false; NewContent; ; ; Argument[1]; ReturnValue; taint; manual | |
37 | | -| 4 | Summary: io; ; false; WriteString; ; ; Argument[1]; Argument[0]; taint; manual | |
38 | | -| 5 | Summary: net/http; Header; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual | |
| 49 | +| 3 | Summary: bytes; Buffer; true; Bytes; ; ; Argument[receiver]; ReturnValue; taint; manual | |
| 50 | +| 4 | Summary: github.com/sendgrid/sendgrid-go/helpers/mail; ; false; NewContent; ; ; Argument[1]; ReturnValue; taint; manual | |
| 51 | +| 5 | Summary: io; ; false; WriteString; ; ; Argument[1]; Argument[0]; taint; manual | |
| 52 | +| 6 | Summary: mime/multipart; Writer; true; WriteField; ; ; Argument[0..1]; Argument[receiver]; taint; manual | |
| 53 | +| 7 | Summary: net/http; Header; true; Get; ; ; Argument[receiver]; ReturnValue; taint; manual | |
39 | 54 | nodes |
40 | 55 | | EmailBad.go:9:10:9:17 | selection of Header | semmle.label | selection of Header | |
41 | 56 | | EmailBad.go:9:10:9:29 | call to Get | semmle.label | call to Get | |
42 | 57 | | EmailBad.go:12:56:12:67 | type conversion | semmle.label | type conversion | |
43 | | -| main.go:29:21:29:31 | call to Referer | semmle.label | call to Referer | |
44 | | -| main.go:31:57:31:78 | type conversion | semmle.label | type conversion | |
45 | | -| main.go:37:21:37:31 | call to Referer | semmle.label | call to Referer | |
46 | | -| main.go:40:3:40:7 | definition of write | semmle.label | definition of write | |
47 | | -| main.go:41:25:41:38 | untrustedInput | semmle.label | untrustedInput | |
48 | | -| main.go:46:21:46:31 | call to Referer | semmle.label | call to Referer | |
49 | | -| main.go:52:46:52:59 | untrustedInput | semmle.label | untrustedInput | |
50 | | -| main.go:53:52:53:65 | untrustedInput | semmle.label | untrustedInput | |
51 | | -| main.go:58:21:58:31 | call to Referer | semmle.label | call to Referer | |
52 | | -| main.go:60:14:60:61 | call to NewContent | semmle.label | call to NewContent | |
53 | | -| main.go:60:47:60:60 | untrustedInput | semmle.label | untrustedInput | |
54 | | -| main.go:63:16:63:22 | content | semmle.label | content | |
55 | | -| main.go:68:21:68:31 | call to Referer | semmle.label | call to Referer | |
56 | | -| main.go:74:14:74:61 | call to NewContent | semmle.label | call to NewContent | |
57 | | -| main.go:74:47:74:60 | untrustedInput | semmle.label | untrustedInput | |
58 | | -| main.go:76:50:76:56 | content | semmle.label | content | |
59 | | -| main.go:76:59:76:65 | content | semmle.label | content | |
60 | | -| main.go:77:16:77:22 | content | semmle.label | content | |
61 | | -| main.go:82:21:82:31 | call to Referer | semmle.label | call to Referer | |
62 | | -| main.go:89:37:89:50 | untrustedInput | semmle.label | untrustedInput | |
63 | | -| main.go:91:15:91:62 | call to NewContent | semmle.label | call to NewContent | |
64 | | -| main.go:91:48:91:61 | untrustedInput | semmle.label | untrustedInput | |
65 | | -| main.go:93:16:93:23 | content2 | semmle.label | content2 | |
| 58 | +| main.go:31:21:31:31 | call to Referer | semmle.label | call to Referer | |
| 59 | +| main.go:33:57:33:78 | type conversion | semmle.label | type conversion | |
| 60 | +| main.go:39:21:39:31 | call to Referer | semmle.label | call to Referer | |
| 61 | +| main.go:42:3:42:7 | definition of write | semmle.label | definition of write | |
| 62 | +| main.go:43:25:43:38 | untrustedInput | semmle.label | untrustedInput | |
| 63 | +| main.go:48:21:48:31 | call to Referer | semmle.label | call to Referer | |
| 64 | +| main.go:54:46:54:59 | untrustedInput | semmle.label | untrustedInput | |
| 65 | +| main.go:55:52:55:65 | untrustedInput | semmle.label | untrustedInput | |
| 66 | +| main.go:60:21:60:31 | call to Referer | semmle.label | call to Referer | |
| 67 | +| main.go:62:14:62:61 | call to NewContent | semmle.label | call to NewContent | |
| 68 | +| main.go:62:47:62:60 | untrustedInput | semmle.label | untrustedInput | |
| 69 | +| main.go:65:16:65:22 | content | semmle.label | content | |
| 70 | +| main.go:70:21:70:31 | call to Referer | semmle.label | call to Referer | |
| 71 | +| main.go:76:14:76:61 | call to NewContent | semmle.label | call to NewContent | |
| 72 | +| main.go:76:47:76:60 | untrustedInput | semmle.label | untrustedInput | |
| 73 | +| main.go:78:50:78:56 | content | semmle.label | content | |
| 74 | +| main.go:78:59:78:65 | content | semmle.label | content | |
| 75 | +| main.go:79:16:79:22 | content | semmle.label | content | |
| 76 | +| main.go:84:21:84:31 | call to Referer | semmle.label | call to Referer | |
| 77 | +| main.go:91:37:91:50 | untrustedInput | semmle.label | untrustedInput | |
| 78 | +| main.go:93:15:93:62 | call to NewContent | semmle.label | call to NewContent | |
| 79 | +| main.go:93:48:93:61 | untrustedInput | semmle.label | untrustedInput | |
| 80 | +| main.go:95:16:95:23 | content2 | semmle.label | content2 | |
| 81 | +| main.go:113:21:113:31 | call to Referer | semmle.label | call to Referer | |
| 82 | +| main.go:116:3:116:4 | definition of mw | semmle.label | definition of mw | |
| 83 | +| main.go:116:29:116:30 | &... | semmle.label | &... | |
| 84 | +| main.go:119:28:119:41 | untrustedInput | semmle.label | untrustedInput | |
| 85 | +| main.go:124:57:124:57 | b | semmle.label | b | |
| 86 | +| main.go:124:57:124:65 | call to Bytes | semmle.label | call to Bytes | |
| 87 | +| main.go:129:21:129:31 | call to Referer | semmle.label | call to Referer | |
| 88 | +| main.go:132:3:132:4 | definition of mw | semmle.label | definition of mw | |
| 89 | +| main.go:132:29:132:30 | &... | semmle.label | &... | |
| 90 | +| main.go:135:3:135:12 | definition of formWriter | semmle.label | definition of formWriter | |
| 91 | +| main.go:136:30:136:43 | untrustedInput | semmle.label | untrustedInput | |
| 92 | +| main.go:141:57:141:57 | b | semmle.label | b | |
| 93 | +| main.go:141:57:141:65 | call to Bytes | semmle.label | call to Bytes | |
66 | 94 | subpaths |
0 commit comments