@offgridsec/kira-lite-mcp 0.1.3 → 0.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/rules/go.js CHANGED
@@ -1,184 +1 @@
1
- export const goRules = [
2
- // === SQL Injection ===
3
- {
4
- id: "GO-SQLI-001",
5
- cwe: "CWE-89",
6
- severity: "critical",
7
- title: "SQL Injection — String concatenation/formatting in query",
8
- description: "Using fmt.Sprintf or string concatenation in SQL queries enables injection. Go's database/sql supports parameterized queries.",
9
- languages: ["go"],
10
- pattern: /(?:Query|Exec|QueryRow|QueryContext|ExecContext|QueryRowContext|Prepare)\s*\(\s*(?:ctx\s*,\s*)?(?:fmt\.Sprintf|[^,)]+\+)/g,
11
- fix: "Use parameterized queries: db.Query(\"SELECT * FROM users WHERE id = $1\", id)",
12
- },
13
- {
14
- id: "GO-SQLI-002",
15
- cwe: "CWE-89",
16
- severity: "critical",
17
- title: "SQL Injection — String interpolation in raw SQL",
18
- description: "String formatting used to build SQL queries dynamically.",
19
- languages: ["go"],
20
- pattern: /fmt\.Sprintf\s*\(\s*["'](?:SELECT|INSERT|UPDATE|DELETE|DROP|ALTER|CREATE)\b/gi,
21
- fix: "Use parameterized queries with $1, $2 placeholders instead of fmt.Sprintf for SQL.",
22
- },
23
- // === Command Injection ===
24
- {
25
- id: "GO-CMDI-001",
26
- cwe: "CWE-78",
27
- severity: "critical",
28
- title: "Command Injection — exec.Command with user input",
29
- description: "Building shell commands from user input enables arbitrary command execution.",
30
- languages: ["go"],
31
- pattern: /exec\.Command\s*\(\s*(?:fmt\.Sprintf|[^,)]+\+)/g,
32
- fix: "Pass arguments as separate parameters to exec.Command: exec.Command(\"cmd\", \"arg1\", \"arg2\").",
33
- },
34
- {
35
- id: "GO-CMDI-002",
36
- cwe: "CWE-78",
37
- severity: "critical",
38
- title: "Command Injection — Shell execution via bash -c",
39
- description: "Using bash -c with dynamic strings passes through shell interpretation, enabling injection.",
40
- languages: ["go"],
41
- pattern: /exec\.Command\s*\(\s*['"](?:bash|sh|cmd)['"]\s*,\s*['"](?:-c|\/c)['"]\s*,/g,
42
- fix: "Avoid shell invocation. Use exec.Command with direct binary and argument list.",
43
- },
44
- // === Path Traversal ===
45
- {
46
- id: "GO-PATH-001",
47
- cwe: "CWE-22",
48
- severity: "high",
49
- title: "Path Traversal — Unsanitized file path",
50
- description: "User input used in file operations without sanitization can access arbitrary files.",
51
- languages: ["go"],
52
- pattern: /(?:os\.(?:Open|Create|ReadFile|WriteFile|Remove|Stat|MkdirAll)|ioutil\.(?:ReadFile|WriteFile)|filepath\.Join)\s*\(\s*(?:r\.|req\.|c\.|ctx\.|params|query|mux\.Vars)/g,
53
- fix: "Use filepath.Clean() and verify the resolved path is within the expected base directory using strings.HasPrefix.",
54
- },
55
- // === SSRF ===
56
- {
57
- id: "GO-SSRF-001",
58
- cwe: "CWE-918",
59
- severity: "high",
60
- title: "Server-Side Request Forgery — Dynamic URL from user input",
61
- description: "Fetching URLs constructed from user input can access internal services.",
62
- languages: ["go"],
63
- pattern: /http\.(?:Get|Post|Head|NewRequest)\s*\(\s*(?:fmt\.Sprintf|[^,)]+\+\s*(?:r\.|req\.|params|query))/g,
64
- fix: "Validate URLs against an allowlist. Block private/internal IP ranges (10.x, 172.16-31.x, 192.168.x).",
65
- },
66
- // === Weak Crypto ===
67
- {
68
- id: "GO-CRYPTO-001",
69
- cwe: "CWE-327",
70
- severity: "high",
71
- title: "Weak Cryptography — MD5 usage",
72
- description: "MD5 is cryptographically broken. Collisions can be generated in seconds.",
73
- languages: ["go"],
74
- pattern: /(?:md5\.(?:New|Sum)|crypto\/md5)/g,
75
- fix: "Use crypto/sha256 or stronger. For passwords, use golang.org/x/crypto/bcrypt.",
76
- },
77
- {
78
- id: "GO-CRYPTO-002",
79
- cwe: "CWE-327",
80
- severity: "high",
81
- title: "Weak Cryptography — SHA1 usage",
82
- description: "SHA1 is deprecated for security use due to practical collision attacks.",
83
- languages: ["go"],
84
- pattern: /(?:sha1\.(?:New|Sum)|crypto\/sha1)/g,
85
- fix: "Use crypto/sha256 or stronger.",
86
- },
87
- {
88
- id: "GO-CRYPTO-003",
89
- cwe: "CWE-327",
90
- severity: "high",
91
- title: "Weak Cryptography — DES usage",
92
- description: "DES and 3DES are deprecated. DES has only 56-bit keys.",
93
- languages: ["go"],
94
- pattern: /(?:des\.NewCipher|des\.NewTripleDESCipher|crypto\/des)/g,
95
- fix: "Use AES (crypto/aes) with GCM mode instead of DES.",
96
- },
97
- // === Insecure Random ===
98
- {
99
- id: "GO-RAND-001",
100
- cwe: "CWE-338",
101
- severity: "high",
102
- title: "Insecure Random — math/rand for security",
103
- description: "math/rand is predictable and must not be used for security-sensitive operations like tokens or keys.",
104
- languages: ["go"],
105
- pattern: /math\/rand|rand\.(?:Intn|Int31|Int63|Float64|Read)\s*\(/g,
106
- fix: "Use crypto/rand for security-sensitive random values: crypto/rand.Read(buf)",
107
- },
108
- // === TLS ===
109
- {
110
- id: "GO-TLS-001",
111
- cwe: "CWE-295",
112
- severity: "critical",
113
- title: "Disabled TLS Certificate Verification",
114
- description: "InsecureSkipVerify disables certificate validation, allowing man-in-the-middle attacks.",
115
- languages: ["go"],
116
- pattern: /InsecureSkipVerify\s*:\s*true/g,
117
- fix: "Remove InsecureSkipVerify: true. Use proper CA certificates for TLS verification.",
118
- },
119
- {
120
- id: "GO-TLS-002",
121
- cwe: "CWE-327",
122
- severity: "high",
123
- title: "Weak TLS Version — TLS 1.0 or 1.1",
124
- description: "TLS versions below 1.2 have known vulnerabilities (POODLE, BEAST, etc.).",
125
- languages: ["go"],
126
- pattern: /(?:MinVersion|MaxVersion)\s*:\s*tls\.Version(?:SSL30|TLS10|TLS11)/g,
127
- fix: "Set MinVersion to tls.VersionTLS12 or tls.VersionTLS13.",
128
- },
129
- // === Template Injection ===
130
- {
131
- id: "GO-TMPL-001",
132
- cwe: "CWE-1336",
133
- severity: "critical",
134
- title: "Template Injection — Dynamic template from user input",
135
- description: "Parsing user input as a Go template can lead to information disclosure or code execution.",
136
- languages: ["go"],
137
- pattern: /template\.(?:New|Must)\s*\([^)]*\)\.Parse\s*\(\s*(?:r\.|req\.|params|query|body|input)/g,
138
- fix: "Use predefined template files. Never parse user input as template strings.",
139
- },
140
- // === Race Conditions ===
141
- {
142
- id: "GO-RACE-001",
143
- cwe: "CWE-362",
144
- severity: "medium",
145
- title: "Potential Race Condition — Goroutine accessing shared state",
146
- description: "Goroutines accessing shared variables without synchronization can cause data races.",
147
- languages: ["go"],
148
- pattern: /go\s+func\s*\(\s*\)\s*\{[^}]*(?:map\[|=\s*(?:append|[^=]))/g,
149
- fix: "Use sync.Mutex, sync.RWMutex, channels, or atomic operations to protect shared state.",
150
- },
151
- // === Unhandled Errors ===
152
- {
153
- id: "GO-ERR-001",
154
- cwe: "CWE-391",
155
- severity: "medium",
156
- title: "Unchecked Error Return — Discarded error value",
157
- description: "Ignoring error returns in Go can hide failures and lead to unexpected behavior or security issues.",
158
- languages: ["go"],
159
- pattern: /[a-zA-Z_]+\s*,\s*_\s*[:=]=?\s*(?:os\.|ioutil\.|io\.|http\.|sql\.|json\.|crypto\.|tls\.)/g,
160
- fix: "Always check error returns: if err != nil { return err }",
161
- },
162
- // === Hardcoded Bind to All Interfaces ===
163
- {
164
- id: "GO-NET-001",
165
- cwe: "CWE-668",
166
- severity: "medium",
167
- title: "Server Listening on All Interfaces",
168
- description: "Binding to 0.0.0.0 exposes the server to all network interfaces including public ones.",
169
- languages: ["go"],
170
- pattern: /(?:ListenAndServe|Listen)\s*\(\s*['"](?:0\.0\.0\.0|:)(?::\d+)?['"]/g,
171
- fix: "Bind to localhost (127.0.0.1) for development or use firewall rules in production.",
172
- },
173
- // === Unsafe pointer ===
174
- {
175
- id: "GO-UNSAFE-001",
176
- cwe: "CWE-242",
177
- severity: "high",
178
- title: "Use of unsafe Package",
179
- description: "The unsafe package bypasses Go's type safety and memory safety guarantees.",
180
- languages: ["go"],
181
- pattern: /unsafe\.Pointer/g,
182
- fix: "Avoid unsafe.Pointer unless absolutely necessary. Document why it's needed and review carefully.",
183
- },
184
- ];
1
+ (function(_0x507014,_0x1c4b7b){const _0x5c234f={_0x33dd89:0xc2,_0x3bf5ff:0x3d0,_0x2ac013:0x3ec,_0xeefedd:0x383,_0x32bb72:0x1dd,_0x558436:0x22c,_0x1e4019:0x1c4},_0x3f4f8c={_0x49942f:0x3ab};function _0x5b72b0(_0x506ea0,_0x309ee6){return _0x28bf(_0x506ea0-0xd6,_0x309ee6);}function _0x1aa3c7(_0x39af96,_0x3c9738){return _0x28bf(_0x39af96- -_0x3f4f8c._0x49942f,_0x3c9738);}const _0x558fe9=_0x507014();while(!![]){try{const _0x1860f6=parseInt(_0x5b72b0(0x2c7,0x313))/(-0xbcb*-0x2+-0x1*-0x1db9+0x2*-0x1aa7)*(parseInt(_0x1aa3c7(-0xd2,-0xe1))/(0x941*0x1+-0x225b+-0x191c*-0x1))+parseInt(_0x1aa3c7(-0xcd,-0x14d))/(-0xc9e+-0x504*-0x1+-0x1*-0x79d)*(parseInt(_0x1aa3c7(-_0x5c234f._0x33dd89,-0x116))/(-0x2003+0x902+0x1705*0x1))+parseInt(_0x5b72b0(_0x5c234f._0x3bf5ff,_0x5c234f._0x2ac013))/(-0x1c10+-0x1*0x4a9+-0xb*-0x2fa)*(-parseInt(_0x5b72b0(0x43d,0x348))/(0x1846+-0x102b*0x2+0x816))+-parseInt(_0x5b72b0(_0x5c234f._0xeefedd,0x3b9))/(0x58*0x67+0x6c7*0x1+0x2*-0x1514)*(-parseInt(_0x1aa3c7(-0x1b1,-0xb4))/(0x25d1+0x2268*-0x1+-0x361))+parseInt(_0x1aa3c7(-_0x5c234f._0x32bb72,-_0x5c234f._0x558436))/(0xd52+-0x682+-0x6c7)*(-parseInt(_0x5b72b0(0x2ec,0x3b4))/(-0x187e+0x23b*0x9+-0xa3*-0x7))+parseInt(_0x1aa3c7(-0x1ce,-_0x5c234f._0x1e4019))/(0x1*-0x551+0x239f+-0x1e43*0x1)+-parseInt(_0x1aa3c7(-0x63,0x61))/(0x4*0x46c+-0x2*-0x1bd+0x66*-0x35);if(_0x1860f6===_0x1c4b7b)break;else _0x558fe9['push'](_0x558fe9['shift']());}catch(_0x503edc){_0x558fe9['push'](_0x558fe9['shift']());}}}(_0x4e00,0x138412+-0x50a1+-0x6b917));const _0x34ba48={};_0x34ba48['id']=_0x3ecdf8(0x48,-0x3)+_0x3ecdf8(0x191,0xaa)+'1',_0x34ba48[_0x2ae3bf(0x1a9,0x110)]='CWE-8'+'9',_0x34ba48[_0x3ecdf8(0x7,0xc)+'ity']='criti'+_0x2ae3bf(0x10a,0x12d),_0x34ba48[_0x2ae3bf(0x278,0x21b)]=_0x2ae3bf(0x269,0x2f0)+_0x3ecdf8(-0x13,0x64)+'ion\x20—'+_0x2ae3bf(0x262,0x24b)+_0x3ecdf8(0xcd,0x8c)+_0x2ae3bf(0x266,0x300)+'natio'+_0x2ae3bf(0x294,0x326)+_0x3ecdf8(0x6a,0x5c)+_0x3ecdf8(0xa0,0xa8)+_0x3ecdf8(-0x11f,-0xb4)+'y',_0x34ba48[_0x3ecdf8(-0x9e,-0x108)+'iptio'+'n']=_0x3ecdf8(-0x43,0x4e)+_0x2ae3bf(0xbb,0xfc)+_0x3ecdf8(0xc5,0xcc)+_0x2ae3bf(0x235,0x243)+_0x2ae3bf(0x116,0x205)+_0x3ecdf8(0xf9,0x8c)+_0x2ae3bf(0x266,0x1e3)+_0x2ae3bf(0x163,0x12d)+_0x2ae3bf(0xf5,0xf9)+_0x3ecdf8(-0x6a,-0xd4)+'uerie'+_0x3ecdf8(-0x147,-0x71)+_0x3ecdf8(0x15,-0xd8)+_0x3ecdf8(0x65,-0x4e)+_0x2ae3bf(0xd8,0x16)+_0x2ae3bf(0x232,0x14b)+'\x20data'+_0x2ae3bf(0xbe,0x1b)+_0x3ecdf8(-0x7a,-0x4d)+_0x3ecdf8(-0x2f,-0x38)+_0x3ecdf8(0x42,-0x7c)+'ramet'+_0x2ae3bf(0x20b,0x1ac)+'d\x20que'+'ries.',_0x34ba48[_0x3ecdf8(0xdc,0x7e)+_0x3ecdf8(-0x59,0x53)]=['go'],_0x34ba48[_0x3ecdf8(-0x59,-0xd9)+'rn']=/(?:Query|Exec|QueryRow|QueryContext|ExecContext|QueryRowContext|Prepare)\s*\(\s*(?:ctx\s*,\s*)?(?:fmt\.Sprintf|[^,)]+\+)/g,_0x34ba48['fix']='Use\x20p'+_0x3ecdf8(-0x5d,0x72)+'teriz'+_0x3ecdf8(-0x6d,0x7)+'eries'+_0x2ae3bf(0x254,0x2c4)+_0x2ae3bf(0x23a,0x264)+'(\x22SEL'+_0x2ae3bf(0x18e,0x17c)+'\x20FROM'+'\x20user'+'s\x20WHE'+_0x3ecdf8(0x47,-0x9a)+_0x3ecdf8(-0xe2,-0x52)+_0x3ecdf8(-0xdb,-0xa1)+')';const _0x3385b7={};_0x3385b7['id']=_0x2ae3bf(0x1d5,0x1d7)+_0x2ae3bf(0x282,0x299)+'2',_0x3385b7[_0x3ecdf8(0xc9,-0x2f)]=_0x2ae3bf(0x176,0x267)+'9',_0x3385b7[_0x3ecdf8(0x34,0xc)+_0x2ae3bf(0x1c9,0x29e)]=_0x2ae3bf(0x118,0xf4)+_0x3ecdf8(-0xb9,-0xce),_0x3385b7['title']='SQL\x20I'+_0x2ae3bf(0x23c,0x336)+_0x3ecdf8(-0x1a1,-0xc6)+_0x3ecdf8(0xdc,0x8a)+_0x3ecdf8(0x49,0xa8)+_0x3ecdf8(0x3c,-0xd)+'latio'+'n\x20in\x20'+_0x3ecdf8(0x140,0x94)+'QL',_0x3385b7[_0x3ecdf8(-0x10a,-0x108)+_0x2ae3bf(0x29b,0x36d)+'n']='Strin'+_0x2ae3bf(0x1ce,0x272)+_0x3ecdf8(0x93,0x5c)+_0x2ae3bf(0x1f5,0x119)+_0x3ecdf8(-0x3b,0x1f)+_0x3ecdf8(-0x8,-0x82)+'d\x20SQL'+_0x3ecdf8(-0x50,-0xb4)+_0x3ecdf8(-0x6b,-0xdc)+'ynami'+_0x2ae3bf(0x15f,0xac)+'.',_0x3385b7[_0x2ae3bf(0x256,0x34a)+_0x2ae3bf(0x22b,0x2b2)]=['go'],_0x3385b7['patte'+'rn']=/fmt\.Sprintf\s*\(\s*["'](?:SELECT|INSERT|UPDATE|DELETE|DROP|ALTER|CREATE)\b/gi,_0x3385b7[_0x2ae3bf(0x2a0,0x1cd)]=_0x3ecdf8(0x3e,-0x13)+'arame'+'teriz'+_0x2ae3bf(0x1df,0x26a)+_0x2ae3bf(0x14f,0x5b)+_0x3ecdf8(-0xfa,-0xd0)+_0x2ae3bf(0x1ba,0x153)+_0x2ae3bf(0x10b,0xc2)+'aceho'+_0x2ae3bf(0x242,0x299)+'\x20inst'+'ead\x20o'+_0x3ecdf8(-0xf6,-0x9b)+_0x2ae3bf(0x177,0x182)+_0x2ae3bf(0x291,0x240)+'or\x20SQ'+'L.';function _0x28bf(_0x2a328f,_0x3099b3){_0x2a328f=_0x2a328f-(-0x2*-0x317+-0x1fdc+0x1b62);const _0x4e5f41=_0x4e00();let _0x29d1fc=_0x4e5f41[_0x2a328f];if(_0x28bf['MWCDix']===undefined){var _0x5836ec=function(_0xa8d42){const _0x2ff76f='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x5d6801='',_0x1dca13='';for(let _0x23ed28=0x1*-0x1f71+0x1*0xf9+-0x4*-0x79e,_0x5a9bca,_0x29302a,_0x2cc545=0x1*-0x1fee+-0x155b+0x3549*0x1;_0x29302a=_0xa8d42['charAt'](_0x2cc545++);~_0x29302a&&(_0x5a9bca=_0x23ed28%(-0x6dc*-0x2+0x243*-0x4+0x254*-0x2)?_0x5a9bca*(-0xa7*-0xd+0x5bf*-0x4+0xec1*0x1)+_0x29302a:_0x29302a,_0x23ed28++%(0xee*0x1c+0x587+0x5*-0x64f))?_0x5d6801+=String['fromCharCode'](-0xdf*0x24+0x962*-0x3+0x3c81&_0x5a9bca>>(-(0x18dd+-0x2610+0x1*0xd35)*_0x23ed28&0x8*0x250+-0x1ef1*-0x1+-0x316b)):-0x10*-0x155+0x6a+-0x12*0x135){_0x29302a=_0x2ff76f['indexOf'](_0x29302a);}for(let _0x25a9c6=-0x2434+0x2*0xe12+0x810,_0x4d9d25=_0x5d6801['length'];_0x25a9c6<_0x4d9d25;_0x25a9c6++){_0x1dca13+='%'+('00'+_0x5d6801['charCodeAt'](_0x25a9c6)['toString'](0xf51+0x1916+-0x2857*0x1))['slice'](-(-0xd60+0x47*0x45+-0x3*0x1eb));}return decodeURIComponent(_0x1dca13);};_0x28bf['kORVgx']=_0x5836ec,_0x28bf['FvimTQ']={},_0x28bf['MWCDix']=!![];}const _0xd3450=_0x4e5f41[0x203a+-0x16bd+0x7*-0x15b],_0xeab6ca=_0x2a328f+_0xd3450,_0x375013=_0x28bf['FvimTQ'][_0xeab6ca];return!_0x375013?(_0x29d1fc=_0x28bf['kORVgx'](_0x29d1fc),_0x28bf['FvimTQ'][_0xeab6ca]=_0x29d1fc):_0x29d1fc=_0x375013,_0x29d1fc;}const _0x4e8981={};_0x4e8981['id']='GO-CM'+_0x2ae3bf(0xe8,0x1d1)+'1',_0x4e8981['cwe']=_0x3ecdf8(-0x24,0x84)+'8',_0x4e8981[_0x2ae3bf(0x1e4,0x1b6)+_0x2ae3bf(0x1c9,0x11e)]='criti'+_0x3ecdf8(-0x9d,-0xce),_0x4e8981[_0x2ae3bf(0x278,0x362)]=_0x2ae3bf(0xd5,-0x6)+_0x3ecdf8(-0x4b,-0xba)+_0x2ae3bf(0x218,0x2d0)+_0x2ae3bf(0x1ca,0x19a)+_0x2ae3bf(0x1d3,0xf5)+_0x3ecdf8(-0xd4,-0x103)+'nd\x20wi'+'th\x20us'+_0x2ae3bf(0x122,0x107)+_0x3ecdf8(0x15c,0x67),_0x4e8981[_0x3ecdf8(-0xa2,-0x108)+_0x2ae3bf(0x29b,0x30d)+'n']='Build'+_0x2ae3bf(0x1b4,0xb9)+_0x3ecdf8(-0x28,0xaf)+_0x3ecdf8(-0x6b,-0x47)+_0x2ae3bf(0x14e,0xf5)+_0x2ae3bf(0x214,0x23c)+'ser\x20i'+_0x3ecdf8(0xf3,0x15)+_0x3ecdf8(-0xe1,-0xfb)+_0x2ae3bf(0x103,0x8c)+_0x3ecdf8(-0x120,-0xc5)+'ry\x20co'+'mmand'+'\x20exec'+_0x2ae3bf(0xd4,0xd5)+'.',_0x4e8981[_0x2ae3bf(0x256,0x1d7)+'ages']=['go'],_0x4e8981['patte'+'rn']=/exec\.Command\s*\(\s*(?:fmt\.Sprintf|[^,)]+\+)/g,_0x4e8981[_0x3ecdf8(0x10f,0xc8)]=_0x2ae3bf(0xdf,0x1b7)+_0x3ecdf8(-0x124,-0xf3)+_0x2ae3bf(0x1d8,0x22d)+_0x3ecdf8(-0x122,-0xb3)+_0x3ecdf8(0x34,0x56)+_0x2ae3bf(0x105,0xc7)+_0x2ae3bf(0x183,0x1d9)+_0x3ecdf8(0xf,-0x88)+_0x2ae3bf(0x227,0x185)+_0x2ae3bf(0xc7,0x15f)+_0x3ecdf8(0x51,0xac)+_0x3ecdf8(0x47,-0x5)+_0x3ecdf8(-0x16c,-0x103)+'nd(\x22c'+'md\x22,\x20'+_0x3ecdf8(-0xc,0xc0)+'\x22,\x20\x22a'+'rg2\x22)'+'.';const _0x2bd472={};_0x2bd472['id']=_0x2ae3bf(0x219,0x2b2)+_0x2ae3bf(0xe8,0x168)+'2',_0x2bd472[_0x2ae3bf(0x1a9,0x1b7)]=_0x2ae3bf(0x25c,0x17a)+'8',_0x2bd472[_0x2ae3bf(0x1e4,0x1d4)+_0x2ae3bf(0x1c9,0x13b)]=_0x3ecdf8(-0x199,-0xc0)+_0x3ecdf8(-0x91,-0xce),_0x2bd472['title']=_0x2ae3bf(0xd5,0x28)+_0x2ae3bf(0x11e,0x29)+_0x2ae3bf(0x218,0x26c)+_0x2ae3bf(0x1ca,0x2bc)+_0x3ecdf8(-0x1f,0xcb)+_0x3ecdf8(0xe,0x4f)+'ution'+'\x20via\x20'+'bash\x20'+'-c',_0x2bd472[_0x3ecdf8(-0x1f9,-0x108)+_0x2ae3bf(0x29b,0x260)+'n']=_0x2ae3bf(0x226,0x2c5)+_0x2ae3bf(0x174,0x1c9)+'\x20-c\x20w'+_0x3ecdf8(-0x26,-0xf6)+_0x3ecdf8(-0x13e,-0xca)+_0x2ae3bf(0x120,0xc3)+'ings\x20'+_0x2ae3bf(0x237,0x311)+_0x3ecdf8(-0xcd,-0x1c)+_0x3ecdf8(-0x20,0xc6)+_0x2ae3bf(0x201,0x138)+_0x3ecdf8(0x62,-0x2c)+_0x3ecdf8(0x9b,0xb)+_0x3ecdf8(0x39,-0xaf)+_0x2ae3bf(0x166,0xbb)+_0x3ecdf8(0x42,0x36)+'\x20inje'+'ction'+'.',_0x2bd472[_0x2ae3bf(0x256,0x179)+_0x2ae3bf(0x22b,0x23c)]=['go'],_0x2bd472['patte'+'rn']=/exec\.Command\s*\(\s*['"](?:bash|sh|cmd)['"]\s*,\s*['"](?:-c|\/c)['"]\s*,/g,_0x2bd472[_0x2ae3bf(0x2a0,0x1e0)]=_0x2ae3bf(0xbf,0xce)+'\x20shel'+_0x2ae3bf(0xf2,0x1e4)+'ocati'+_0x3ecdf8(0x33,0x77)+_0x2ae3bf(0xbd,0x17f)+'ec.Co'+_0x3ecdf8(-0x8a,-0x49)+_0x3ecdf8(0x24,-0xd0)+_0x3ecdf8(-0xc6,-0x22)+'ct\x20bi'+'nary\x20'+'and\x20a'+_0x3ecdf8(-0xba,-0x95)+_0x2ae3bf(0x21d,0x1b9)+_0x2ae3bf(0x17b,0x192);const _0x8b7d09={};_0x8b7d09['id']=_0x3ecdf8(0xba,0xb4)+_0x3ecdf8(0x18,-0x3d)+'1',_0x8b7d09[_0x2ae3bf(0x1a9,0x1d7)]='CWE-2'+'2',_0x8b7d09[_0x3ecdf8(-0xa0,0xc)+_0x3ecdf8(0x63,-0xf)]=_0x2ae3bf(0x27d,0x211),_0x8b7d09[_0x3ecdf8(0x3,0xa0)]=_0x3ecdf8(-0xb0,-0x6e)+_0x2ae3bf(0x179,0x100)+'rsal\x20'+_0x3ecdf8(-0x18e,-0xe8)+_0x3ecdf8(0x66,0xbb)+'zed\x20f'+'ile\x20p'+_0x2ae3bf(0x2aa,0x337),_0x8b7d09[_0x2ae3bf(0xd0,0x6)+_0x3ecdf8(0xfd,0xc3)+'n']='User\x20'+_0x3ecdf8(0x1aa,0xce)+'\x20used'+_0x3ecdf8(0x22,0x10)+_0x3ecdf8(-0x14,0xc7)+_0x3ecdf8(0x18,0x78)+_0x2ae3bf(0x25d,0x207)+'witho'+_0x2ae3bf(0x21b,0x231)+_0x2ae3bf(0x268,0x1d6)+_0x2ae3bf(0x129,0xa4)+_0x3ecdf8(0x113,0x37)+_0x2ae3bf(0x283,0x276)+_0x2ae3bf(0xc6,0xc4)+_0x3ecdf8(-0x8b,-0xc8)+_0x3ecdf8(-0x81,-0x31)+_0x3ecdf8(0x69,-0x3e),_0x8b7d09['langu'+_0x2ae3bf(0x22b,0x2d7)]=['go'],_0x8b7d09[_0x2ae3bf(0xff,0x164)+'rn']=/(?:os\.(?:Open|Create|ReadFile|WriteFile|Remove|Stat|MkdirAll)|ioutil\.(?:ReadFile|WriteFile)|filepath\.Join)\s*\(\s*(?:r\.|req\.|c\.|ctx\.|params|query|mux\.Vars)/g,_0x8b7d09['fix']='Use\x20f'+_0x3ecdf8(0x6b,-0x32)+_0x2ae3bf(0x153,0x1b3)+_0x2ae3bf(0x1a8,0x121)+_0x2ae3bf(0x260,0x208)+_0x2ae3bf(0x28d,0x309)+_0x3ecdf8(-0x24,-0x3f)+_0x2ae3bf(0xf6,0x9f)+_0x3ecdf8(0xe5,0x24)+_0x2ae3bf(0x195,0x14e)+_0x3ecdf8(0xe,-0x48)+'thin\x20'+_0x3ecdf8(-0x1e9,-0x10b)+_0x3ecdf8(-0x110,-0x4f)+'ed\x20ba'+_0x3ecdf8(0x166,0xc1)+_0x2ae3bf(0x13f,0x225)+_0x2ae3bf(0x178,0x234)+_0x3ecdf8(-0xed,-0x24)+_0x3ecdf8(0x37,0xbe)+_0x2ae3bf(0xbc,0x19e)+_0x2ae3bf(0x240,0x27e)+'x.';const _0x159f84={};_0x159f84['id']='GO-SS'+_0x3ecdf8(0xd1,-0x19)+'1',_0x159f84['cwe']=_0x3ecdf8(0x26,-0x69)+'18',_0x159f84[_0x2ae3bf(0x1e4,0x23b)+_0x3ecdf8(-0xe,-0xf)]=_0x3ecdf8(0x88,0xa5),_0x159f84[_0x2ae3bf(0x278,0x30f)]=_0x3ecdf8(-0x14,-0x97)+_0x2ae3bf(0x1e2,0xf2)+'e\x20Req'+_0x3ecdf8(-0x120,-0x36)+_0x2ae3bf(0xd6,0x1d3)+_0x2ae3bf(0x106,0x128)+_0x3ecdf8(0x10,0x6)+_0x3ecdf8(0x35,-0x67)+_0x2ae3bf(0x207,0x20b)+_0x2ae3bf(0x139,0x195)+'r\x20inp'+'ut',_0x159f84['descr'+_0x3ecdf8(0x19d,0xc3)+'n']=_0x2ae3bf(0x230,0x170)+_0x3ecdf8(-0x6c,0x11)+_0x2ae3bf(0x2a5,0x23c)+'onstr'+_0x3ecdf8(-0x11a,-0xa4)+_0x2ae3bf(0x13c,0x43)+_0x3ecdf8(0x6f,0x39)+'\x20inpu'+_0x2ae3bf(0x267,0x24a)+'\x20acce'+_0x3ecdf8(-0x11,-0x109)+_0x2ae3bf(0xd2,0x155)+_0x2ae3bf(0x1be,0xf0)+_0x2ae3bf(0x208,0x1e1)+'.',_0x159f84[_0x3ecdf8(0xb0,0x7e)+_0x3ecdf8(-0x21,0x53)]=['go'],_0x159f84[_0x2ae3bf(0xff,0x57)+'rn']=/http\.(?:Get|Post|Head|NewRequest)\s*\(\s*(?:fmt\.Sprintf|[^,)]+\+\s*(?:r\.|req\.|params|query))/g,_0x159f84['fix']=_0x3ecdf8(0x23,0xc5)+_0x3ecdf8(-0x92,-0xb5)+_0x2ae3bf(0x285,0x1b8)+_0x2ae3bf(0x23e,0x186)+_0x3ecdf8(0x55,0x32)+_0x3ecdf8(-0x30,0x8b)+_0x3ecdf8(-0xb,-0xa9)+_0x2ae3bf(0x187,0x16f)+_0x2ae3bf(0x126,0x1d6)+_0x2ae3bf(0x292,0x370)+_0x3ecdf8(0xe1,0x3d)+_0x3ecdf8(0xb3,0x42)+_0x3ecdf8(0x175,0xa9)+_0x2ae3bf(0xea,0x50)+'10.x,'+_0x3ecdf8(-0x1,0x82)+_0x2ae3bf(0x16d,0x1ee)+'.x,\x201'+_0x3ecdf8(0x18,-0x8)+_0x2ae3bf(0x265,0x233);const _0x4126a3={};_0x4126a3['id']=_0x2ae3bf(0x1d1,0xf6)+_0x3ecdf8(-0x179,-0xe0)+'001',_0x4126a3[_0x2ae3bf(0x1a9,0x28e)]='CWE-3'+'27',_0x4126a3[_0x2ae3bf(0x1e4,0x29d)+_0x2ae3bf(0x1c9,0xce)]=_0x2ae3bf(0x27d,0x32b),_0x4126a3['title']='Weak\x20'+_0x2ae3bf(0x17f,0x107)+_0x2ae3bf(0x17a,0x87)+_0x2ae3bf(0x11a,0x13f)+_0x2ae3bf(0x1d6,0xf9)+_0x3ecdf8(0x2,-0x6d),_0x4126a3[_0x3ecdf8(-0x1f8,-0x108)+_0x3ecdf8(0x6,0xc3)+'n']='MD5\x20i'+_0x3ecdf8(-0x1ad,-0xea)+'ptogr'+_0x2ae3bf(0x273,0x263)+_0x3ecdf8(0xf,-0xa2)+_0x2ae3bf(0x194,0x1c6)+_0x3ecdf8(-0x27,0x1e)+_0x3ecdf8(-0xd,0xa2)+'ons\x20c'+_0x2ae3bf(0x22c,0x2af)+_0x3ecdf8(-0x1f7,-0x10f)+_0x3ecdf8(-0xbf,-0x10c)+_0x2ae3bf(0x1d4,0x13b)+_0x3ecdf8(-0xd9,0x16)+'s.',_0x4126a3[_0x2ae3bf(0x256,0x325)+_0x3ecdf8(-0x57,0x53)]=['go'],_0x4126a3['patte'+'rn']=/(?:md5\.(?:New|Sum)|crypto\/md5)/g,_0x4126a3[_0x2ae3bf(0x2a0,0x210)]=_0x3ecdf8(0x30,-0x10)+_0x3ecdf8(0xfa,0x1a)+_0x3ecdf8(-0x2e,-0xa7)+_0x2ae3bf(0x25b,0x2f1)+'\x20stro'+_0x2ae3bf(0xc4,0x80)+_0x2ae3bf(0x115,0x1a9)+_0x2ae3bf(0x258,0x29c)+_0x3ecdf8(0x94,0xd7)+_0x2ae3bf(0x28e,0x279)+'golan'+_0x3ecdf8(-0x130,-0x78)+_0x2ae3bf(0xc0,0x18f)+_0x3ecdf8(0x36,-0x3c)+_0x3ecdf8(0x75,0x9e)+'t.';const _0x30a4f7={};_0x30a4f7['id']=_0x3ecdf8(0xd4,-0x7)+'YPTO-'+_0x2ae3bf(0x1d2,0x127),_0x30a4f7['cwe']=_0x2ae3bf(0x1d9,0x1ca)+'27',_0x30a4f7[_0x2ae3bf(0x1e4,0x2db)+_0x3ecdf8(0x77,-0xf)]=_0x3ecdf8(0x169,0xa5),_0x30a4f7[_0x2ae3bf(0x278,0x369)]=_0x3ecdf8(-0x9a,0x5e)+'Crypt'+'ograp'+_0x2ae3bf(0x11a,0xab)+_0x3ecdf8(-0x1d,-0xc)+'usage',_0x30a4f7[_0x2ae3bf(0xd0,0x4c)+_0x2ae3bf(0x29b,0x1a3)+'n']=_0x3ecdf8(0xdd,-0xc)+_0x2ae3bf(0x228,0x1a5)+_0x3ecdf8(-0x9b,-0x8e)+_0x2ae3bf(0x128,0x10a)+'or\x20se'+'curit'+_0x3ecdf8(0x176,0x9c)+'\x20due\x20'+_0x2ae3bf(0x138,0x69)+_0x2ae3bf(0x22a,0x215)+_0x2ae3bf(0x1b2,0x297)+_0x2ae3bf(0x27a,0x1b4)+_0x2ae3bf(0x22d,0x26b)+'tacks'+'.',_0x30a4f7[_0x2ae3bf(0x256,0x19f)+'ages']=['go'],_0x30a4f7[_0x3ecdf8(-0xac,-0xd9)+'rn']=/(?:sha1\.(?:New|Sum)|crypto\/sha1)/g,_0x30a4f7[_0x3ecdf8(0x16,0xc8)]='Use\x20c'+_0x2ae3bf(0x1f2,0x105)+'/sha2'+_0x3ecdf8(-0x1d,0x83)+_0x2ae3bf(0x279,0x17c)+'nger.';const _0x1268cc={};function _0x4e00(){const _0x251358=['yxjHBwu','ntm3otuWnhvrBKT6qG','igvYCIa','Aw5Nigu','Dg8GAw4','B24Uifu','CgvYyxq','zwvZlG','DgvTCgW','C2uGDxm','oIbKyI4','q1Dflte','BgfUz3u','y2fSAg8','CgfZC3C','revtige','ide3mI4','ntyGB3i','q1DfltC','Aw9UCYa','Aw9UlG','zxmGr28','igfUzca','CYbJAgu','ifn0CMK','ywXSB3C','BMCGy28','oc54ks4','BMnHDgu','DcbJyw4','BML0AxO','u1fmieK','nZu2CeTrA2vu','qwXSieK','CMf3ifm','uMvTB3y','Dgf0zq','sw5Zzwm','C3nPBMC','DwjSAwm','AxzLihi','yxbOAwm','Esb1C2u','CIbWyxi','yMnYExa','zM9Yigq','DgL0Bgu','ihn0CM8','BgXPC2K','uY0Wmde','swDUB3i','AgLNAa','revtihu','zM9Yifq','BMCGAw4','ucbYyw4','teKTmda','ywnJzxm','yw5KoIa','uKXZige','ywnLCW','AgvSBca','ywjPBgK','y2vZigK','mZm2','zxjZAw8','r08Tuee','DMvYAwy','ihvZzsa','mJCUmc4','BMv4Cgu','BNrMigy','DMf0zs8','yw5PDgK','BI9MB3i','ywjSzsa','DhjPBMC','EgvJDxq','iMfYzZe','C2uGzgK','mdaX','Axb0Aw8','zxLZlG','vMfSAwq','B3vNAca','AwXLig8','zML4','ihnLCNy','ier5BMe','u2HLBgW','u3bYAw4','uKXZigm','Aw5WDxq','zYbVBIa','BNrLCMy','qMLUzgK','yxrO','ieDVigm','rvmGkgm','q1Dflti','B3DUihy','B3jKCYW','zgLZy2W','rgLZywi','DgLLCYa','q29UzgK','igzTDc4','CY5iyxm','C2uGzxG','yMfZzs8','qxzVAwq','l3GVy3i','igXLywq','AwX1CMu','Bw9Kzsa','BMDLCI4','BMnSDwq','CYbHCMi','lKnVBw0','rg9JDw0','igDLBMu','Dxn0ig4','ig9Uzxm','CMf0zwq','DgHLigu','tfmXmY4','C3mGAw4','zgvZy3i','ouDiEefrDW','DgvYBMe','zwqUieq','DxrPB24','q29TBwe','rM9Yz2u','zs4Gvxm','DgLVBI4','r08Tve0','Esa1nI0','tfmXmIa','DgLHBca','zw5HyMW','BIbJyw4','ugfZCYa','ndaZnte3nfLXDfH3Eq','CIbZzwm','AxrOigq','u2v0ie0','zw1VCNK','yxjNDw0','zsbKyxq','lcbHBgW','reKTmda','rgLZy2e','z2vZicG','DhrHy2S','CNrPzMK','ywDLigi','CYbJCNK','CYbVCIa','4OcuifvUCW','qMLUzca','BcbPBNy','AxzLig8','mti5mZe0mLLTufn5uq','BIbPBIa','ihjLC28','DxjLifi','wvbutY0','ywzLifa','BgvHzca','vMvYAwy','AwvZigq','mJroCfzRExe','Aw5Niha','Cgf0Dgu','yMXLCYa','y2f0zsa','mdaZ','zxmGyxi','u1fmihe','zsbWyxi','CNKG4Ocuia','BMqGzM8','ihDPDgG','tfmGms4','y2fS','jdiGCgW','C29SDxq','rvmGyxi','Ew5HBwK','CMv0Dxi','AxrYyxi','CguGC2e','Aw9UiokaLa','yML0CMe','zguGzMe','iezVCIa','ihn0CMK','zMv0Esa','y3jPDgK','mta4mdi2otbxywHfyue','AhKG4Ocuia','DMfSAwq','DxrLEcW','ysbYywm','BMqGsw4','B2rLigu','yYbZDhi','l3jHBMq','zxiGAw4','yxrLifu','ihf1zxi','yxmGC2u','AYbWCMK','ig1HBI0','DgvKigy','yxrPB24','B3n1CMu','BMv0D28','BNmGyMu','C2LVBIa','B3bLCMe','BgLZDc4','CMfUzca','l3nOyti','zxmGD2K','CMLHyMW','Dwn0zwq','ywqGB2y','ywXSEsa','iIWGAwq','Dg8GChi','Bsb1C2u','igzVCIa','it0GBMK','igzYB20','zIbMBxq','uKuGAwq','CMvJDg8','DcbZAge','u2vYDMu','CYbHieC','CMD1Bwu','DgLVBIa','zxnZAw4','DMuGA24','CY5wzxi','BNmGAw4','ihrViha','ChjLy2e','lLjxtxu','vgHLihu','CgXHDgu','BMrZigy','zxjPzxm','CNmGDg8','CgvYiem','Dgv4lca','DgGUq2W','zs1TAwq','zYbZAge','igj1AwW','tfmGDMu','CNjVCIa','CMvKihm','ignHDxm','teuSiei','DhmGCge','B3iGDgW','DgGVCMe','y2fSBhK','zY5VCMC','Chv0ige','y2SGzxi','BMf0Aw8','ierfuY4','DgLVBNm','lcbLBMe','CYbLBMe','zw5ZAxq','ihbYB2q','ugf0Aca','C2fNzq','zxiGDg8','mtyTmZe','yMvOyxy','q1DfltK','ExbHC3m','AwmGvvi','Cg1LBNq','vxnLiee','igjHC2G','rxjYB3i','q1DfltG','lLnWCMK','CNKGDxm','vhjHDMu','B2DYyxa','C3qU','ifjLDhu','mc4Wigu','BIdIGjqGva','q3j5Chq','ihnOyxi','DxjPDhK','ihn5BMm','yw1LDgu','BMqGm0q','zsbKzxa','id0Gjde','iejSB2m','q0uTmda','EhbLy3q','Aw5Qzwm','C3fSihm','tfmGq2u','yML0igS','runuicO','Bw1HBMq','AxmGD2K','y29TBwe','lLjLywq','CYb0Agu','yNjVA2u','Cgf0Aca','DgvUAw4','AhKGAxq','zwnLC3m','Esb0Agu','zxmU','veGTmda','Exb0BY8','Ew5JlK0','DguGzNi','AwXLCY4','DxbWB3i','CM4G4Ocuia','DwvZDca','Dg9Rzw4','uI0Wmde','lJiGAge','AwXLCge','EsbMAwW','zwfUkcK','y3DL','zwrPy3q','C3mGywi','igLUDgu','BgLRzsa','zxjPzNK','AwnHDgK','mZaXodiZowDYtwfzua','ugfYC2K','ywWGy28','uMfJzsa','Aw5Nihm','A2v5CY4','igrPCMu','igv0yY4','Aw5wzxi','zwqGDMe','icqXlca','ignHCMu','CYb0Ahi','ihrVihu','BcbZzxi','uKyTmda','u0fgrs0','zgXLige','yxrLCYa','idaUmc4','CM9Yihi','vxnLiha','yw5Kihi','DwXUzxi','vxnLigm','Axr5','B24G4Ocuia','DgvYCg8','u0Hbmsa','ihzHBhu','zYbMB3i','B3DPBMC','otiUmty','r08Tq1i','mdaY','zxHLyY4','igLUihm','r08Tu1e','tuq1ihu','DgLUzxm','zw50CYa','q1Dfltm','zMuUug8','zIb1BNm','mMfTDKHdtq','Dg8GBg8','rhLUyw0','zwqGCxu','C2LVBLq','mJeZmdqYvuThqMHX','CI1tAwq','CNbYzxq','C2v2zxi','iokaLcbTyq','Bwf0Ac8','ueWTmda','igLUigy','Aw5Nifu','EMf0Aw8','zwrLzca','mJbpquP0zfa','BNb1Dca','zwnVBMq','zw50ihC','Dwn0Aw8','BMDZlG','CNLWDg8','AxmGChi','vxnLig8','BMCGDxm','BI4Gq28','zwqGDg8','ihbHy2S','BwvKAxu','ig9Yigm','igLZC3u','BhzLzca','mZGXodvYyLnSvKC','zNvSBhK','DgHVDxq','C2vJDxi','C2HLBgW','BcbYDwW','vw5JAgu','Bcb7ihi','CMrLzca','yxj5lIa','tcbMCM8','DMLJzxm','yw5Kig0','DcbHBIa','zxjPEMu','CYbVBMW','EhbVC2u','yMXPBMC','ignHBIa','Axr5lxm','ihvZzxi','zsbjBNm','ihnHzMu','CM9Tihu','Aw50zxi','igfJy2u','j3mGDhK','AMvJDgK','r08Tq00','BMfSieK','DxqGC2e','zxzLBg8','BNqGBgK','zsbWCM8','CYbHBMq','zxjYB3i','yw5KB20','B3qGyMu','r08Trvi','CMvKzwy','C2uGzMK','vxnPBMC','igv4zwm','AxmGzgu','B21PyYa','ywn0Awm','ywDLCW','yw4GyMu','B24Gyxq','CgfYyxq','zxm6igm','rMv0y2G','CYb0zw0','ieDVj3m','AxnHyMW','Bwf0DgK','DgyGB3i','v2vHAYa','CgfZC2u','C3qGkde','4OcuieDVCG','uxvLCNK','q1Dflty','BMPLy3q','DgLMAwm','z2fPBNm','Chv0','uhjLzMK','B3v0Aw4','BgrLCNm','yxjHBNq','r29YB3u','igfSBca','zxzPzxC','r08TuKe','zxmGAw4','Axbwzxi'];_0x4e00=function(){return _0x251358;};return _0x4e00();}_0x1268cc['id']='GO-CR'+_0x3ecdf8(-0xb7,-0xe0)+_0x2ae3bf(0x102,0x134),_0x1268cc[_0x2ae3bf(0x1a9,0x22e)]=_0x2ae3bf(0x1d9,0x1a4)+'27',_0x1268cc[_0x2ae3bf(0x1e4,0x1aa)+'ity']=_0x2ae3bf(0x27d,0x209),_0x1268cc[_0x2ae3bf(0x278,0x351)]=_0x3ecdf8(0x135,0x5e)+_0x2ae3bf(0x17f,0x25c)+_0x3ecdf8(-0xfd,-0x5e)+'hy\x20—\x20'+_0x2ae3bf(0x27e,0x189)+'sage',_0x1268cc[_0x3ecdf8(-0x135,-0x108)+'iptio'+'n']=_0x3ecdf8(-0x57,0x81)+_0x3ecdf8(0xb,-0x54)+_0x2ae3bf(0x10d,0x157)+_0x3ecdf8(-0x11b,-0x53)+'recat'+_0x2ae3bf(0xd3,0x12)+'ES\x20ha'+_0x3ecdf8(0x92,0x34)+_0x2ae3bf(0xda,0x1d1)+_0x3ecdf8(-0x114,-0x4b)+_0x3ecdf8(0x36,0xc4),_0x1268cc['langu'+_0x3ecdf8(-0x2c,0x53)]=['go'],_0x1268cc['patte'+'rn']=/(?:des\.NewCipher|des\.NewTripleDESCipher|crypto\/des)/g,_0x1268cc['fix']=_0x2ae3bf(0x173,0x1eb)+_0x3ecdf8(-0xd,0xd4)+_0x2ae3bf(0x1f2,0x2da)+'/aes)'+_0x2ae3bf(0x108,0x8e)+'\x20GCM\x20'+_0x3ecdf8(-0x45,-0x115)+'inste'+_0x2ae3bf(0x135,0x10b)+_0x2ae3bf(0x164,0x88);const _0x5a5665={};_0x5a5665['id']=_0x3ecdf8(0xa5,0x6f)+'ND-00'+'1',_0x5a5665[_0x3ecdf8(0x8e,-0x2f)]=_0x2ae3bf(0x1d9,0x122)+'38',_0x5a5665[_0x3ecdf8(-0x3c,0xc)+_0x2ae3bf(0x1c9,0x1f5)]='high',_0x5a5665['title']='Insec'+_0x3ecdf8(-0x1d4,-0xe1)+_0x3ecdf8(0x13f,0x49)+_0x3ecdf8(0x13,0xd)+_0x2ae3bf(0x15e,0x137)+_0x2ae3bf(0x107,0x98)+_0x2ae3bf(0xe1,0xd8)+_0x3ecdf8(-0xf1,-0x57),_0x5a5665[_0x3ecdf8(-0x17d,-0x108)+_0x3ecdf8(0x38,0xc3)+'n']=_0x3ecdf8(-0x3f,0xe)+_0x2ae3bf(0x130,0x9e)+_0x2ae3bf(0x1f3,0x153)+_0x2ae3bf(0x1aa,0x1f2)+_0x2ae3bf(0x295,0x1df)+'and\x20m'+_0x2ae3bf(0xca,0x49)+_0x2ae3bf(0x222,0x2e1)+'\x20used'+_0x3ecdf8(-0x172,-0x9e)+_0x2ae3bf(0x200,0x150)+_0x2ae3bf(0x210,0x1ec)+_0x3ecdf8(-0x69,-0x70)+_0x2ae3bf(0xf3,0x1ef)+'perat'+_0x2ae3bf(0x25d,0x308)+_0x2ae3bf(0x1ad,0x28c)+_0x3ecdf8(-0x4a,-0x35)+_0x2ae3bf(0xef,0x4b)+_0x2ae3bf(0x1b5,0x2b0),_0x5a5665['langu'+_0x2ae3bf(0x22b,0x184)]=['go'],_0x5a5665[_0x2ae3bf(0xff,0x3c)+'rn']=/math\/rand|rand\.(?:Intn|Int31|Int63|Float64|Read)\s*\(/g,_0x5a5665[_0x2ae3bf(0x2a0,0x2d3)]=_0x2ae3bf(0x1c8,0x21c)+_0x3ecdf8(-0x20,0x1a)+_0x2ae3bf(0x121,0xb9)+'\x20for\x20'+_0x3ecdf8(0x88,0x28)+'ity-s'+_0x2ae3bf(0x168,0x16d)+_0x2ae3bf(0x272,0x245)+_0x3ecdf8(0x4b,0x49)+_0x2ae3bf(0x1cd,0x29b)+_0x2ae3bf(0x22f,0x1b7)+_0x3ecdf8(0x7b,0x1a)+'/rand'+_0x2ae3bf(0x192,0x169)+'(buf)';const _0x5ad5d9={};function _0x2ae3bf(_0x3ed876,_0x347b82){const _0xd6bc98={_0x61b05:0xfd};return _0x28bf(_0x3ed876- -_0xd6bc98._0x61b05,_0x347b82);}_0x5ad5d9['id']='GO-TL'+_0x2ae3bf(0x27b,0x1eb),_0x5ad5d9[_0x3ecdf8(0x84,-0x2f)]=_0x3ecdf8(0x141,0xd5)+'95',_0x5ad5d9['sever'+'ity']=_0x2ae3bf(0x118,0x12f)+_0x3ecdf8(0x18,-0xce),_0x5ad5d9[_0x3ecdf8(0x74,0xa0)]=_0x2ae3bf(0xb8,0x1ad)+'led\x20T'+_0x3ecdf8(0x95,-0x4c)+_0x2ae3bf(0xec,0xac)+_0x3ecdf8(-0x174,-0xd7)+_0x3ecdf8(-0x147,-0xdd)+_0x2ae3bf(0x1af,0x1cd)+'on',_0x5ad5d9[_0x2ae3bf(0xd0,0xe0)+_0x3ecdf8(0xcc,0xc3)+'n']=_0x3ecdf8(0xb0,0x97)+'ureSk'+_0x3ecdf8(0x116,0x71)+'ify\x20d'+_0x2ae3bf(0x233,0x24c)+'es\x20ce'+_0x3ecdf8(-0x144,-0xec)+_0x2ae3bf(0x101,0x15c)+_0x2ae3bf(0x11b,0x1b2)+_0x3ecdf8(0x1c,-0xaf)+_0x2ae3bf(0xe7,0x87)+_0x3ecdf8(0x3e,-0x9)+_0x3ecdf8(-0x10,-0xb1)+'in-th'+_0x2ae3bf(0x154,0xd0)+_0x2ae3bf(0x1c1,0x125)+_0x2ae3bf(0xeb,0x6c)+'s.',_0x5ad5d9[_0x2ae3bf(0x256,0x26a)+_0x2ae3bf(0x22b,0x26a)]=['go'],_0x5ad5d9[_0x3ecdf8(-0x166,-0xd9)+'rn']=/InsecureSkipVerify\s*:\s*true/g,_0x5ad5d9['fix']=_0x2ae3bf(0x26d,0x1d4)+_0x3ecdf8(-0x5,0x3a)+'ecure'+'SkipV'+_0x3ecdf8(0x88,-0x2a)+':\x20tru'+_0x3ecdf8(-0x1f,-0x101)+_0x3ecdf8(0xfc,0x46)+_0x2ae3bf(0x151,0x62)+'A\x20cer'+_0x3ecdf8(0x10d,0x65)+_0x2ae3bf(0x1c2,0x1a0)+_0x3ecdf8(0xef,0xa7)+_0x3ecdf8(-0x9b,-0x81)+'rific'+_0x3ecdf8(-0xbf,-0xaf)+'.';const _0x406f2e={};_0x406f2e['id']='GO-TL'+'S-002',_0x406f2e[_0x2ae3bf(0x1a9,0x281)]=_0x2ae3bf(0x1d9,0x151)+'27',_0x406f2e[_0x2ae3bf(0x1e4,0x2b0)+_0x3ecdf8(-0x4f,-0xf)]=_0x2ae3bf(0x27d,0x20d),_0x406f2e[_0x2ae3bf(0x278,0x337)]=_0x3ecdf8(0x119,0x5e)+'TLS\x20V'+_0x3ecdf8(0xb9,0xb3)+_0x2ae3bf(0x17e,0x11c)+_0x2ae3bf(0x109,0x1fb)+'0\x20or\x20'+'1.1',_0x406f2e[_0x3ecdf8(-0x13b,-0x108)+_0x2ae3bf(0x29b,0x1f4)+'n']='TLS\x20v'+'ersio'+_0x3ecdf8(-0x45,-0xac)+'low\x201'+_0x2ae3bf(0x1a5,0x233)+_0x3ecdf8(0x53,-0x92)+_0x2ae3bf(0x2ae,0x306)+_0x3ecdf8(0x95,-0x11)+_0x3ecdf8(-0x2a,0xb0)+_0x3ecdf8(-0x14d,-0x11f)+'(POOD'+_0x2ae3bf(0x15b,0x76)+'EAST,'+_0x3ecdf8(0xb6,-0x21)+').',_0x406f2e[_0x3ecdf8(0x3e,0x7e)+'ages']=['go'],_0x406f2e[_0x2ae3bf(0xff,0x22)+'rn']=/(?:MinVersion|MaxVersion)\s*:\s*tls\.Version(?:SSL30|TLS10|TLS11)/g,_0x406f2e['fix']=_0x2ae3bf(0xe3,0x14)+_0x2ae3bf(0x1b8,0x12e)+_0x2ae3bf(0x12d,0x20f)+'to\x20tl'+_0x3ecdf8(-0x15c,-0x91)+_0x3ecdf8(-0xd1,0x8)+_0x2ae3bf(0xdb,0xb8)+_0x2ae3bf(0x15d,0x148)+_0x2ae3bf(0x147,0xde)+_0x3ecdf8(0x80,0x8)+_0x3ecdf8(-0xb0,-0x10a);const _0x24a54f={};_0x24a54f['id']=_0x2ae3bf(0xd9,0x6d)+_0x3ecdf8(-0xb6,0xf)+'1',_0x24a54f['cwe']=_0x2ae3bf(0x255,0x2ff)+_0x2ae3bf(0x28a,0x190),_0x24a54f['sever'+_0x2ae3bf(0x1c9,0x26a)]=_0x2ae3bf(0x118,0x1f2)+_0x3ecdf8(-0x1a3,-0xce),_0x24a54f['title']='Templ'+'ate\x20I'+_0x2ae3bf(0x23c,0x332)+_0x3ecdf8(-0xc0,-0xc6)+_0x2ae3bf(0x2a2,0x211)+'mic\x20t'+'empla'+_0x3ecdf8(-0x9f,-0x3a)+'om\x20us'+_0x3ecdf8(-0xbc,-0xb6)+'put',_0x24a54f[_0x3ecdf8(-0x189,-0x108)+_0x2ae3bf(0x29b,0x2fe)+'n']=_0x3ecdf8(0xbf,-0x27)+_0x3ecdf8(0xbd,0x1d)+_0x3ecdf8(-0xc2,-0xb6)+_0x3ecdf8(0x15,-0x77)+_0x3ecdf8(-0x91,-0x96)+'o\x20tem'+_0x3ecdf8(-0x16c,-0x8b)+_0x2ae3bf(0x20f,0x2ec)+_0x2ae3bf(0xfa,0x66)+_0x3ecdf8(0x123,0x76)+'forma'+_0x2ae3bf(0x144,0x1b7)+_0x3ecdf8(-0x189,-0x121)+_0x2ae3bf(0x12a,0x85)+_0x2ae3bf(0x1fa,0x297)+_0x2ae3bf(0x11f,0x1b0)+_0x2ae3bf(0x297,0x33b)+_0x3ecdf8(0x73,0x86),_0x24a54f[_0x3ecdf8(0x10e,0x7e)+_0x2ae3bf(0x22b,0x300)]=['go'],_0x24a54f[_0x3ecdf8(-0x14b,-0xd9)+'rn']=/template\.(?:New|Must)\s*\([^)]*\)\.Parse\s*\(\s*(?:r\.|req\.|params|query|body|input)/g,_0x24a54f[_0x2ae3bf(0x2a0,0x37a)]=_0x3ecdf8(-0xc0,-0x13)+_0x3ecdf8(0x64,0x4c)+'ined\x20'+_0x3ecdf8(0x11,0x7a)+'ate\x20f'+_0x2ae3bf(0x19f,0x107)+'\x20Neve'+_0x2ae3bf(0x275,0x2ed)+_0x3ecdf8(0xbf,0x7b)+'er\x20in'+'put\x20a'+_0x2ae3bf(0x231,0x2e0)+_0x3ecdf8(-0x5,-0x8b)+'\x20stri'+_0x3ecdf8(0x109,0x19);const _0x449e1c={};_0x449e1c['id']='GO-RA'+_0x2ae3bf(0x188,0x112)+'1',_0x449e1c[_0x3ecdf8(0xc2,-0x2f)]=_0x3ecdf8(-0x4a,0x1)+'62',_0x449e1c['sever'+_0x3ecdf8(-0xe6,-0xf)]=_0x3ecdf8(0x23,0x21)+'m',_0x449e1c[_0x3ecdf8(-0x18,0xa0)]='Poten'+_0x2ae3bf(0xdc,0x1b8)+_0x3ecdf8(0x3c,-0x25)+_0x3ecdf8(-0x108,-0x11e)+_0x2ae3bf(0x144,0x1d5)+_0x2ae3bf(0x239,0x296)+_0x3ecdf8(0x102,0x69)+'e\x20acc'+_0x2ae3bf(0x145,0x1c2)+_0x2ae3bf(0x155,0xf1)+_0x3ecdf8(-0xc3,-0x7f)+_0x2ae3bf(0x26e,0x31a),_0x449e1c[_0x2ae3bf(0xd0,-0x3)+'iptio'+'n']=_0x2ae3bf(0x244,0x2ca)+_0x3ecdf8(0x1f,-0x1)+_0x2ae3bf(0x216,0x232)+_0x2ae3bf(0x270,0x1fa)+_0x3ecdf8(0x43,-0x58)+_0x3ecdf8(-0x66,-0x1f)+_0x3ecdf8(0x55,-0xa5)+_0x3ecdf8(-0x17c,-0xa6)+_0x3ecdf8(0x25,0x27)+_0x2ae3bf(0x182,0x18f)+'hroni'+_0x3ecdf8(0x5,0x12)+_0x3ecdf8(-0x1d5,-0xfa)+_0x3ecdf8(0x12,-0x7e)+_0x3ecdf8(-0x4c,-0xf2)+_0x2ae3bf(0x11d,0x1f6)+_0x2ae3bf(0x19a,0x256),_0x449e1c['langu'+_0x2ae3bf(0x22b,0x15f)]=['go'],_0x449e1c[_0x3ecdf8(0x18,-0xd9)+'rn']=/go\s+func\s*\(\s*\)\s*\{[^}]*(?:map\[|=\s*(?:append|[^=]))/g,_0x449e1c[_0x3ecdf8(0x1aa,0xc8)]='Use\x20s'+_0x2ae3bf(0x19d,0x1e3)+_0x2ae3bf(0x11c,0xb2)+_0x2ae3bf(0x182,0x1fd)+_0x3ecdf8(-0x4a,-0x8d)+_0x2ae3bf(0x152,0x239)+'chann'+'els,\x20'+'or\x20at'+_0x3ecdf8(0x1f,0x51)+_0x3ecdf8(0x17,-0xaa)+_0x3ecdf8(0x10,-0x73)+_0x3ecdf8(-0xaa,-0x8f)+'rotec'+_0x2ae3bf(0x140,0x17f)+_0x2ae3bf(0x159,0xe0)+'tate.';const _0x7fcd72={};_0x7fcd72['id']=_0x2ae3bf(0x223,0x297)+_0x3ecdf8(-0x8a,-0x34),_0x7fcd72[_0x3ecdf8(-0x120,-0x2f)]=_0x3ecdf8(0xd2,0x1)+'91',_0x7fcd72[_0x2ae3bf(0x1e4,0xfc)+_0x3ecdf8(0xce,-0xf)]='mediu'+'m',_0x7fcd72[_0x2ae3bf(0x278,0x245)]=_0x2ae3bf(0x203,0x10d)+'cked\x20'+_0x3ecdf8(-0x7a,-0x63)+_0x2ae3bf(0x17c,0x270)+_0x2ae3bf(0x1a1,0x28f)+_0x2ae3bf(0xe9,0xe)+_0x2ae3bf(0x205,0x193)+_0x3ecdf8(0x80,0x48)+_0x2ae3bf(0x1cd,0x16e)+'e',_0x7fcd72[_0x3ecdf8(-0x1ef,-0x108)+_0x2ae3bf(0x29b,0x256)+'n']=_0x2ae3bf(0x27c,0x1da)+_0x3ecdf8(0xb5,0x75)+_0x2ae3bf(0x158,0x77)+_0x3ecdf8(-0xda,-0xc9)+_0x2ae3bf(0x148,0x188)+_0x3ecdf8(0xf1,0xd3)+'an\x20hi'+_0x2ae3bf(0x114,0x1c8)+_0x2ae3bf(0xc2,0x18d)+_0x3ecdf8(0xd8,0x47)+_0x3ecdf8(-0x73,-0x117)+_0x3ecdf8(-0xf7,-0x1b)+_0x2ae3bf(0x290,0x1ca)+'cted\x20'+_0x3ecdf8(-0x76,-0x6a)+'ior\x20o'+_0x2ae3bf(0xe1,0xef)+_0x3ecdf8(-0x31,-0x57)+_0x2ae3bf(0x1fb,0x13b)+'es.',_0x7fcd72[_0x2ae3bf(0x256,0x304)+'ages']=['go'],_0x7fcd72[_0x2ae3bf(0xff,0x18d)+'rn']=/[a-zA-Z_]+\s*,\s*_\s*[:=]=?\s*(?:os\.|ioutil\.|io\.|http\.|sql\.|json\.|crypto\.|tls\.)/g,_0x7fcd72[_0x3ecdf8(0x12b,0xc8)]='Alway'+_0x2ae3bf(0x261,0x1de)+_0x3ecdf8(-0x116,-0x76)+_0x3ecdf8(-0xd,-0x14)+'eturn'+'s:\x20if'+_0x3ecdf8(0x5f,0x74)+_0x2ae3bf(0x13b,0x217)+_0x3ecdf8(0x21,0x2c)+'eturn'+_0x2ae3bf(0x24c,0x2a7)+'}';const _0x5b2b03={};_0x5b2b03['id']='GO-NE'+'T-001',_0x5b2b03['cwe']=_0x3ecdf8(0x106,0x63)+'68',_0x5b2b03[_0x3ecdf8(-0x7b,0xc)+_0x3ecdf8(0xf,-0xf)]=_0x3ecdf8(0xe7,0x21)+'m',_0x5b2b03['title']='Serve'+'r\x20Lis'+_0x2ae3bf(0x196,0xf1)+_0x2ae3bf(0x2a7,0x2b3)+_0x2ae3bf(0x26b,0x1f1)+_0x2ae3bf(0x2a8,0x20f)+_0x2ae3bf(0x286,0x343),_0x5b2b03[_0x3ecdf8(-0x1f,-0x108)+'iptio'+'n']=_0x3ecdf8(0xd7,0xd1)+'ng\x20to'+_0x2ae3bf(0x1c3,0x228)+_0x3ecdf8(-0x77,-0x5b)+_0x2ae3bf(0x20d,0x284)+_0x3ecdf8(-0xd,-0x45)+_0x2ae3bf(0x2a1,0x2b1)+_0x3ecdf8(0x87,-0x6c)+_0x2ae3bf(0x245,0x1f1)+_0x3ecdf8(-0x16c,-0xad)+'rk\x20in'+'terfa'+_0x3ecdf8(0x17e,0xb1)+_0x2ae3bf(0xc5,0xa7)+_0x3ecdf8(-0x179,-0xda)+_0x3ecdf8(-0x53,0x99)+_0x3ecdf8(-0x188,-0x10d)+'.',_0x5b2b03['langu'+_0x3ecdf8(0x9e,0x53)]=['go'],_0x5b2b03[_0x3ecdf8(-0x1c8,-0xd9)+'rn']=/(?:ListenAndServe|Listen)\s*\(\s*['"](?:0\.0\.0\.0|:)(?::\d+)?['"]/g,_0x5b2b03[_0x3ecdf8(0x15d,0xc8)]=_0x2ae3bf(0xf1,0xd0)+_0x3ecdf8(-0xb9,0x5)+_0x3ecdf8(0xc2,0x7f)+_0x2ae3bf(0x238,0x162)+_0x3ecdf8(-0x4,0xb7)+'0.1)\x20'+_0x3ecdf8(0x15a,0x9f)+_0x3ecdf8(-0x69,0x44)+_0x2ae3bf(0x172,0x1a7)+'\x20or\x20u'+_0x2ae3bf(0x225,0x1e1)+'rewal'+_0x3ecdf8(-0x37,0x2a)+_0x2ae3bf(0x248,0x2c3)+_0x2ae3bf(0x169,0xef)+_0x3ecdf8(0x21,0x18)+'n.';const _0x515ab4={};_0x515ab4['id']='GO-UN'+_0x2ae3bf(0x1c0,0x1df)+_0x2ae3bf(0x29a,0x1ae),_0x515ab4[_0x2ae3bf(0x1a9,0x1fa)]='CWE-2'+'42',_0x515ab4[_0x3ecdf8(-0x8f,0xc)+'ity']=_0x3ecdf8(0xb1,0xa5),_0x515ab4[_0x2ae3bf(0x278,0x188)]=_0x2ae3bf(0x1f4,0x2e4)+_0x3ecdf8(0x45,0x3)+_0x2ae3bf(0xf9,0x1a2)+'ackag'+'e',_0x515ab4[_0x3ecdf8(-0xa3,-0x108)+_0x3ecdf8(0xa2,0xc3)+'n']=_0x3ecdf8(-0x8c,-0x8c)+'nsafe'+_0x2ae3bf(0x1f8,0x2b5)+_0x3ecdf8(-0x1c2,-0xeb)+_0x3ecdf8(-0x114,-0x68)+_0x2ae3bf(0x25f,0x34d)+_0x3ecdf8(0xf3,0x3f)+_0x3ecdf8(-0x71,-0xc7)+_0x2ae3bf(0x117,0x159)+_0x2ae3bf(0x209,0x1ea)+_0x2ae3bf(0xe4,0x174)+_0x2ae3bf(0x213,0x2fa)+'ty\x20gu'+_0x3ecdf8(0x9f,0x6b)+_0x3ecdf8(-0x30,0x79),_0x515ab4[_0x2ae3bf(0x256,0x347)+'ages']=['go'],_0x515ab4[_0x2ae3bf(0xff,0x164)+'rn']=/unsafe\.Pointer/g;function _0x3ecdf8(_0x1d4f9b,_0x4de4bc){return _0x28bf(_0x4de4bc- -0x2d5,_0x1d4f9b);}_0x515ab4[_0x2ae3bf(0x2a0,0x25a)]='Avoid'+'\x20unsa'+_0x3ecdf8(-0x5d,0x2)+_0x2ae3bf(0x215,0x2f7)+'\x20unle'+_0x2ae3bf(0x1ab,0x25e)+_0x2ae3bf(0x10c,0xbf)+'ely\x20n'+_0x3ecdf8(-0x4,-0x40)+_0x3ecdf8(0xcb,0x2e)+_0x3ecdf8(-0x51,-0x110)+_0x3ecdf8(-0x7,0x17)+_0x2ae3bf(0x197,0x178)+'\x27s\x20ne'+_0x3ecdf8(0x1,0x13)+_0x2ae3bf(0x1c6,0x142)+_0x3ecdf8(0x108,0x6e)+_0x3ecdf8(-0xe,-0x1d)+_0x2ae3bf(0x1fe,0x28f)+'.';export const goRules=[_0x34ba48,_0x3385b7,_0x4e8981,_0x2bd472,_0x8b7d09,_0x159f84,_0x4126a3,_0x30a4f7,_0x1268cc,_0x5a5665,_0x5ad5d9,_0x406f2e,_0x24a54f,_0x449e1c,_0x7fcd72,_0x5b2b03,_0x515ab4];
@@ -1,147 +1 @@
1
- import { javascriptRules } from "./javascript.js";
2
- import { javascriptExtendedRules } from "./javascript-extended.js";
3
- import { pythonRules } from "./python.js";
4
- import { pythonExtendedRules } from "./python-extended.js";
5
- import { goRules } from "./go.js";
6
- import { javaRules } from "./java.js";
7
- import { phpRules } from "./php.js";
8
- import { rubyRules } from "./ruby.js";
9
- import { cCppRules } from "./c-cpp.js";
10
- import { csharpRules } from "./csharp.js";
11
- import { shellRules } from "./shell.js";
12
- import { dockerRules } from "./docker.js";
13
- import { kubernetesRules } from "./kubernetes.js";
14
- import { cicdRules } from "./cicd.js";
15
- import { terraformRules } from "./terraform.js";
16
- import { secretsRules } from "./secrets.js";
17
- import { secretsExtendedRules } from "./secrets-extended.js";
18
- const allRules = [
19
- ...javascriptRules,
20
- ...javascriptExtendedRules,
21
- ...pythonRules,
22
- ...pythonExtendedRules,
23
- ...goRules,
24
- ...javaRules,
25
- ...phpRules,
26
- ...rubyRules,
27
- ...cCppRules,
28
- ...csharpRules,
29
- ...shellRules,
30
- ...dockerRules,
31
- ...kubernetesRules,
32
- ...cicdRules,
33
- ...terraformRules,
34
- ...secretsRules,
35
- ...secretsExtendedRules,
36
- ];
37
- const extensionToLanguage = {
38
- // JavaScript / TypeScript
39
- ".js": "javascript",
40
- ".jsx": "javascript",
41
- ".mjs": "javascript",
42
- ".cjs": "javascript",
43
- ".ts": "typescript",
44
- ".tsx": "typescript",
45
- ".mts": "typescript",
46
- ".cts": "typescript",
47
- // Python
48
- ".py": "python",
49
- ".pyw": "python",
50
- ".pyi": "python",
51
- // Go
52
- ".go": "go",
53
- // Java / Kotlin / Scala
54
- ".java": "java",
55
- ".kt": "java",
56
- ".kts": "java",
57
- ".scala": "java",
58
- // PHP
59
- ".php": "php",
60
- ".phtml": "php",
61
- ".php3": "php",
62
- ".php4": "php",
63
- ".php5": "php",
64
- ".php7": "php",
65
- ".phps": "php",
66
- // Ruby
67
- ".rb": "ruby",
68
- ".erb": "ruby",
69
- ".rake": "ruby",
70
- ".gemspec": "ruby",
71
- // C / C++
72
- ".c": "c",
73
- ".h": "c",
74
- ".cpp": "cpp",
75
- ".cc": "cpp",
76
- ".cxx": "cpp",
77
- ".hpp": "cpp",
78
- ".hh": "cpp",
79
- ".hxx": "cpp",
80
- // C# / .NET
81
- ".cs": "csharp",
82
- ".cshtml": "csharp",
83
- ".csx": "csharp",
84
- // Rust (secrets rules apply)
85
- ".rs": "rust",
86
- // Shell
87
- ".sh": "shell",
88
- ".bash": "shell",
89
- ".zsh": "shell",
90
- ".ksh": "shell",
91
- ".fish": "shell",
92
- // Docker
93
- ".dockerfile": "dockerfile",
94
- // Kubernetes / Docker Compose / CI/CD (all share yaml rules)
95
- ".yaml": "yaml",
96
- ".yml": "yaml",
97
- // Terraform / HCL
98
- ".tf": "terraform",
99
- ".tfvars": "terraform",
100
- ".hcl": "terraform",
101
- // JSON (package.json, IAM policies, etc.)
102
- ".json": "json",
103
- // SQL
104
- ".sql": "sql",
105
- // HTML (for inline secrets, XSS)
106
- ".html": "html",
107
- ".htm": "html",
108
- // XML
109
- ".xml": "xml",
110
- ".xsl": "xml",
111
- ".xslt": "xml",
112
- ".svg": "xml",
113
- };
114
- /**
115
- * Detect language from filename or hint.
116
- * Also handles special filenames like Dockerfile, Jenkinsfile, Makefile.
117
- */
118
- export function detectLanguage(filename, hint) {
119
- if (hint)
120
- return hint.toLowerCase();
121
- if (!filename)
122
- return "javascript";
123
- // Handle special filenames without extensions
124
- const basename = filename.split(/[/\\]/).pop()?.toLowerCase() || "";
125
- if (basename === "dockerfile" || basename.startsWith("dockerfile."))
126
- return "dockerfile";
127
- if (basename === "jenkinsfile")
128
- return "yaml";
129
- if (basename === "makefile" || basename === "gnumakefile")
130
- return "shell";
131
- if (basename === ".env" || basename.startsWith(".env."))
132
- return "shell";
133
- if (basename === "gemfile" || basename === "rakefile")
134
- return "ruby";
135
- if (basename === "vagrantfile")
136
- return "ruby";
137
- const ext = filename.slice(filename.lastIndexOf(".")).toLowerCase();
138
- return extensionToLanguage[ext] || "javascript";
139
- }
140
- /**
141
- * Get all rules that apply to a given language.
142
- * Secrets rules are language-agnostic and match most languages.
143
- */
144
- export function getRulesForLanguage(language) {
145
- return allRules.filter((rule) => rule.languages.includes(language));
146
- }
147
- export { allRules, javascriptRules, javascriptExtendedRules, pythonRules, pythonExtendedRules, goRules, javaRules, phpRules, rubyRules, cCppRules, csharpRules, shellRules, dockerRules, kubernetesRules, cicdRules, terraformRules, secretsRules, secretsExtendedRules, };
1
+ function _0x28d3c1(_0x5ef00c,_0x5e56f6){return _0x4078(_0x5e56f6-0x3a2,_0x5ef00c);}(function(_0x128fcf,_0x24c616){const _0x381161={_0x2c03b9:0x29a,_0x14a3dc:0x280,_0x37ed7e:0x3a0,_0x313494:0x377,_0x1271b2:0x26a,_0x1e1740:0x293,_0x16f567:0x39b,_0x13541e:0x3e5,_0x1865f8:0x386,_0x125794:0x3cc,_0x5b1255:0x39c,_0x54f47f:0x370,_0xfa0e29:0x250},_0x4bd45b={_0x3ab097:0x24b},_0x44be1b={_0x4dec40:0x3de};function _0x540618(_0x2ee659,_0x46ad80){return _0x4078(_0x46ad80- -_0x44be1b._0x4dec40,_0x2ee659);}function _0x42e202(_0x158341,_0x2eb2d3){return _0x4078(_0x158341-_0x4bd45b._0x3ab097,_0x2eb2d3);}const _0x5f377f=_0x128fcf();while(!![]){try{const _0x40241c=parseInt(_0x42e202(0x37b,0x3a6))/(-0x6d*-0x2+0x1067*0x2+0x1*-0x21a7)+-parseInt(_0x540618(-_0x381161._0x2c03b9,-_0x381161._0x14a3dc))/(-0x890+-0x734+0x7e3*0x2)*(-parseInt(_0x42e202(0x384,0x381))/(-0x2b6*-0x8+0x1bcf+-0x317c))+-parseInt(_0x42e202(_0x381161._0x37ed7e,_0x381161._0x313494))/(-0x460+-0xe0+0x544)+-parseInt(_0x540618(-_0x381161._0x1271b2,-_0x381161._0x1e1740))/(-0xa6d+-0x1*0x1a9f+0x2511)*(parseInt(_0x42e202(0x3d0,_0x381161._0x16f567))/(-0x2a*-0x37+0x108*0xa+-0x1350))+parseInt(_0x42e202(0x3c9,_0x381161._0x13541e))/(0x1018+-0x38*0x14+-0xbb1)+-parseInt(_0x42e202(_0x381161._0x1865f8,0x396))/(0x122a*0x1+-0x21da+-0x1f7*-0x8)*(-parseInt(_0x42e202(_0x381161._0x125794,_0x381161._0x5b1255))/(-0x51*0x5d+-0x13de+0x3154))+parseInt(_0x42e202(0x397,_0x381161._0x54f47f))/(-0x2*0x1207+0x1*-0x6cb+0x2ae3)*(-parseInt(_0x540618(-0x24d,-_0x381161._0xfa0e29))/(-0x258c+0x7da+0x14b*0x17));if(_0x40241c===_0x24c616)break;else _0x5f377f['push'](_0x5f377f['shift']());}catch(_0x23c907){_0x5f377f['push'](_0x5f377f['shift']());}}}(_0x593d,-0x4aa61*0x1+-0x5*0x1349+-0x22*-0x4a27));import{javascriptRules}from'./javascript.js';import{javascriptExtendedRules}from'./javascript-extended.js';function _0x4078(_0x117fe8,_0x318b78){_0x117fe8=_0x117fe8-(0x5*0x6c3+-0x1*-0x20bd+-0x7*0x958);const _0x4e0613=_0x593d();let _0x1eacca=_0x4e0613[_0x117fe8];if(_0x4078['jDtlhS']===undefined){var _0x202f70=function(_0x2b087f){const _0x411e15='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x46e736='',_0x3b2b20='';for(let _0x219e57=0x11e4+0x25dc+-0x37c0,_0x458044,_0x4a98e6,_0x53d787=0xec6+0x34a*0xa+0x2faa*-0x1;_0x4a98e6=_0x2b087f['charAt'](_0x53d787++);~_0x4a98e6&&(_0x458044=_0x219e57%(0x65*0x49+0x380+0x1*-0x2049)?_0x458044*(-0xaac*0x2+0x1874*0x1+-0x2dc)+_0x4a98e6:_0x4a98e6,_0x219e57++%(0x1727*0x1+-0x523+-0x1200))?_0x46e736+=String['fromCharCode'](0x20fa+-0x2649+0x21a*0x3&_0x458044>>(-(-0x174d*-0x1+0x2*0x479+-0x203d)*_0x219e57&-0x312*0xb+0x164d+-0x1b*-0x6d)):0x23*0x81+0x16d6+-0x31d*0xd){_0x4a98e6=_0x411e15['indexOf'](_0x4a98e6);}for(let _0x1be4cb=0x929+0x148c+-0x1db5,_0x4f3391=_0x46e736['length'];_0x1be4cb<_0x4f3391;_0x1be4cb++){_0x3b2b20+='%'+('00'+_0x46e736['charCodeAt'](_0x1be4cb)['toString'](0x153b+0x5ea+-0x1*0x1b15))['slice'](-(-0x71d+-0x24c+0x96b));}return decodeURIComponent(_0x3b2b20);};_0x4078['mSJXon']=_0x202f70,_0x4078['ptlPnB']={},_0x4078['jDtlhS']=!![];}const _0x2646f8=_0x4e0613[-0x79c+-0x161d+0x1db9*0x1],_0x18e3d2=_0x117fe8+_0x2646f8,_0x28e241=_0x4078['ptlPnB'][_0x18e3d2];return!_0x28e241?(_0x1eacca=_0x4078['mSJXon'](_0x1eacca),_0x4078['ptlPnB'][_0x18e3d2]=_0x1eacca):_0x1eacca=_0x28e241,_0x1eacca;}import{pythonRules}from'./python.js';import{pythonExtendedRules}from'./python-extended.js';import{goRules}from'./go.js';import{javaRules}from'./java.js';import{phpRules}from'./php.js';import{rubyRules}from'./ruby.js';import{cCppRules}from'./c-cpp.js';import{csharpRules}from'./csharp.js';function _0x593d(){const _0x155e55=['lMH0Bq','C3rHCNq','lNnJywW','rMXKt1C','odi4mdGXwwzfDvzl','zeHfreu','otaZmtjSyKDUBNi','lMrVy2S','y3jPChq','zxjdyxm','A2vMAwW','lMzPC2G','lNrM','lMT0CW','zM9YBq','z2vTzMK','lNbODg0','lNjHA2u','lMHO','lMPZ','lNbOCdC','DMfNCMe','mti3nZv1DuLPq1i','nJu2oduXmg1Hvhb4wq','C3bSAxq','CNvZDa','z251Bwe','uNz2Ew4','lMH0BwW','lNbOCdq','zhznCwO','BgfUz3u','nZK4mtGWyKjlA2X2','lNjZ','ChL0Ag8','lMHJBa','CgHW','lMnQCW','DwXKDeC','lMnWCa','C1DPDgG','mLjSqM1eBG','CMzPBgu','DuHdDLi','BNrMAwW','lNHZBa','C2HLBgW','lMnZ','zMLSDgu','lMPZEa','C3fS','lMvUDG','lMn4Ea','BwfRzwy','D3bPzuW','lMnZEa','BMrLEe8','lMPZB24','B0XqvKS','lNbOCa','ywDLCW','Dw53EeO','Dg9mB3C','zg9JA2u','AMvUA2K','Aw5JBhu','lMjHC2G','Dw9St0q','rNrNAhy','C0Xpvha','CejXBge','zgvZ','y3nOyxi','ndmWnZeYohjxC2P6uq','lMT0','DhLWzxm','mZuXCM9nsMrK','lMHWCa','EwfTBa','lMnJ','odC2zuLjBhny','AwXL','BgfZDeK','lNHTBa','lMDV','lNbOCdm','lNn2zW','CMfRzwy','lMn0CW','mtfVD1zMDe8','lNnXBa','lM1QCW','lMvUDI4','AMf2yq','AhrTBa','Eg1S','DgvYCMe','y3bW','t3ngDu4','lNPZAa','lNHZBhq','lNb5DW','C2XPy2u','mJeYodaWBuDJqxbh','CNvIEq','y2L6r28','lMnZAhq','AMf2yxm'];_0x593d=function(){return _0x155e55;};return _0x593d();}import{shellRules}from'./shell.js';import{dockerRules}from'./docker.js';import{kubernetesRules}from'./kubernetes.js';import{cicdRules}from'./cicd.js';import{terraformRules}from'./terraform.js';import{secretsRules}from'./secrets.js';import{secretsExtendedRules}from'./secrets-extended.js';const allRules=[...javascriptRules,...javascriptExtendedRules,...pythonRules,...pythonExtendedRules,...goRules,...javaRules,...phpRules,...rubyRules,...cCppRules,...csharpRules,...shellRules,...dockerRules,...kubernetesRules,...cicdRules,...terraformRules,...secretsRules,...secretsExtendedRules],_0xae023b={};_0xae023b[_0xefe4ad(0x1de,0x1b1)]=_0xefe4ad(0x1ca,0x1e9)+'cript',_0xae023b[_0x28d3c1(0x4df,0x508)]='javas'+_0x28d3c1(0x4e4,0x4df),_0xae023b[_0xefe4ad(0x1ba,0x1bc)]=_0xefe4ad(0x1ca,0x19a)+_0x28d3c1(0x4ff,0x4df),_0xae023b[_0x28d3c1(0x4f4,0x4fc)]='javas'+'cript',_0xae023b['.ts']=_0xefe4ad(0x216,0x21b)+'cript',_0xae023b['.tsx']='types'+'cript',_0xae023b['.mts']=_0xefe4ad(0x216,0x23d)+_0x28d3c1(0x4d0,0x4df),_0xae023b[_0xefe4ad(0x223,0x1ff)]='types'+_0xefe4ad(0x1d3,0x1c7),_0xae023b['.py']=_0xefe4ad(0x1ed,0x20c)+'n',_0xae023b[_0xefe4ad(0x1c4,0x1ac)]=_0x28d3c1(0x508,0x4f9)+'n',_0xae023b['.pyi']='pytho'+'n',_0xae023b[_0x28d3c1(0x535,0x52b)]='go',_0xae023b['.java']=_0x28d3c1(0x4f4,0x4c8),_0xae023b[_0xefe4ad(0x215,0x242)]=_0xefe4ad(0x1bc,0x1be),_0xae023b[_0xefe4ad(0x1d8,0x1ee)]=_0x28d3c1(0x4a9,0x4c8),_0xae023b[_0x28d3c1(0x4f2,0x4d9)+'a']=_0xefe4ad(0x1bc,0x1c5),_0xae023b[_0xefe4ad(0x206,0x1fe)]='php',_0xae023b[_0x28d3c1(0x4f7,0x4e7)+'l']='php',_0xae023b[_0x28d3c1(0x4fe,0x52c)]=_0xefe4ad(0x1ef,0x208),_0xae023b[_0x28d3c1(0x4dd,0x4f4)]=_0xefe4ad(0x1ef,0x1b9),_0xae023b['.php5']=_0x28d3c1(0x502,0x4fb),_0xae023b[_0x28d3c1(0x504,0x4eb)]='php',_0xae023b['.phps']=_0x28d3c1(0x511,0x4fb),_0xae023b['.rb']=_0xefe4ad(0x1c7,0x1cf),_0xae023b['.erb']=_0xefe4ad(0x1c7,0x1d3),_0xae023b[_0x28d3c1(0x50f,0x4e8)]='ruby',_0xae023b['.gems'+'pec']=_0x28d3c1(0x4f8,0x4d3),_0xae023b['.c']='c',_0xae023b['.h']='c',_0xae023b[_0x28d3c1(0x4cf,0x4fe)]=_0x28d3c1(0x4a9,0x4cc),_0xae023b[_0x28d3c1(0x55b,0x526)]=_0xefe4ad(0x1c0,0x190),_0xae023b[_0x28d3c1(0x4f1,0x50b)]=_0xefe4ad(0x1c0,0x1bf),_0xae023b[_0x28d3c1(0x54e,0x524)]=_0xefe4ad(0x1c0,0x1f1),_0xae023b[_0xefe4ad(0x1dd,0x1e1)]=_0x28d3c1(0x496,0x4cc),_0xae023b['.hxx']=_0x28d3c1(0x4f8,0x4cc),_0xae023b[_0xefe4ad(0x1fa,0x1cd)]=_0x28d3c1(0x541,0x51f)+'p',_0xae023b[_0x28d3c1(0x4b0,0x4d5)+'ml']=_0xefe4ad(0x213,0x226)+'p',_0xae023b[_0xefe4ad(0x202,0x1f0)]=_0xefe4ad(0x213,0x1f7)+'p',_0xae023b[_0xefe4ad(0x1ec,0x1d9)]=_0x28d3c1(0x4c4,0x4f0),_0xae023b['.sh']=_0x28d3c1(0x539,0x505),_0xae023b[_0x28d3c1(0x535,0x519)]=_0x28d3c1(0x536,0x505),_0xae023b[_0xefe4ad(0x1c2,0x1c0)]=_0x28d3c1(0x505,0x505),_0xae023b['.ksh']=_0x28d3c1(0x50f,0x505),_0xae023b[_0x28d3c1(0x512,0x4e2)]=_0x28d3c1(0x528,0x505);function _0xefe4ad(_0x5532c2,_0x1ab1a2){const _0x1f966a={_0x1531d2:0x96};return _0x4078(_0x5532c2-_0x1f966a._0x1531d2,_0x1ab1a2);}_0xae023b[_0x28d3c1(0x4c0,0x4de)+'erfil'+'e']='docke'+_0x28d3c1(0x4f2,0x501),_0xae023b['.yaml']=_0x28d3c1(0x54a,0x525),_0xae023b['.yml']=_0x28d3c1(0x52a,0x525),_0xae023b[_0xefe4ad(0x1d7,0x1e1)]=_0xefe4ad(0x1bf,0x1ad)+'form',_0xae023b['.tfva'+'rs']='terra'+_0xefe4ad(0x1d9,0x204),_0xae023b[_0xefe4ad(0x1ee,0x1cf)]=_0xefe4ad(0x1bf,0x189)+'form',_0xae023b[_0x28d3c1(0x505,0x510)]='json',_0xae023b[_0x28d3c1(0x545,0x531)]=_0xefe4ad(0x1fd,0x1d9),_0xae023b[_0x28d3c1(0x518,0x4f3)]=_0xefe4ad(0x1bd,0x1e0),_0xae023b[_0x28d3c1(0x4d6,0x4d7)]=_0xefe4ad(0x1bd,0x1ef),_0xae023b[_0xefe4ad(0x21e,0x222)]=_0x28d3c1(0x4e9,0x4ca),_0xae023b[_0x28d3c1(0x4dc,0x504)]=_0x28d3c1(0x4b2,0x4ca),_0xae023b[_0xefe4ad(0x1c3,0x1ee)]=_0xefe4ad(0x1be,0x1d3),_0xae023b[_0x28d3c1(0x541,0x52d)]='xml';const extensionToLanguage=_0xae023b;export function detectLanguage(_0x13f1b7,_0x17c8f0){const _0x49bdec={_0x8309cc:0xe7,_0x5eae74:0xe0,_0x2624c0:0xe8,_0x13253c:0xcb,_0x30b24f:0x30d,_0x3ecf6b:0xc9,_0x3e340f:0x116,_0xfd823:0x2f7,_0x391ac5:0x2ea,_0x528a32:0xec,_0x129f47:0x2f4,_0x4bdb78:0x2f5,_0x1a20ca:0x106,_0x512f01:0x2fa,_0x845dca:0x118,_0x48f820:0xfb,_0x1370ec:0x2c1,_0x1b6b3a:0x319,_0x290d47:0xb9,_0x3327bb:0x2b8,_0x293d9b:0x104,_0x43e8ce:0x105,_0x1da22e:0xe6,_0x1dc9aa:0x110,_0x2c9259:0x337,_0x3eb6bb:0x306,_0x59777a:0x133,_0x27ec8e:0x2ca,_0x33f7f6:0xcc,_0x15f97e:0xef,_0x41b034:0x2de,_0x511e03:0x2cb,_0x3bd6d9:0x293,_0x2a10b3:0x2d9,_0x21d61c:0x305,_0x4b0577:0x2e0,_0x5ec746:0x2e8,_0x23cec6:0xa2,_0xbe7a66:0xc7,_0x20d239:0xcd,_0x2d2f1e:0x2e0,_0x5d2922:0x2f0,_0xddb059:0x109,_0x58249a:0x2da,_0x3aacf7:0x2bf,_0x550817:0xd4,_0x1bc41d:0x308,_0x2dcca7:0x32a,_0xdb228:0x123,_0x24337e:0x2dd,_0x1c2763:0x2bc,_0x3f78c0:0x33d,_0x611145:0xd2,_0x352539:0xa8,_0x3c9b5d:0xcc,_0x223ed9:0x2b5,_0x1a7d26:0xbd,_0x40b68f:0xc6},_0x1586b2={};_0x1586b2[_0x276bc5(0x2ea,0x2c5)]='docke'+_0x2e8e54(-_0x49bdec._0x8309cc,-_0x49bdec._0x5eae74);function _0x2e8e54(_0x16c9ea,_0x3b1e29){return _0x28d3c1(_0x16c9ea,_0x3b1e29- -0x5e1);}function _0x276bc5(_0x23f6d2,_0x58eaa9){return _0xefe4ad(_0x58eaa9-0xf7,_0x23f6d2);}_0x1586b2[_0x2e8e54(-_0x49bdec._0x2624c0,-0xd0)]=_0x2e8e54(-0xb7,-_0x49bdec._0x13253c)+_0x2e8e54(-0x105,-_0x49bdec._0x5eae74)+'.',_0x1586b2[_0x2e8e54(-0xc3,-0xc7)]=function(_0x55f3e0,_0x175dca){return _0x55f3e0===_0x175dca;},_0x1586b2[_0x276bc5(_0x49bdec._0x30b24f,0x2dd)]=_0x2e8e54(-_0x49bdec._0x3ecf6b,-0xca)+'nsfil'+'e',_0x1586b2[_0x2e8e54(-_0x49bdec._0x3e340f,-0xe4)]='yaml',_0x1586b2[_0x276bc5(_0x49bdec._0xfd823,0x2ff)]=_0x276bc5(_0x49bdec._0x391ac5,0x2f7)+'ile',_0x1586b2[_0x2e8e54(-0x9e,-0xc5)]=function(_0x3c889f,_0x2b6db5){return _0x3c889f===_0x2b6db5;},_0x1586b2[_0x2e8e54(-0xd8,-_0x49bdec._0x528a32)]=_0x276bc5(_0x49bdec._0x129f47,_0x49bdec._0x4bdb78),_0x1586b2[_0x276bc5(0x29b,0x2bf)]=_0x2e8e54(-_0x49bdec._0x1a20ca,-0x11a),_0x1586b2[_0x276bc5(_0x49bdec._0x512f01,0x2f8)]='shell',_0x1586b2['pBqla']=_0x2e8e54(-_0x49bdec._0x845dca,-_0x49bdec._0x48f820)+'le',_0x1586b2[_0x276bc5(_0x49bdec._0x1370ec,0x2ed)]=_0x276bc5(0x344,_0x49bdec._0x1b6b3a)+_0x2e8e54(-0xa1,-_0x49bdec._0x290d47),_0x1586b2[_0x276bc5(0x2b9,_0x49bdec._0x3327bb)]='ruby',_0x1586b2[_0x2e8e54(-_0x49bdec._0x293d9b,-_0x49bdec._0x43e8ce)]=_0x2e8e54(-_0x49bdec._0x1da22e,-0xf5)+_0x2e8e54(-_0x49bdec._0x1dc9aa,-0xde)+'e',_0x1586b2[_0x276bc5(_0x49bdec._0x2c9259,_0x49bdec._0x3eb6bb)]='javas'+'cript';const _0x46f159=_0x1586b2;if(_0x17c8f0)return _0x17c8f0['toLow'+'erCas'+'e']();if(!_0x13f1b7)return _0x2e8e54(-_0x49bdec._0x59777a,-0x10b)+_0x276bc5(0x2c4,_0x49bdec._0x27ec8e);const _0xbb5f35=_0x13f1b7[_0x2e8e54(-_0x49bdec._0x33f7f6,-0xf2)](/[/\\]/)['pop']()?.[_0x2e8e54(-_0x49bdec._0x15f97e,-0xcc)+_0x276bc5(_0x49bdec._0x41b034,_0x49bdec._0x511e03)+'e']()||'';if(_0xbb5f35===_0x46f159[_0x276bc5(_0x49bdec._0x3bd6d9,0x2c5)]||_0xbb5f35[_0x2e8e54(-0x117,-0x109)+'sWith'](_0x46f159[_0x2e8e54(-0x9c,-0xd0)]))return _0x46f159[_0x276bc5(_0x49bdec._0x2a10b3,0x2c5)];if(_0x46f159[_0x276bc5(_0x49bdec._0x21d61c,0x305)](_0xbb5f35,_0x46f159[_0x2e8e54(-0x10e,-_0x49bdec._0x15f97e)]))return _0x46f159[_0x276bc5(_0x49bdec._0x4b0577,_0x49bdec._0x5ec746)];if(_0x46f159[_0x2e8e54(-_0x49bdec._0x23cec6,-_0x49bdec._0xbe7a66)](_0xbb5f35,_0x46f159[_0x2e8e54(-0x97,-_0x49bdec._0x20d239)])||_0x46f159[_0x276bc5(0x2fb,0x307)](_0xbb5f35,_0x2e8e54(-0xc1,-0xf0)+_0x2e8e54(-0xf9,-0x100)+'e'))return _0x276bc5(_0x49bdec._0x2d2f1e,_0x49bdec._0x5d2922);if(_0xbb5f35===_0x46f159[_0x276bc5(0x2ba,0x2e0)]||_0xbb5f35[_0x2e8e54(-0xf1,-_0x49bdec._0xddb059)+_0x276bc5(0x2bb,_0x49bdec._0x391ac5)](_0x46f159[_0x276bc5(_0x49bdec._0x58249a,_0x49bdec._0x3aacf7)]))return _0x46f159[_0x2e8e54(-_0x49bdec._0x33f7f6,-_0x49bdec._0x550817)];if(_0xbb5f35===_0x46f159[_0x276bc5(0x2de,_0x49bdec._0x1bc41d)]||_0xbb5f35===_0x46f159[_0x276bc5(0x2da,0x2ed)])return _0x46f159['OsFuN'];if(_0x46f159[_0x276bc5(_0x49bdec._0x2dcca7,_0x49bdec._0x21d61c)](_0xbb5f35,_0x46f159[_0x2e8e54(-_0x49bdec._0xdb228,-0x105)]))return _0x46f159[_0x276bc5(_0x49bdec._0x24337e,_0x49bdec._0x3327bb)];const _0xcdf05f=_0x13f1b7[_0x276bc5(0x2a5,_0x49bdec._0x1c2763)](_0x13f1b7[_0x276bc5(_0x49bdec._0x3f78c0,0x314)+_0x2e8e54(-0xb2,-_0x49bdec._0x611145)+'f']('.'))[_0x2e8e54(-_0x49bdec._0x352539,-_0x49bdec._0x3c9b5d)+_0x276bc5(_0x49bdec._0x223ed9,_0x49bdec._0x511e03)+'e']();return extensionToLanguage[_0xcdf05f]||_0x46f159[_0x2e8e54(-_0x49bdec._0x1a7d26,-_0x49bdec._0x40b68f)];}export function getRulesForLanguage(_0x34ab99){const _0x3d80fd={_0x1ae2db:0x59f},_0x5b7bd4={_0x49f65d:0x476};function _0x118110(_0x3dc281,_0x5a52cc){return _0x28d3c1(_0x5a52cc,_0x3dc281- -_0x5b7bd4._0x49f65d);}function _0x5cf6b0(_0x1bfba4,_0x37fc53){return _0x28d3c1(_0x1bfba4,_0x37fc53- -_0x3d80fd._0x1ae2db);}return allRules[_0x5cf6b0(-0xcb,-0x98)+'r'](_0x2aa2c4=>_0x2aa2c4[_0x5cf6b0(-0xda,-0xa9)+_0x118110(0x9d,0x6c)][_0x118110(0xa2,0xad)+_0x118110(0xa8,0x8b)](_0x34ab99));}export{allRules,javascriptRules,javascriptExtendedRules,pythonRules,pythonExtendedRules,goRules,javaRules,phpRules,rubyRules,cCppRules,csharpRules,shellRules,dockerRules,kubernetesRules,cicdRules,terraformRules,secretsRules,secretsExtendedRules};