security-review
Use this skill when adding authentication, handling user input, working with secrets, creating API endpoints, or implementing payment/sensitive features. Provides comprehensive security checklist and patterns.
Loading actions...
Prompt Playground
1 VariablesFill Variables
Preview
---
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]s[__html: clean][__html: clean]uri[__html: clean]y-r[__html: clean]vi[__html: clean]w
d[__html: clean]s[__html: clean]rip[__html: clean]io[__html: clean][__html: clean][__html: clean]Us[__html: clean][__html: clean][__html: clean][__html: clean]is[__html: clean]ski[__html: clean][__html: clean][__html: clean]w[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ddi[__html: clean]g[__html: clean][__html: clean]u[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]io[__html: clean],[__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean]i[__html: clean]g[__html: clean]us[__html: clean]r[__html: clean]i[__html: clean]pu[__html: clean],[__html: clean]worki[__html: clean]g[__html: clean]wi[__html: clean][__html: clean][__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean]s,[__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean]i[__html: clean]g[__html: clean]API[__html: clean][__html: clean][__html: clean]dpoi[__html: clean][__html: clean]s,[__html: clean]or[__html: clean]i[__html: clean]p[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean]g[__html: clean]p[__html: clean]y[__html: clean][__html: clean][__html: clean][__html: clean]/s[__html: clean][__html: clean]si[__html: clean]iv[__html: clean][__html: clean]f[__html: clean][__html: clean][__html: clean]ur[__html: clean]s.[__html: clean]Provid[__html: clean]s[__html: clean][__html: clean]o[__html: clean]pr[__html: clean][__html: clean][__html: clean][__html: clean]siv[__html: clean][__html: clean]s[__html: clean][__html: clean]uri[__html: clean]y[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]k[__html: clean]is[__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean]p[__html: clean][__html: clean][__html: clean][__html: clean]r[__html: clean]s.
[__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean][__html: clean]
[__html: clean][__html: clean]origi[__html: clean][__html: clean][__html: clean]ECC
---
#[__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean]R[__html: clean]vi[__html: clean]w[__html: clean]Ski[__html: clean][__html: clean]
T[__html: clean]is[__html: clean]ski[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]sur[__html: clean]s[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]od[__html: clean][__html: clean]fo[__html: clean][__html: clean]ows[__html: clean]s[__html: clean][__html: clean]uri[__html: clean]y[__html: clean]b[__html: clean]s[__html: clean][__html: clean]pr[__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]d[__html: clean]id[__html: clean][__html: clean][__html: clean]ifi[__html: clean]s[__html: clean]po[__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]vu[__html: clean][__html: clean][__html: clean]r[__html: clean]bi[__html: clean]i[__html: clean]i[__html: clean]s.
##[__html: clean]W[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]o[__html: clean]A[__html: clean][__html: clean]iv[__html: clean][__html: clean][__html: clean]
-[__html: clean]I[__html: clean]p[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean]g[__html: clean][__html: clean]u[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]or[__html: clean][__html: clean]u[__html: clean][__html: clean]oriz[__html: clean][__html: clean]io[__html: clean]
-[__html: clean]H[__html: clean][__html: clean]d[__html: clean]i[__html: clean]g[__html: clean]us[__html: clean]r[__html: clean]i[__html: clean]pu[__html: clean][__html: clean]or[__html: clean]fi[__html: clean][__html: clean][__html: clean]up[__html: clean]o[__html: clean]ds
-[__html: clean]Cr[__html: clean][__html: clean][__html: clean]i[__html: clean]g[__html: clean][__html: clean][__html: clean]w[__html: clean]API[__html: clean][__html: clean][__html: clean]dpoi[__html: clean][__html: clean]s
-[__html: clean]Worki[__html: clean]g[__html: clean]wi[__html: clean][__html: clean][__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean]or[__html: clean][__html: clean]r[__html: clean]d[__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean]s
-[__html: clean]I[__html: clean]p[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean]g[__html: clean]p[__html: clean]y[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]f[__html: clean][__html: clean][__html: clean]ur[__html: clean]s
-[__html: clean]S[__html: clean]ori[__html: clean]g[__html: clean]or[__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean]i[__html: clean][__html: clean]i[__html: clean]g[__html: clean]s[__html: clean][__html: clean]si[__html: clean]iv[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]
-[__html: clean]I[__html: clean][__html: clean][__html: clean]gr[__html: clean][__html: clean]i[__html: clean]g[__html: clean][__html: clean][__html: clean]ird-p[__html: clean]r[__html: clean]y[__html: clean]APIs
##[__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean]C[__html: clean][__html: clean][__html: clean]k[__html: clean]is[__html: clean]
###[__html: clean]1.[__html: clean]S[__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean]M[__html: clean][__html: clean][__html: clean]g[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]
####[__html: clean]FAIL[__html: clean][__html: clean]NEVER[__html: clean]Do[__html: clean]T[__html: clean]is
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
[__html: clean]o[__html: clean]s[__html: clean][__html: clean][__html: clean]piK[__html: clean]y[__html: clean]=[__html: clean]"sk-proj-xxxxx"[__html: clean][__html: clean]//[__html: clean]H[__html: clean]rd[__html: clean]od[__html: clean]d[__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean]
[__html: clean]o[__html: clean]s[__html: clean][__html: clean]dbP[__html: clean]ssword[__html: clean]=[__html: clean]"p[__html: clean]ssword123"[__html: clean]//[__html: clean]I[__html: clean][__html: clean]sour[__html: clean][__html: clean][__html: clean][__html: clean]od[__html: clean]
```
####[__html: clean]PASS[__html: clean][__html: clean]ALWAYS[__html: clean]Do[__html: clean]T[__html: clean]is
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
[__html: clean]o[__html: clean]s[__html: clean][__html: clean][__html: clean]piK[__html: clean]y[__html: clean]=[__html: clean]pro[__html: clean][__html: clean]ss.[__html: clean][__html: clean]v.OPENAI[__html: clean]API[__html: clean]KEY
[__html: clean]o[__html: clean]s[__html: clean][__html: clean]dbUr[__html: clean][__html: clean]=[__html: clean]pro[__html: clean][__html: clean]ss.[__html: clean][__html: clean]v.DATABASE[__html: clean]URL
//[__html: clean]V[__html: clean]rify[__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean][__html: clean]xis[__html: clean]
if[__html: clean](![__html: clean]piK[__html: clean]y)[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean]row[__html: clean][__html: clean][__html: clean]w[__html: clean]Error('OPENAI[__html: clean]API[__html: clean]KEY[__html: clean][__html: clean]o[__html: clean][__html: clean][__html: clean]o[__html: clean]figur[__html: clean]d')
}
```
####[__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]S[__html: clean][__html: clean]ps
-[__html: clean][[__html: clean]][__html: clean]No[__html: clean][__html: clean][__html: clean]rd[__html: clean]od[__html: clean]d[__html: clean]API[__html: clean]k[__html: clean]ys,[__html: clean][__html: clean]ok[__html: clean][__html: clean]s,[__html: clean]or[__html: clean]p[__html: clean]sswords
-[__html: clean][[__html: clean]][__html: clean]A[__html: clean][__html: clean][__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean]i[__html: clean][__html: clean][__html: clean][__html: clean]viro[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]v[__html: clean]ri[__html: clean]b[__html: clean][__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]`.[__html: clean][__html: clean]v.[__html: clean]o[__html: clean][__html: clean][__html: clean]`[__html: clean]i[__html: clean][__html: clean].gi[__html: clean]ig[__html: clean]or[__html: clean]
-[__html: clean][[__html: clean]][__html: clean]No[__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean]i[__html: clean][__html: clean]gi[__html: clean][__html: clean][__html: clean]is[__html: clean]ory
-[__html: clean][[__html: clean]][__html: clean]Produ[__html: clean][__html: clean]io[__html: clean][__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean]i[__html: clean][__html: clean][__html: clean]os[__html: clean]i[__html: clean]g[__html: clean]p[__html: clean][__html: clean][__html: clean]for[__html: clean][__html: clean](V[__html: clean]r[__html: clean][__html: clean][__html: clean],[__html: clean]R[__html: clean]i[__html: clean]w[__html: clean]y)
###[__html: clean]2.[__html: clean]I[__html: clean]pu[__html: clean][__html: clean]V[__html: clean][__html: clean]id[__html: clean][__html: clean]io[__html: clean]
####[__html: clean]A[__html: clean]w[__html: clean]ys[__html: clean]V[__html: clean][__html: clean]id[__html: clean][__html: clean][__html: clean][__html: clean]Us[__html: clean]r[__html: clean]I[__html: clean]pu[__html: clean]
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
i[__html: clean]por[__html: clean][__html: clean]{[__html: clean]z[__html: clean]}[__html: clean]fro[__html: clean][__html: clean]'zod'
//[__html: clean]D[__html: clean]fi[__html: clean][__html: clean][__html: clean]v[__html: clean][__html: clean]id[__html: clean][__html: clean]io[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]
[__html: clean]o[__html: clean]s[__html: clean][__html: clean]Cr[__html: clean][__html: clean][__html: clean][__html: clean]Us[__html: clean]rS[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]=[__html: clean]z.obj[__html: clean][__html: clean][__html: clean]({
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]z.s[__html: clean]ri[__html: clean]g().[__html: clean][__html: clean][__html: clean]i[__html: clean](),
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]z.s[__html: clean]ri[__html: clean]g().[__html: clean]i[__html: clean](1).[__html: clean][__html: clean]x(100),
[__html: clean][__html: clean][__html: clean]g[__html: clean][__html: clean][__html: clean]z.[__html: clean]u[__html: clean]b[__html: clean]r().i[__html: clean][__html: clean]().[__html: clean]i[__html: clean](0).[__html: clean][__html: clean]x(150)
})
//[__html: clean]V[__html: clean][__html: clean]id[__html: clean][__html: clean][__html: clean][__html: clean]b[__html: clean]for[__html: clean][__html: clean]pro[__html: clean][__html: clean]ssi[__html: clean]g
[__html: clean]xpor[__html: clean][__html: clean][__html: clean]sy[__html: clean][__html: clean][__html: clean]fu[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean]Us[__html: clean]r(i[__html: clean]pu[__html: clean][__html: clean][__html: clean]u[__html: clean]k[__html: clean]ow[__html: clean])[__html: clean]{
[__html: clean][__html: clean][__html: clean]ry[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean]v[__html: clean][__html: clean]id[__html: clean][__html: clean][__html: clean]d[__html: clean]=[__html: clean]Cr[__html: clean][__html: clean][__html: clean][__html: clean]Us[__html: clean]rS[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean].p[__html: clean]rs[__html: clean](i[__html: clean]pu[__html: clean])
[__html: clean][__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean]ur[__html: clean][__html: clean][__html: clean]w[__html: clean]i[__html: clean][__html: clean]db.us[__html: clean]rs.[__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean](v[__html: clean][__html: clean]id[__html: clean][__html: clean][__html: clean]d)
[__html: clean][__html: clean]}[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]([__html: clean]rror)[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean]if[__html: clean]([__html: clean]rror[__html: clean]i[__html: clean]s[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]of[__html: clean]z.ZodError)[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean]ur[__html: clean][__html: clean]{[__html: clean]su[__html: clean][__html: clean][__html: clean]ss[__html: clean][__html: clean]f[__html: clean][__html: clean]s[__html: clean],[__html: clean][__html: clean]rrors[__html: clean][__html: clean][__html: clean]rror.[__html: clean]rrors[__html: clean]}
[__html: clean][__html: clean][__html: clean][__html: clean]}
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]row[__html: clean][__html: clean]rror
[__html: clean][__html: clean]}
}
```
####[__html: clean]Fi[__html: clean][__html: clean][__html: clean]Up[__html: clean]o[__html: clean]d[__html: clean]V[__html: clean][__html: clean]id[__html: clean][__html: clean]io[__html: clean]
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
fu[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]v[__html: clean][__html: clean]id[__html: clean][__html: clean][__html: clean]Fi[__html: clean][__html: clean]Up[__html: clean]o[__html: clean]d(fi[__html: clean][__html: clean][__html: clean][__html: clean]Fi[__html: clean][__html: clean])[__html: clean]{
[__html: clean][__html: clean]//[__html: clean]Siz[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]k[__html: clean](5MB[__html: clean][__html: clean][__html: clean]x)
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean][__html: clean][__html: clean]xSiz[__html: clean][__html: clean]=[__html: clean]5[__html: clean]*[__html: clean]1024[__html: clean]*[__html: clean]1024
[__html: clean][__html: clean]if[__html: clean](fi[__html: clean][__html: clean].siz[__html: clean][__html: clean]>[__html: clean][__html: clean][__html: clean]xSiz[__html: clean])[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]row[__html: clean][__html: clean][__html: clean]w[__html: clean]Error('Fi[__html: clean][__html: clean][__html: clean][__html: clean]oo[__html: clean][__html: clean][__html: clean]rg[__html: clean][__html: clean]([__html: clean][__html: clean]x[__html: clean]5MB)')
[__html: clean][__html: clean]}
[__html: clean][__html: clean]//[__html: clean]Typ[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]k
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ow[__html: clean]dTyp[__html: clean]s[__html: clean]=[__html: clean]['i[__html: clean][__html: clean]g[__html: clean]/jp[__html: clean]g',[__html: clean]'i[__html: clean][__html: clean]g[__html: clean]/p[__html: clean]g',[__html: clean]'i[__html: clean][__html: clean]g[__html: clean]/gif']
[__html: clean][__html: clean]if[__html: clean](![__html: clean][__html: clean][__html: clean]ow[__html: clean]dTyp[__html: clean]s.i[__html: clean][__html: clean][__html: clean]ud[__html: clean]s(fi[__html: clean][__html: clean].[__html: clean]yp[__html: clean]))[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]row[__html: clean][__html: clean][__html: clean]w[__html: clean]Error('I[__html: clean]v[__html: clean][__html: clean]id[__html: clean]fi[__html: clean][__html: clean][__html: clean][__html: clean]yp[__html: clean]')
[__html: clean][__html: clean]}
[__html: clean][__html: clean]//[__html: clean]Ex[__html: clean][__html: clean][__html: clean]sio[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]k
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ow[__html: clean]dEx[__html: clean][__html: clean][__html: clean]sio[__html: clean]s[__html: clean]=[__html: clean]['.jpg',[__html: clean]'.jp[__html: clean]g',[__html: clean]'.p[__html: clean]g',[__html: clean]'.gif']
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean][__html: clean]x[__html: clean][__html: clean][__html: clean]sio[__html: clean][__html: clean]=[__html: clean]fi[__html: clean][__html: clean].[__html: clean][__html: clean][__html: clean][__html: clean].[__html: clean]oLow[__html: clean]rC[__html: clean]s[__html: clean]().[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean](/\.[^.]+$/)?.[0]
[__html: clean][__html: clean]if[__html: clean](![__html: clean]x[__html: clean][__html: clean][__html: clean]sio[__html: clean][__html: clean]||[__html: clean]![__html: clean][__html: clean][__html: clean]ow[__html: clean]dEx[__html: clean][__html: clean][__html: clean]sio[__html: clean]s.i[__html: clean][__html: clean][__html: clean]ud[__html: clean]s([__html: clean]x[__html: clean][__html: clean][__html: clean]sio[__html: clean]))[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]row[__html: clean][__html: clean][__html: clean]w[__html: clean]Error('I[__html: clean]v[__html: clean][__html: clean]id[__html: clean]fi[__html: clean][__html: clean][__html: clean][__html: clean]x[__html: clean][__html: clean][__html: clean]sio[__html: clean]')
[__html: clean][__html: clean]}
[__html: clean][__html: clean]r[__html: clean][__html: clean]ur[__html: clean][__html: clean][__html: clean]ru[__html: clean]
}
```
####[__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]S[__html: clean][__html: clean]ps
-[__html: clean][[__html: clean]][__html: clean]A[__html: clean][__html: clean][__html: clean]us[__html: clean]r[__html: clean]i[__html: clean]pu[__html: clean]s[__html: clean]v[__html: clean][__html: clean]id[__html: clean][__html: clean][__html: clean]d[__html: clean]wi[__html: clean][__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]Fi[__html: clean][__html: clean][__html: clean]up[__html: clean]o[__html: clean]ds[__html: clean]r[__html: clean]s[__html: clean]ri[__html: clean][__html: clean][__html: clean]d[__html: clean](siz[__html: clean],[__html: clean][__html: clean]yp[__html: clean],[__html: clean][__html: clean]x[__html: clean][__html: clean][__html: clean]sio[__html: clean])
-[__html: clean][[__html: clean]][__html: clean]No[__html: clean]dir[__html: clean][__html: clean][__html: clean][__html: clean]us[__html: clean][__html: clean]of[__html: clean]us[__html: clean]r[__html: clean]i[__html: clean]pu[__html: clean][__html: clean]i[__html: clean][__html: clean]qu[__html: clean]ri[__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]W[__html: clean]i[__html: clean][__html: clean][__html: clean]is[__html: clean][__html: clean]v[__html: clean][__html: clean]id[__html: clean][__html: clean]io[__html: clean][__html: clean]([__html: clean]o[__html: clean][__html: clean]b[__html: clean][__html: clean][__html: clean]k[__html: clean]is[__html: clean])
-[__html: clean][[__html: clean]][__html: clean]Error[__html: clean][__html: clean][__html: clean]ss[__html: clean]g[__html: clean]s[__html: clean]do[__html: clean]'[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]k[__html: clean]s[__html: clean][__html: clean]si[__html: clean]iv[__html: clean][__html: clean]i[__html: clean]fo
###[__html: clean]3.[__html: clean]SQL[__html: clean]I[__html: clean]j[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]Pr[__html: clean]v[__html: clean][__html: clean][__html: clean]io[__html: clean]
####[__html: clean]FAIL[__html: clean][__html: clean]NEVER[__html: clean]Co[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]SQL
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
//[__html: clean]DANGEROUS[__html: clean]-[__html: clean]SQL[__html: clean]I[__html: clean]j[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]vu[__html: clean][__html: clean][__html: clean]r[__html: clean]bi[__html: clean]i[__html: clean]y
[__html: clean]o[__html: clean]s[__html: clean][__html: clean]qu[__html: clean]ry[__html: clean]=[__html: clean]`SELECT[__html: clean]*[__html: clean]FROM[__html: clean]us[__html: clean]rs[__html: clean]WHERE[__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean]=[__html: clean]'${us[__html: clean]rE[__html: clean][__html: clean]i[__html: clean]}'`
[__html: clean]w[__html: clean]i[__html: clean][__html: clean]db.qu[__html: clean]ry(qu[__html: clean]ry)
```
####[__html: clean]PASS[__html: clean][__html: clean]ALWAYS[__html: clean]Us[__html: clean][__html: clean]P[__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]riz[__html: clean]d[__html: clean]Qu[__html: clean]ri[__html: clean]s
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
//[__html: clean]S[__html: clean]f[__html: clean][__html: clean]-[__html: clean]p[__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]riz[__html: clean]d[__html: clean]qu[__html: clean]ry
[__html: clean]o[__html: clean]s[__html: clean][__html: clean]{[__html: clean]d[__html: clean][__html: clean][__html: clean][__html: clean]}[__html: clean]=[__html: clean][__html: clean]w[__html: clean]i[__html: clean][__html: clean]sup[__html: clean]b[__html: clean]s[__html: clean]
[__html: clean][__html: clean].fro[__html: clean]('us[__html: clean]rs')
[__html: clean][__html: clean].s[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]('*')
[__html: clean][__html: clean].[__html: clean]q('[__html: clean][__html: clean][__html: clean]i[__html: clean]',[__html: clean]us[__html: clean]rE[__html: clean][__html: clean]i[__html: clean])
//[__html: clean]Or[__html: clean]wi[__html: clean][__html: clean][__html: clean]r[__html: clean]w[__html: clean]SQL
[__html: clean]w[__html: clean]i[__html: clean][__html: clean]db.qu[__html: clean]ry(
[__html: clean][__html: clean]'SELECT[__html: clean]*[__html: clean]FROM[__html: clean]us[__html: clean]rs[__html: clean]WHERE[__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean]=[__html: clean]$1',
[__html: clean][__html: clean][us[__html: clean]rE[__html: clean][__html: clean]i[__html: clean]]
)
```
####[__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]S[__html: clean][__html: clean]ps
-[__html: clean][[__html: clean]][__html: clean]A[__html: clean][__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]b[__html: clean]s[__html: clean][__html: clean]qu[__html: clean]ri[__html: clean]s[__html: clean]us[__html: clean][__html: clean]p[__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]riz[__html: clean]d[__html: clean]qu[__html: clean]ri[__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]No[__html: clean]s[__html: clean]ri[__html: clean]g[__html: clean][__html: clean]o[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]i[__html: clean][__html: clean]SQL
-[__html: clean][[__html: clean]][__html: clean]ORM/qu[__html: clean]ry[__html: clean]bui[__html: clean]d[__html: clean]r[__html: clean]us[__html: clean]d[__html: clean][__html: clean]orr[__html: clean][__html: clean][__html: clean][__html: clean]y
-[__html: clean][[__html: clean]][__html: clean]Sup[__html: clean]b[__html: clean]s[__html: clean][__html: clean]qu[__html: clean]ri[__html: clean]s[__html: clean]prop[__html: clean]r[__html: clean]y[__html: clean]s[__html: clean][__html: clean]i[__html: clean]iz[__html: clean]d
###[__html: clean]4.[__html: clean]Au[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]&[__html: clean]Au[__html: clean][__html: clean]oriz[__html: clean][__html: clean]io[__html: clean]
####[__html: clean]JWT[__html: clean]Tok[__html: clean][__html: clean][__html: clean]H[__html: clean][__html: clean]d[__html: clean]i[__html: clean]g
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
//[__html: clean]FAIL[__html: clean][__html: clean]WRONG[__html: clean][__html: clean][__html: clean]o[__html: clean][__html: clean][__html: clean]S[__html: clean]or[__html: clean]g[__html: clean][__html: clean](vu[__html: clean][__html: clean][__html: clean]r[__html: clean]b[__html: clean][__html: clean][__html: clean][__html: clean]o[__html: clean]XSS)
[__html: clean]o[__html: clean][__html: clean][__html: clean]S[__html: clean]or[__html: clean]g[__html: clean].s[__html: clean][__html: clean]I[__html: clean][__html: clean][__html: clean]('[__html: clean]ok[__html: clean][__html: clean]',[__html: clean][__html: clean]ok[__html: clean][__html: clean])
//[__html: clean]PASS[__html: clean][__html: clean]CORRECT[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]pO[__html: clean][__html: clean]y[__html: clean][__html: clean]ooki[__html: clean]s
r[__html: clean]s.s[__html: clean][__html: clean]H[__html: clean][__html: clean]d[__html: clean]r('S[__html: clean][__html: clean]-Cooki[__html: clean]',
[__html: clean][__html: clean]`[__html: clean]ok[__html: clean][__html: clean]=${[__html: clean]ok[__html: clean][__html: clean]};[__html: clean]H[__html: clean][__html: clean]pO[__html: clean][__html: clean]y;[__html: clean]S[__html: clean][__html: clean]ur[__html: clean];[__html: clean]S[__html: clean][__html: clean][__html: clean]Si[__html: clean][__html: clean]=S[__html: clean]ri[__html: clean][__html: clean];[__html: clean]M[__html: clean]x-Ag[__html: clean]=3600`)
```
####[__html: clean]Au[__html: clean][__html: clean]oriz[__html: clean][__html: clean]io[__html: clean][__html: clean]C[__html: clean][__html: clean][__html: clean]ks
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
[__html: clean]xpor[__html: clean][__html: clean][__html: clean]sy[__html: clean][__html: clean][__html: clean]fu[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]Us[__html: clean]r(us[__html: clean]rId[__html: clean][__html: clean]s[__html: clean]ri[__html: clean]g,[__html: clean]r[__html: clean]qu[__html: clean]s[__html: clean][__html: clean]rId[__html: clean][__html: clean]s[__html: clean]ri[__html: clean]g)[__html: clean]{
[__html: clean][__html: clean]//[__html: clean]ALWAYS[__html: clean]v[__html: clean]rify[__html: clean][__html: clean]u[__html: clean][__html: clean]oriz[__html: clean][__html: clean]io[__html: clean][__html: clean]firs[__html: clean]
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean]r[__html: clean]qu[__html: clean]s[__html: clean][__html: clean]r[__html: clean]=[__html: clean][__html: clean]w[__html: clean]i[__html: clean][__html: clean]db.us[__html: clean]rs.fi[__html: clean]dU[__html: clean]iqu[__html: clean]({
[__html: clean][__html: clean][__html: clean][__html: clean]w[__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean]{[__html: clean]id[__html: clean][__html: clean]r[__html: clean]qu[__html: clean]s[__html: clean][__html: clean]rId[__html: clean]}
[__html: clean][__html: clean]})
[__html: clean][__html: clean]if[__html: clean](r[__html: clean]qu[__html: clean]s[__html: clean][__html: clean]r.ro[__html: clean][__html: clean][__html: clean]!==[__html: clean]'[__html: clean]d[__html: clean]i[__html: clean]')[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean]ur[__html: clean][__html: clean]N[__html: clean]x[__html: clean]R[__html: clean]spo[__html: clean]s[__html: clean].jso[__html: clean](
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]{[__html: clean][__html: clean]rror[__html: clean][__html: clean]'U[__html: clean][__html: clean]u[__html: clean][__html: clean]oriz[__html: clean]d'[__html: clean]},
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]{[__html: clean]s[__html: clean][__html: clean][__html: clean]us[__html: clean][__html: clean]403[__html: clean]}
[__html: clean][__html: clean][__html: clean][__html: clean])
[__html: clean][__html: clean]}
[__html: clean][__html: clean]//[__html: clean]Pro[__html: clean][__html: clean][__html: clean]d[__html: clean]wi[__html: clean][__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean][__html: clean]io[__html: clean]
[__html: clean][__html: clean][__html: clean]w[__html: clean]i[__html: clean][__html: clean]db.us[__html: clean]rs.d[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]({[__html: clean]w[__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean]{[__html: clean]id[__html: clean][__html: clean]us[__html: clean]rId[__html: clean]}[__html: clean]})
}
```
####[__html: clean]Row[__html: clean]L[__html: clean]v[__html: clean][__html: clean][__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean](Sup[__html: clean]b[__html: clean]s[__html: clean])
```sq[__html: clean]
--[__html: clean]E[__html: clean][__html: clean]b[__html: clean][__html: clean][__html: clean]RLS[__html: clean]o[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]b[__html: clean][__html: clean]s
ALTER[__html: clean]TABLE[__html: clean]us[__html: clean]rs[__html: clean]ENABLE[__html: clean]ROW[__html: clean]LEVEL[__html: clean]SECURITY;
--[__html: clean]Us[__html: clean]rs[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]o[__html: clean][__html: clean]y[__html: clean]vi[__html: clean]w[__html: clean][__html: clean][__html: clean][__html: clean]ir[__html: clean]ow[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]
CREATE[__html: clean]POLICY[__html: clean]"Us[__html: clean]rs[__html: clean]vi[__html: clean]w[__html: clean]ow[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]"
[__html: clean][__html: clean]ON[__html: clean]us[__html: clean]rs[__html: clean]FOR[__html: clean]SELECT
[__html: clean][__html: clean]USING[__html: clean]([__html: clean]u[__html: clean][__html: clean].uid()[__html: clean]=[__html: clean]id);
--[__html: clean]Us[__html: clean]rs[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]o[__html: clean][__html: clean]y[__html: clean]upd[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ir[__html: clean]ow[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]
CREATE[__html: clean]POLICY[__html: clean]"Us[__html: clean]rs[__html: clean]upd[__html: clean][__html: clean][__html: clean][__html: clean]ow[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]"
[__html: clean][__html: clean]ON[__html: clean]us[__html: clean]rs[__html: clean]FOR[__html: clean]UPDATE
[__html: clean][__html: clean]USING[__html: clean]([__html: clean]u[__html: clean][__html: clean].uid()[__html: clean]=[__html: clean]id);
```
####[__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]S[__html: clean][__html: clean]ps
-[__html: clean][[__html: clean]][__html: clean]Tok[__html: clean][__html: clean]s[__html: clean]s[__html: clean]or[__html: clean]d[__html: clean]i[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]pO[__html: clean][__html: clean]y[__html: clean][__html: clean]ooki[__html: clean]s[__html: clean]([__html: clean]o[__html: clean][__html: clean][__html: clean]o[__html: clean][__html: clean][__html: clean]S[__html: clean]or[__html: clean]g[__html: clean])
-[__html: clean][[__html: clean]][__html: clean]Au[__html: clean][__html: clean]oriz[__html: clean][__html: clean]io[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ks[__html: clean]b[__html: clean]for[__html: clean][__html: clean]s[__html: clean][__html: clean]si[__html: clean]iv[__html: clean][__html: clean]op[__html: clean]r[__html: clean][__html: clean]io[__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]Row[__html: clean]L[__html: clean]v[__html: clean][__html: clean][__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean][__html: clean][__html: clean][__html: clean]b[__html: clean][__html: clean]d[__html: clean]i[__html: clean][__html: clean]Sup[__html: clean]b[__html: clean]s[__html: clean]
-[__html: clean][[__html: clean]][__html: clean]Ro[__html: clean][__html: clean]-b[__html: clean]s[__html: clean]d[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ss[__html: clean][__html: clean]o[__html: clean][__html: clean]ro[__html: clean][__html: clean]i[__html: clean]p[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]S[__html: clean]ssio[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]g[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]s[__html: clean][__html: clean]ur[__html: clean]
###[__html: clean]5.[__html: clean]XSS[__html: clean]Pr[__html: clean]v[__html: clean][__html: clean][__html: clean]io[__html: clean]
####[__html: clean]S[__html: clean][__html: clean]i[__html: clean]iz[__html: clean][__html: clean]HTML
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
i[__html: clean]por[__html: clean][__html: clean]DOMPurify[__html: clean]fro[__html: clean][__html: clean]'iso[__html: clean]orp[__html: clean]i[__html: clean]-do[__html: clean]purify'
//[__html: clean]ALWAYS[__html: clean]s[__html: clean][__html: clean]i[__html: clean]iz[__html: clean][__html: clean]us[__html: clean]r-provid[__html: clean]d[__html: clean]HTML
fu[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]r[__html: clean][__html: clean]d[__html: clean]rUs[__html: clean]rCo[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]([__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]s[__html: clean]ri[__html: clean]g)[__html: clean]{
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]=[__html: clean]DOMPurify.s[__html: clean][__html: clean]i[__html: clean]iz[__html: clean]([__html: clean][__html: clean][__html: clean][__html: clean],[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean]ALLOWED[__html: clean]TAGS[__html: clean][__html: clean]['b',[__html: clean]'i',[__html: clean]'[__html: clean][__html: clean]',[__html: clean]'s[__html: clean]ro[__html: clean]g',[__html: clean]'p'],
[__html: clean][__html: clean][__html: clean][__html: clean]ALLOWED[__html: clean]ATTR[__html: clean][__html: clean][]
[__html: clean][__html: clean]})
[__html: clean][__html: clean]r[__html: clean][__html: clean]ur[__html: clean][__html: clean]<div[__html: clean]d[__html: clean][__html: clean]g[__html: clean]rous[__html: clean]yS[__html: clean][__html: clean]I[__html: clean][__html: clean][__html: clean]rHTML={{[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]}}[__html: clean]/>
}
```
####[__html: clean]Co[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean]Po[__html: clean]i[__html: clean]y
S[__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean]ri[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean][__html: clean]oos[__html: clean][__html: clean][__html: clean]o[__html: clean][__html: clean]y[__html: clean]wi[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]do[__html: clean]u[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean]r[__html: clean][__html: clean]ov[__html: clean][__html: clean][__html: clean]p[__html: clean][__html: clean][__html: clean].[__html: clean]Do[__html: clean][__html: clean]o[__html: clean][__html: clean]d[__html: clean]f[__html: clean]u[__html: clean][__html: clean][__html: clean][__html: clean]o
`'u[__html: clean]s[__html: clean]f[__html: clean]-i[__html: clean][__html: clean]i[__html: clean][__html: clean]'`[__html: clean]or[__html: clean]`'u[__html: clean]s[__html: clean]f[__html: clean]-[__html: clean]v[__html: clean][__html: clean]'`;[__html: clean][__html: clean][__html: clean][__html: clean]y[__html: clean][__html: clean][__html: clean]u[__html: clean]r[__html: clean][__html: clean]iz[__html: clean][__html: clean][__html: clean]u[__html: clean][__html: clean][__html: clean]of[__html: clean]CSP's[__html: clean]pro[__html: clean][__html: clean][__html: clean][__html: clean]io[__html: clean]
[__html: clean][__html: clean]d[__html: clean]s[__html: clean]ou[__html: clean]d[__html: clean]b[__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean][__html: clean]por[__html: clean]ry[__html: clean][__html: clean]o[__html: clean]p[__html: clean][__html: clean]ibi[__html: clean]i[__html: clean]y[__html: clean]d[__html: clean]b[__html: clean].
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
//[__html: clean][__html: clean][__html: clean]x[__html: clean].[__html: clean]o[__html: clean]fig.js
[__html: clean]o[__html: clean]s[__html: clean][__html: clean]s[__html: clean][__html: clean]uri[__html: clean]yH[__html: clean][__html: clean]d[__html: clean]rs[__html: clean]=[__html: clean][
[__html: clean][__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean]k[__html: clean]y[__html: clean][__html: clean]'Co[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]-S[__html: clean][__html: clean]uri[__html: clean]y-Po[__html: clean]i[__html: clean]y',
[__html: clean][__html: clean][__html: clean][__html: clean]v[__html: clean][__html: clean]u[__html: clean][__html: clean][__html: clean]`
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean]f[__html: clean]u[__html: clean][__html: clean]-sr[__html: clean][__html: clean]'s[__html: clean][__html: clean]f';
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]b[__html: clean]s[__html: clean]-uri[__html: clean]'s[__html: clean][__html: clean]f';
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]obj[__html: clean][__html: clean][__html: clean]-sr[__html: clean][__html: clean]'[__html: clean]o[__html: clean][__html: clean]';
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]fr[__html: clean][__html: clean][__html: clean]-[__html: clean][__html: clean][__html: clean][__html: clean]s[__html: clean]ors[__html: clean]'[__html: clean]o[__html: clean][__html: clean]';
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]s[__html: clean]rip[__html: clean]-sr[__html: clean][__html: clean]'s[__html: clean][__html: clean]f';
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]s[__html: clean]y[__html: clean][__html: clean]-sr[__html: clean][__html: clean]'s[__html: clean][__html: clean]f';
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean]g-sr[__html: clean][__html: clean]'s[__html: clean][__html: clean]f'[__html: clean]d[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ps[__html: clean];
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]fo[__html: clean][__html: clean]-sr[__html: clean][__html: clean]'s[__html: clean][__html: clean]f';
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]o[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]-sr[__html: clean][__html: clean]'s[__html: clean][__html: clean]f'[__html: clean][__html: clean][__html: clean][__html: clean]ps[__html: clean]//[__html: clean]pi.[__html: clean]x[__html: clean][__html: clean]p[__html: clean][__html: clean].[__html: clean]o[__html: clean];
[__html: clean][__html: clean][__html: clean][__html: clean]`.r[__html: clean]p[__html: clean][__html: clean][__html: clean][__html: clean](/\s{2,}/g,[__html: clean]'[__html: clean]').[__html: clean]ri[__html: clean]()
[__html: clean][__html: clean]}
]
```
####[__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]S[__html: clean][__html: clean]ps
-[__html: clean][[__html: clean]][__html: clean]Us[__html: clean]r-provid[__html: clean]d[__html: clean]HTML[__html: clean]s[__html: clean][__html: clean]i[__html: clean]iz[__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]CSP[__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean]rs[__html: clean][__html: clean]o[__html: clean]figur[__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]No[__html: clean]u[__html: clean]v[__html: clean][__html: clean]id[__html: clean][__html: clean][__html: clean]d[__html: clean]dy[__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]o[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean]d[__html: clean]ri[__html: clean]g
-[__html: clean][[__html: clean]][__html: clean]R[__html: clean][__html: clean][__html: clean][__html: clean]'s[__html: clean]bui[__html: clean][__html: clean]-i[__html: clean][__html: clean]XSS[__html: clean]pro[__html: clean][__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]us[__html: clean]d
###[__html: clean]6.[__html: clean]CSRF[__html: clean]Pro[__html: clean][__html: clean][__html: clean][__html: clean]io[__html: clean]
####[__html: clean]CSRF[__html: clean]Tok[__html: clean][__html: clean]s
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
i[__html: clean]por[__html: clean][__html: clean]{[__html: clean][__html: clean]srf[__html: clean]}[__html: clean]fro[__html: clean][__html: clean]'@/[__html: clean]ib/[__html: clean]srf'
[__html: clean]xpor[__html: clean][__html: clean][__html: clean]sy[__html: clean][__html: clean][__html: clean]fu[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]POST(r[__html: clean]qu[__html: clean]s[__html: clean][__html: clean][__html: clean]R[__html: clean]qu[__html: clean]s[__html: clean])[__html: clean]{
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean][__html: clean]ok[__html: clean][__html: clean][__html: clean]=[__html: clean]r[__html: clean]qu[__html: clean]s[__html: clean].[__html: clean][__html: clean][__html: clean]d[__html: clean]rs.g[__html: clean][__html: clean]('X-CSRF-Tok[__html: clean][__html: clean]')
[__html: clean][__html: clean]if[__html: clean](![__html: clean]srf.v[__html: clean]rify([__html: clean]ok[__html: clean][__html: clean]))[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean]ur[__html: clean][__html: clean]N[__html: clean]x[__html: clean]R[__html: clean]spo[__html: clean]s[__html: clean].jso[__html: clean](
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]{[__html: clean][__html: clean]rror[__html: clean][__html: clean]'I[__html: clean]v[__html: clean][__html: clean]id[__html: clean]CSRF[__html: clean][__html: clean]ok[__html: clean][__html: clean]'[__html: clean]},
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]{[__html: clean]s[__html: clean][__html: clean][__html: clean]us[__html: clean][__html: clean]403[__html: clean]}
[__html: clean][__html: clean][__html: clean][__html: clean])
[__html: clean][__html: clean]}
[__html: clean][__html: clean]//[__html: clean]Pro[__html: clean][__html: clean]ss[__html: clean]r[__html: clean]qu[__html: clean]s[__html: clean]
}
```
####[__html: clean]S[__html: clean][__html: clean][__html: clean]Si[__html: clean][__html: clean][__html: clean]Cooki[__html: clean]s
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
r[__html: clean]s.s[__html: clean][__html: clean]H[__html: clean][__html: clean]d[__html: clean]r('S[__html: clean][__html: clean]-Cooki[__html: clean]',
[__html: clean][__html: clean]`s[__html: clean]ssio[__html: clean]=${s[__html: clean]ssio[__html: clean]Id};[__html: clean]H[__html: clean][__html: clean]pO[__html: clean][__html: clean]y;[__html: clean]S[__html: clean][__html: clean]ur[__html: clean];[__html: clean]S[__html: clean][__html: clean][__html: clean]Si[__html: clean][__html: clean]=S[__html: clean]ri[__html: clean][__html: clean]`)
```
####[__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]S[__html: clean][__html: clean]ps
-[__html: clean][[__html: clean]][__html: clean]CSRF[__html: clean][__html: clean]ok[__html: clean][__html: clean]s[__html: clean]o[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean][__html: clean]-[__html: clean][__html: clean][__html: clean][__html: clean]gi[__html: clean]g[__html: clean]op[__html: clean]r[__html: clean][__html: clean]io[__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]S[__html: clean][__html: clean][__html: clean]Si[__html: clean][__html: clean]=S[__html: clean]ri[__html: clean][__html: clean][__html: clean]o[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ooki[__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]Doub[__html: clean][__html: clean]-sub[__html: clean]i[__html: clean][__html: clean][__html: clean]ooki[__html: clean][__html: clean]p[__html: clean][__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean]i[__html: clean]p[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]d
###[__html: clean]7.[__html: clean]R[__html: clean][__html: clean][__html: clean][__html: clean]Li[__html: clean]i[__html: clean]i[__html: clean]g
####[__html: clean]API[__html: clean]R[__html: clean][__html: clean][__html: clean][__html: clean]Li[__html: clean]i[__html: clean]i[__html: clean]g
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
i[__html: clean]por[__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean]Li[__html: clean]i[__html: clean][__html: clean]fro[__html: clean][__html: clean]'[__html: clean]xpr[__html: clean]ss-r[__html: clean][__html: clean][__html: clean]-[__html: clean]i[__html: clean]i[__html: clean]'
[__html: clean]o[__html: clean]s[__html: clean][__html: clean][__html: clean]i[__html: clean]i[__html: clean][__html: clean]r[__html: clean]=[__html: clean]r[__html: clean][__html: clean][__html: clean]Li[__html: clean]i[__html: clean]({
[__html: clean][__html: clean]wi[__html: clean]dowMs[__html: clean][__html: clean]15[__html: clean]*[__html: clean]60[__html: clean]*[__html: clean]1000,[__html: clean]//[__html: clean]15[__html: clean][__html: clean]i[__html: clean]u[__html: clean][__html: clean]s
[__html: clean][__html: clean][__html: clean][__html: clean]x[__html: clean][__html: clean]100,[__html: clean]//[__html: clean]100[__html: clean]r[__html: clean]qu[__html: clean]s[__html: clean]s[__html: clean]p[__html: clean]r[__html: clean]wi[__html: clean]dow
[__html: clean][__html: clean][__html: clean][__html: clean]ss[__html: clean]g[__html: clean][__html: clean][__html: clean]'Too[__html: clean][__html: clean][__html: clean][__html: clean]y[__html: clean]r[__html: clean]qu[__html: clean]s[__html: clean]s'
})
//[__html: clean]App[__html: clean]y[__html: clean][__html: clean]o[__html: clean]rou[__html: clean][__html: clean]s
[__html: clean]pp.us[__html: clean]('/[__html: clean]pi/',[__html: clean][__html: clean]i[__html: clean]i[__html: clean][__html: clean]r)
```
####[__html: clean]Exp[__html: clean][__html: clean]siv[__html: clean][__html: clean]Op[__html: clean]r[__html: clean][__html: clean]io[__html: clean]s
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
//[__html: clean]Aggr[__html: clean]ssiv[__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean]i[__html: clean]i[__html: clean]g[__html: clean]for[__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean]s
[__html: clean]o[__html: clean]s[__html: clean][__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean]Li[__html: clean]i[__html: clean][__html: clean]r[__html: clean]=[__html: clean]r[__html: clean][__html: clean][__html: clean]Li[__html: clean]i[__html: clean]({
[__html: clean][__html: clean]wi[__html: clean]dowMs[__html: clean][__html: clean]60[__html: clean]*[__html: clean]1000,[__html: clean]//[__html: clean]1[__html: clean][__html: clean]i[__html: clean]u[__html: clean][__html: clean]
[__html: clean][__html: clean][__html: clean][__html: clean]x[__html: clean][__html: clean]10,[__html: clean]//[__html: clean]10[__html: clean]r[__html: clean]qu[__html: clean]s[__html: clean]s[__html: clean]p[__html: clean]r[__html: clean][__html: clean]i[__html: clean]u[__html: clean][__html: clean]
[__html: clean][__html: clean][__html: clean][__html: clean]ss[__html: clean]g[__html: clean][__html: clean][__html: clean]'Too[__html: clean][__html: clean][__html: clean][__html: clean]y[__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean]r[__html: clean]qu[__html: clean]s[__html: clean]s'
})
[__html: clean]pp.us[__html: clean]('/[__html: clean]pi/s[__html: clean][__html: clean]r[__html: clean][__html: clean]',[__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean]Li[__html: clean]i[__html: clean][__html: clean]r)
```
####[__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]S[__html: clean][__html: clean]ps
-[__html: clean][[__html: clean]][__html: clean]R[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean]i[__html: clean]i[__html: clean]g[__html: clean]o[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]API[__html: clean][__html: clean][__html: clean]dpoi[__html: clean][__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]S[__html: clean]ri[__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean]i[__html: clean]i[__html: clean]s[__html: clean]o[__html: clean][__html: clean][__html: clean]xp[__html: clean][__html: clean]siv[__html: clean][__html: clean]op[__html: clean]r[__html: clean][__html: clean]io[__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]IP-b[__html: clean]s[__html: clean]d[__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean]i[__html: clean]i[__html: clean]g
-[__html: clean][[__html: clean]][__html: clean]Us[__html: clean]r-b[__html: clean]s[__html: clean]d[__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean]i[__html: clean]i[__html: clean]g[__html: clean]([__html: clean]u[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean][__html: clean]d)
###[__html: clean]8.[__html: clean]S[__html: clean][__html: clean]si[__html: clean]iv[__html: clean][__html: clean]D[__html: clean][__html: clean][__html: clean][__html: clean]Exposur[__html: clean]
####[__html: clean]Loggi[__html: clean]g
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
//[__html: clean]FAIL[__html: clean][__html: clean]WRONG[__html: clean][__html: clean]Loggi[__html: clean]g[__html: clean]s[__html: clean][__html: clean]si[__html: clean]iv[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]
[__html: clean]o[__html: clean]so[__html: clean][__html: clean].[__html: clean]og('Us[__html: clean]r[__html: clean][__html: clean]ogi[__html: clean][__html: clean]',[__html: clean]{[__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean],[__html: clean]p[__html: clean]ssword[__html: clean]})
[__html: clean]o[__html: clean]so[__html: clean][__html: clean].[__html: clean]og('P[__html: clean]y[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]',[__html: clean]{[__html: clean][__html: clean][__html: clean]rdNu[__html: clean]b[__html: clean]r,[__html: clean][__html: clean]vv[__html: clean]})
//[__html: clean]PASS[__html: clean][__html: clean]CORRECT[__html: clean][__html: clean]R[__html: clean]d[__html: clean][__html: clean][__html: clean][__html: clean]s[__html: clean][__html: clean]si[__html: clean]iv[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]
[__html: clean]o[__html: clean]so[__html: clean][__html: clean].[__html: clean]og('Us[__html: clean]r[__html: clean][__html: clean]ogi[__html: clean][__html: clean]',[__html: clean]{[__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean],[__html: clean]us[__html: clean]rId[__html: clean]})
[__html: clean]o[__html: clean]so[__html: clean][__html: clean].[__html: clean]og('P[__html: clean]y[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]',[__html: clean]{[__html: clean][__html: clean][__html: clean]s[__html: clean]4[__html: clean][__html: clean][__html: clean][__html: clean]rd.[__html: clean][__html: clean]s[__html: clean]4,[__html: clean]us[__html: clean]rId[__html: clean]})
```
####[__html: clean]Error[__html: clean]M[__html: clean]ss[__html: clean]g[__html: clean]s
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
//[__html: clean]FAIL[__html: clean][__html: clean]WRONG[__html: clean][__html: clean]Exposi[__html: clean]g[__html: clean]i[__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]i[__html: clean]s
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]([__html: clean]rror)[__html: clean]{
[__html: clean][__html: clean]r[__html: clean][__html: clean]ur[__html: clean][__html: clean]N[__html: clean]x[__html: clean]R[__html: clean]spo[__html: clean]s[__html: clean].jso[__html: clean](
[__html: clean][__html: clean][__html: clean][__html: clean]{[__html: clean][__html: clean]rror[__html: clean][__html: clean][__html: clean]rror.[__html: clean][__html: clean]ss[__html: clean]g[__html: clean],[__html: clean]s[__html: clean][__html: clean][__html: clean]k[__html: clean][__html: clean][__html: clean]rror.s[__html: clean][__html: clean][__html: clean]k[__html: clean]},
[__html: clean][__html: clean][__html: clean][__html: clean]{[__html: clean]s[__html: clean][__html: clean][__html: clean]us[__html: clean][__html: clean]500[__html: clean]}
[__html: clean][__html: clean])
}
//[__html: clean]PASS[__html: clean][__html: clean]CORRECT[__html: clean][__html: clean]G[__html: clean][__html: clean][__html: clean]ri[__html: clean][__html: clean][__html: clean]rror[__html: clean][__html: clean][__html: clean]ss[__html: clean]g[__html: clean]s
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]([__html: clean]rror)[__html: clean]{
[__html: clean][__html: clean][__html: clean]o[__html: clean]so[__html: clean][__html: clean].[__html: clean]rror('I[__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]rror[__html: clean]',[__html: clean][__html: clean]rror)
[__html: clean][__html: clean]r[__html: clean][__html: clean]ur[__html: clean][__html: clean]N[__html: clean]x[__html: clean]R[__html: clean]spo[__html: clean]s[__html: clean].jso[__html: clean](
[__html: clean][__html: clean][__html: clean][__html: clean]{[__html: clean][__html: clean]rror[__html: clean][__html: clean]'A[__html: clean][__html: clean][__html: clean]rror[__html: clean]o[__html: clean][__html: clean]urr[__html: clean]d.[__html: clean]P[__html: clean][__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]ry[__html: clean][__html: clean]g[__html: clean]i[__html: clean].'[__html: clean]},
[__html: clean][__html: clean][__html: clean][__html: clean]{[__html: clean]s[__html: clean][__html: clean][__html: clean]us[__html: clean][__html: clean]500[__html: clean]}
[__html: clean][__html: clean])
}
```
####[__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]S[__html: clean][__html: clean]ps
-[__html: clean][[__html: clean]][__html: clean]No[__html: clean]p[__html: clean]sswords,[__html: clean][__html: clean]ok[__html: clean][__html: clean]s,[__html: clean]or[__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean]i[__html: clean][__html: clean][__html: clean]ogs
-[__html: clean][[__html: clean]][__html: clean]Error[__html: clean][__html: clean][__html: clean]ss[__html: clean]g[__html: clean]s[__html: clean]g[__html: clean][__html: clean][__html: clean]ri[__html: clean][__html: clean]for[__html: clean]us[__html: clean]rs
-[__html: clean][[__html: clean]][__html: clean]D[__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean]d[__html: clean][__html: clean]rrors[__html: clean]o[__html: clean][__html: clean]y[__html: clean]i[__html: clean][__html: clean]s[__html: clean]rv[__html: clean]r[__html: clean][__html: clean]ogs
-[__html: clean][[__html: clean]][__html: clean]No[__html: clean]s[__html: clean][__html: clean][__html: clean]k[__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean]s[__html: clean][__html: clean]xpos[__html: clean]d[__html: clean][__html: clean]o[__html: clean]us[__html: clean]rs
###[__html: clean]9.[__html: clean]B[__html: clean]o[__html: clean]k[__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean](So[__html: clean][__html: clean][__html: clean][__html: clean])
####[__html: clean]W[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean]
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
i[__html: clean]por[__html: clean][__html: clean]{[__html: clean]v[__html: clean]rify[__html: clean]}[__html: clean]fro[__html: clean][__html: clean]'@so[__html: clean][__html: clean][__html: clean][__html: clean]/w[__html: clean]b3.js'
[__html: clean]sy[__html: clean][__html: clean][__html: clean]fu[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]v[__html: clean]rifyW[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]Ow[__html: clean][__html: clean]rs[__html: clean]ip(
[__html: clean][__html: clean]pub[__html: clean]i[__html: clean]K[__html: clean]y[__html: clean][__html: clean]s[__html: clean]ri[__html: clean]g,
[__html: clean][__html: clean]sig[__html: clean][__html: clean][__html: clean]ur[__html: clean][__html: clean][__html: clean]s[__html: clean]ri[__html: clean]g,
[__html: clean][__html: clean][__html: clean][__html: clean]ss[__html: clean]g[__html: clean][__html: clean][__html: clean]s[__html: clean]ri[__html: clean]g
)[__html: clean]{
[__html: clean][__html: clean][__html: clean]ry[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean]isV[__html: clean][__html: clean]id[__html: clean]=[__html: clean]v[__html: clean]rify(
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]Buff[__html: clean]r.fro[__html: clean]([__html: clean][__html: clean]ss[__html: clean]g[__html: clean]),
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]Buff[__html: clean]r.fro[__html: clean](sig[__html: clean][__html: clean][__html: clean]ur[__html: clean],[__html: clean]'b[__html: clean]s[__html: clean]64'),
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]Buff[__html: clean]r.fro[__html: clean](pub[__html: clean]i[__html: clean]K[__html: clean]y,[__html: clean]'b[__html: clean]s[__html: clean]64')
[__html: clean][__html: clean][__html: clean][__html: clean])
[__html: clean][__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean]ur[__html: clean][__html: clean]isV[__html: clean][__html: clean]id
[__html: clean][__html: clean]}[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]([__html: clean]rror)[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean]ur[__html: clean][__html: clean]f[__html: clean][__html: clean]s[__html: clean]
[__html: clean][__html: clean]}
}
```
####[__html: clean]Tr[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean]
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
[__html: clean]sy[__html: clean][__html: clean][__html: clean]fu[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]v[__html: clean]rifyTr[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]io[__html: clean]([__html: clean]r[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean][__html: clean]Tr[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]io[__html: clean])[__html: clean]{
[__html: clean][__html: clean]//[__html: clean]V[__html: clean]rify[__html: clean]r[__html: clean][__html: clean]ipi[__html: clean][__html: clean][__html: clean]
[__html: clean][__html: clean]if[__html: clean]([__html: clean]r[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]io[__html: clean].[__html: clean]o[__html: clean]!==[__html: clean][__html: clean]xp[__html: clean][__html: clean][__html: clean][__html: clean]dR[__html: clean][__html: clean]ipi[__html: clean][__html: clean][__html: clean])[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]row[__html: clean][__html: clean][__html: clean]w[__html: clean]Error('I[__html: clean]v[__html: clean][__html: clean]id[__html: clean]r[__html: clean][__html: clean]ipi[__html: clean][__html: clean][__html: clean]')
[__html: clean][__html: clean]}
[__html: clean][__html: clean]//[__html: clean]V[__html: clean]rify[__html: clean][__html: clean][__html: clean]ou[__html: clean][__html: clean]
[__html: clean][__html: clean]if[__html: clean]([__html: clean]r[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]io[__html: clean].[__html: clean][__html: clean]ou[__html: clean][__html: clean][__html: clean]>[__html: clean][__html: clean][__html: clean]xA[__html: clean]ou[__html: clean][__html: clean])[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]row[__html: clean][__html: clean][__html: clean]w[__html: clean]Error('A[__html: clean]ou[__html: clean][__html: clean][__html: clean][__html: clean]x[__html: clean][__html: clean][__html: clean]ds[__html: clean][__html: clean]i[__html: clean]i[__html: clean]')
[__html: clean][__html: clean]}
[__html: clean][__html: clean]//[__html: clean]V[__html: clean]rify[__html: clean]us[__html: clean]r[__html: clean][__html: clean][__html: clean]s[__html: clean]suffi[__html: clean]i[__html: clean][__html: clean][__html: clean][__html: clean]b[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean]b[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]=[__html: clean][__html: clean]w[__html: clean]i[__html: clean][__html: clean]g[__html: clean][__html: clean]B[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]([__html: clean]r[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]io[__html: clean].fro[__html: clean])
[__html: clean][__html: clean]if[__html: clean](b[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]<[__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]io[__html: clean].[__html: clean][__html: clean]ou[__html: clean][__html: clean])[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]row[__html: clean][__html: clean][__html: clean]w[__html: clean]Error('I[__html: clean]suffi[__html: clean]i[__html: clean][__html: clean][__html: clean][__html: clean]b[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]')
[__html: clean][__html: clean]}
[__html: clean][__html: clean]r[__html: clean][__html: clean]ur[__html: clean][__html: clean][__html: clean]ru[__html: clean]
}
```
####[__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]S[__html: clean][__html: clean]ps
-[__html: clean][[__html: clean]][__html: clean]W[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]sig[__html: clean][__html: clean][__html: clean]ur[__html: clean]s[__html: clean]v[__html: clean]rifi[__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]Tr[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]i[__html: clean]s[__html: clean]v[__html: clean][__html: clean]id[__html: clean][__html: clean][__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]B[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ks[__html: clean]b[__html: clean]for[__html: clean][__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]io[__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]No[__html: clean]b[__html: clean]i[__html: clean]d[__html: clean][__html: clean]r[__html: clean][__html: clean]s[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]sig[__html: clean]i[__html: clean]g
###[__html: clean]10.[__html: clean]D[__html: clean]p[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]y[__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y
####[__html: clean]R[__html: clean]gu[__html: clean][__html: clean]r[__html: clean]Upd[__html: clean][__html: clean][__html: clean]s
```b[__html: clean]s[__html: clean]
#[__html: clean]C[__html: clean][__html: clean][__html: clean]k[__html: clean]for[__html: clean]vu[__html: clean][__html: clean][__html: clean]r[__html: clean]bi[__html: clean]i[__html: clean]i[__html: clean]s
[__html: clean]p[__html: clean][__html: clean][__html: clean]udi[__html: clean]
#[__html: clean]Fix[__html: clean][__html: clean]u[__html: clean]o[__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean][__html: clean]y[__html: clean]fix[__html: clean]b[__html: clean][__html: clean][__html: clean]issu[__html: clean]s
[__html: clean]p[__html: clean][__html: clean][__html: clean]udi[__html: clean][__html: clean]fix
#[__html: clean]Upd[__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean]p[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]i[__html: clean]s
[__html: clean]p[__html: clean][__html: clean]upd[__html: clean][__html: clean][__html: clean]
#[__html: clean]C[__html: clean][__html: clean][__html: clean]k[__html: clean]for[__html: clean]ou[__html: clean]d[__html: clean][__html: clean][__html: clean]d[__html: clean]p[__html: clean][__html: clean]k[__html: clean]g[__html: clean]s
[__html: clean]p[__html: clean][__html: clean]ou[__html: clean]d[__html: clean][__html: clean][__html: clean]d
```
####[__html: clean]Lo[__html: clean]k[__html: clean]Fi[__html: clean][__html: clean]s
```b[__html: clean]s[__html: clean]
#[__html: clean]ALWAYS[__html: clean][__html: clean]o[__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]o[__html: clean]k[__html: clean]fi[__html: clean][__html: clean]s
gi[__html: clean][__html: clean][__html: clean]dd[__html: clean]p[__html: clean][__html: clean]k[__html: clean]g[__html: clean]-[__html: clean]o[__html: clean]k.jso[__html: clean]
#[__html: clean]Us[__html: clean][__html: clean]i[__html: clean][__html: clean]CI/CD[__html: clean]for[__html: clean]r[__html: clean]produ[__html: clean]ib[__html: clean][__html: clean][__html: clean]bui[__html: clean]ds
[__html: clean]p[__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean]#[__html: clean]I[__html: clean]s[__html: clean][__html: clean][__html: clean]d[__html: clean]of[__html: clean][__html: clean]p[__html: clean][__html: clean]i[__html: clean]s[__html: clean][__html: clean][__html: clean][__html: clean]
```
####[__html: clean]V[__html: clean]rifi[__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean]S[__html: clean][__html: clean]ps
-[__html: clean][[__html: clean]][__html: clean]D[__html: clean]p[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]i[__html: clean]s[__html: clean]up[__html: clean][__html: clean]o[__html: clean]d[__html: clean][__html: clean][__html: clean]
-[__html: clean][[__html: clean]][__html: clean]No[__html: clean]k[__html: clean]ow[__html: clean][__html: clean]vu[__html: clean][__html: clean][__html: clean]r[__html: clean]bi[__html: clean]i[__html: clean]i[__html: clean]s[__html: clean]([__html: clean]p[__html: clean][__html: clean][__html: clean]udi[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean])
-[__html: clean][[__html: clean]][__html: clean]Lo[__html: clean]k[__html: clean]fi[__html: clean][__html: clean]s[__html: clean][__html: clean]o[__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]D[__html: clean]p[__html: clean][__html: clean]d[__html: clean]bo[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]b[__html: clean][__html: clean]d[__html: clean]o[__html: clean][__html: clean]Gi[__html: clean]Hub
-[__html: clean][[__html: clean]][__html: clean]R[__html: clean]gu[__html: clean][__html: clean]r[__html: clean]s[__html: clean][__html: clean]uri[__html: clean]y[__html: clean]upd[__html: clean][__html: clean][__html: clean]s
##[__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean]T[__html: clean]s[__html: clean]i[__html: clean]g
###[__html: clean]Au[__html: clean]o[__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean]T[__html: clean]s[__html: clean]s
```[__html: clean]yp[__html: clean]s[__html: clean]rip[__html: clean]
//[__html: clean]T[__html: clean]s[__html: clean][__html: clean][__html: clean]u[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]io[__html: clean]
[__html: clean][__html: clean]s[__html: clean]('r[__html: clean]quir[__html: clean]s[__html: clean][__html: clean]u[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]io[__html: clean]',[__html: clean][__html: clean]sy[__html: clean][__html: clean][__html: clean]()[__html: clean]=>[__html: clean]{
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean]r[__html: clean]spo[__html: clean]s[__html: clean][__html: clean]=[__html: clean][__html: clean]w[__html: clean]i[__html: clean][__html: clean]f[__html: clean][__html: clean][__html: clean][__html: clean]('/[__html: clean]pi/pro[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]d')
[__html: clean][__html: clean][__html: clean]xp[__html: clean][__html: clean][__html: clean](r[__html: clean]spo[__html: clean]s[__html: clean].s[__html: clean][__html: clean][__html: clean]us).[__html: clean]oB[__html: clean](401)
})
//[__html: clean]T[__html: clean]s[__html: clean][__html: clean][__html: clean]u[__html: clean][__html: clean]oriz[__html: clean][__html: clean]io[__html: clean]
[__html: clean][__html: clean]s[__html: clean]('r[__html: clean]quir[__html: clean]s[__html: clean][__html: clean]d[__html: clean]i[__html: clean][__html: clean]ro[__html: clean][__html: clean]',[__html: clean][__html: clean]sy[__html: clean][__html: clean][__html: clean]()[__html: clean]=>[__html: clean]{
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean]r[__html: clean]spo[__html: clean]s[__html: clean][__html: clean]=[__html: clean][__html: clean]w[__html: clean]i[__html: clean][__html: clean]f[__html: clean][__html: clean][__html: clean][__html: clean]('/[__html: clean]pi/[__html: clean]d[__html: clean]i[__html: clean]',[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean]rs[__html: clean][__html: clean]{[__html: clean]Au[__html: clean][__html: clean]oriz[__html: clean][__html: clean]io[__html: clean][__html: clean][__html: clean]`B[__html: clean][__html: clean]r[__html: clean]r[__html: clean]${us[__html: clean]rTok[__html: clean][__html: clean]}`[__html: clean]}
[__html: clean][__html: clean]})
[__html: clean][__html: clean][__html: clean]xp[__html: clean][__html: clean][__html: clean](r[__html: clean]spo[__html: clean]s[__html: clean].s[__html: clean][__html: clean][__html: clean]us).[__html: clean]oB[__html: clean](403)
})
//[__html: clean]T[__html: clean]s[__html: clean][__html: clean]i[__html: clean]pu[__html: clean][__html: clean]v[__html: clean][__html: clean]id[__html: clean][__html: clean]io[__html: clean]
[__html: clean][__html: clean]s[__html: clean]('r[__html: clean]j[__html: clean][__html: clean][__html: clean]s[__html: clean]i[__html: clean]v[__html: clean][__html: clean]id[__html: clean]i[__html: clean]pu[__html: clean]',[__html: clean][__html: clean]sy[__html: clean][__html: clean][__html: clean]()[__html: clean]=>[__html: clean]{
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean]r[__html: clean]spo[__html: clean]s[__html: clean][__html: clean]=[__html: clean][__html: clean]w[__html: clean]i[__html: clean][__html: clean]f[__html: clean][__html: clean][__html: clean][__html: clean]('/[__html: clean]pi/us[__html: clean]rs',[__html: clean]{
[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]od[__html: clean][__html: clean]'POST',
[__html: clean][__html: clean][__html: clean][__html: clean]body[__html: clean][__html: clean]JSON.s[__html: clean]ri[__html: clean]gify({[__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]'[__html: clean]o[__html: clean]-[__html: clean][__html: clean]-[__html: clean][__html: clean][__html: clean]i[__html: clean]'[__html: clean]})
[__html: clean][__html: clean]})
[__html: clean][__html: clean][__html: clean]xp[__html: clean][__html: clean][__html: clean](r[__html: clean]spo[__html: clean]s[__html: clean].s[__html: clean][__html: clean][__html: clean]us).[__html: clean]oB[__html: clean](400)
})
//[__html: clean]T[__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean]i[__html: clean]i[__html: clean]g
[__html: clean][__html: clean]s[__html: clean]('[__html: clean][__html: clean]for[__html: clean][__html: clean]s[__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean]i[__html: clean]s',[__html: clean][__html: clean]sy[__html: clean][__html: clean][__html: clean]()[__html: clean]=>[__html: clean]{
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean]r[__html: clean]qu[__html: clean]s[__html: clean]s[__html: clean]=[__html: clean]Arr[__html: clean]y(101).fi[__html: clean][__html: clean]([__html: clean]u[__html: clean][__html: clean]).[__html: clean][__html: clean]p(()[__html: clean]=>
[__html: clean][__html: clean][__html: clean][__html: clean]f[__html: clean][__html: clean][__html: clean][__html: clean]('/[__html: clean]pi/[__html: clean][__html: clean]dpoi[__html: clean][__html: clean]')
[__html: clean][__html: clean])
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean]r[__html: clean]spo[__html: clean]s[__html: clean]s[__html: clean]=[__html: clean][__html: clean]w[__html: clean]i[__html: clean][__html: clean]Pro[__html: clean]is[__html: clean].[__html: clean][__html: clean][__html: clean](r[__html: clean]qu[__html: clean]s[__html: clean]s)
[__html: clean][__html: clean][__html: clean]o[__html: clean]s[__html: clean][__html: clean][__html: clean]ooM[__html: clean][__html: clean]yR[__html: clean]qu[__html: clean]s[__html: clean]s[__html: clean]=[__html: clean]r[__html: clean]spo[__html: clean]s[__html: clean]s.fi[__html: clean][__html: clean][__html: clean]r(r[__html: clean]=>[__html: clean]r.s[__html: clean][__html: clean][__html: clean]us[__html: clean]===[__html: clean]429)
[__html: clean][__html: clean][__html: clean]xp[__html: clean][__html: clean][__html: clean]([__html: clean]ooM[__html: clean][__html: clean]yR[__html: clean]qu[__html: clean]s[__html: clean]s.[__html: clean][__html: clean][__html: clean]g[__html: clean][__html: clean]).[__html: clean]oB[__html: clean]Gr[__html: clean][__html: clean][__html: clean][__html: clean]rT[__html: clean][__html: clean][__html: clean](0)
})
```
##[__html: clean]Pr[__html: clean]-D[__html: clean]p[__html: clean]oy[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean]C[__html: clean][__html: clean][__html: clean]k[__html: clean]is[__html: clean]
B[__html: clean]for[__html: clean][__html: clean]ANY[__html: clean]produ[__html: clean][__html: clean]io[__html: clean][__html: clean]d[__html: clean]p[__html: clean]oy[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]
-[__html: clean][[__html: clean]][__html: clean]**S[__html: clean][__html: clean]r[__html: clean][__html: clean]s**[__html: clean][__html: clean]No[__html: clean][__html: clean][__html: clean]rd[__html: clean]od[__html: clean]d[__html: clean]s[__html: clean][__html: clean]r[__html: clean][__html: clean]s,[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean][__html: clean]v[__html: clean]v[__html: clean]rs
-[__html: clean][[__html: clean]][__html: clean]**I[__html: clean]pu[__html: clean][__html: clean]V[__html: clean][__html: clean]id[__html: clean][__html: clean]io[__html: clean]**[__html: clean][__html: clean]A[__html: clean][__html: clean][__html: clean]us[__html: clean]r[__html: clean]i[__html: clean]pu[__html: clean]s[__html: clean]v[__html: clean][__html: clean]id[__html: clean][__html: clean][__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]**SQL[__html: clean]I[__html: clean]j[__html: clean][__html: clean][__html: clean]io[__html: clean]**[__html: clean][__html: clean]A[__html: clean][__html: clean][__html: clean]qu[__html: clean]ri[__html: clean]s[__html: clean]p[__html: clean]r[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]riz[__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]**XSS**[__html: clean][__html: clean]Us[__html: clean]r[__html: clean][__html: clean]o[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]s[__html: clean][__html: clean]i[__html: clean]iz[__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]**CSRF**[__html: clean][__html: clean]Pro[__html: clean][__html: clean][__html: clean][__html: clean]io[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]b[__html: clean][__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]**Au[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]io[__html: clean]**[__html: clean][__html: clean]Prop[__html: clean]r[__html: clean][__html: clean]ok[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]d[__html: clean]i[__html: clean]g
-[__html: clean][[__html: clean]][__html: clean]**Au[__html: clean][__html: clean]oriz[__html: clean][__html: clean]io[__html: clean]**[__html: clean][__html: clean]Ro[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ks[__html: clean]i[__html: clean][__html: clean]p[__html: clean][__html: clean][__html: clean][__html: clean]
-[__html: clean][[__html: clean]][__html: clean]**R[__html: clean][__html: clean][__html: clean][__html: clean]Li[__html: clean]i[__html: clean]i[__html: clean]g**[__html: clean][__html: clean]E[__html: clean][__html: clean]b[__html: clean][__html: clean]d[__html: clean]o[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]dpoi[__html: clean][__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]**HTTPS**[__html: clean][__html: clean]E[__html: clean]for[__html: clean][__html: clean]d[__html: clean]i[__html: clean][__html: clean]produ[__html: clean][__html: clean]io[__html: clean]
-[__html: clean][[__html: clean]][__html: clean]**S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean]H[__html: clean][__html: clean]d[__html: clean]rs**[__html: clean][__html: clean]CSP,[__html: clean]X-Fr[__html: clean][__html: clean][__html: clean]-Op[__html: clean]io[__html: clean]s[__html: clean][__html: clean]o[__html: clean]figur[__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]**Error[__html: clean]H[__html: clean][__html: clean]d[__html: clean]i[__html: clean]g**[__html: clean][__html: clean]No[__html: clean]s[__html: clean][__html: clean]si[__html: clean]iv[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean][__html: clean]rrors
-[__html: clean][[__html: clean]][__html: clean]**Loggi[__html: clean]g**[__html: clean][__html: clean]No[__html: clean]s[__html: clean][__html: clean]si[__html: clean]iv[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ogg[__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]**D[__html: clean]p[__html: clean][__html: clean]d[__html: clean][__html: clean][__html: clean]i[__html: clean]s**[__html: clean][__html: clean]Up[__html: clean][__html: clean]o[__html: clean]d[__html: clean][__html: clean][__html: clean],[__html: clean][__html: clean]o[__html: clean]vu[__html: clean][__html: clean][__html: clean]r[__html: clean]bi[__html: clean]i[__html: clean]i[__html: clean]s
-[__html: clean][[__html: clean]][__html: clean]**Row[__html: clean]L[__html: clean]v[__html: clean][__html: clean][__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y**[__html: clean][__html: clean]E[__html: clean][__html: clean]b[__html: clean][__html: clean]d[__html: clean]i[__html: clean][__html: clean]Sup[__html: clean]b[__html: clean]s[__html: clean]
-[__html: clean][[__html: clean]][__html: clean]**CORS**[__html: clean][__html: clean]Prop[__html: clean]r[__html: clean]y[__html: clean][__html: clean]o[__html: clean]figur[__html: clean]d
-[__html: clean][[__html: clean]][__html: clean]**Fi[__html: clean][__html: clean][__html: clean]Up[__html: clean]o[__html: clean]ds**[__html: clean][__html: clean]V[__html: clean][__html: clean]id[__html: clean][__html: clean][__html: clean]d[__html: clean](siz[__html: clean],[__html: clean][__html: clean]yp[__html: clean])
-[__html: clean][[__html: clean]][__html: clean]**W[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]Sig[__html: clean][__html: clean][__html: clean]ur[__html: clean]s**[__html: clean][__html: clean]V[__html: clean]rifi[__html: clean]d[__html: clean](if[__html: clean]b[__html: clean]o[__html: clean]k[__html: clean][__html: clean][__html: clean]i[__html: clean])
##[__html: clean]R[__html: clean]sour[__html: clean][__html: clean]s
-[__html: clean][OWASP[__html: clean]Top[__html: clean]10]([__html: clean][__html: clean][__html: clean]ps[__html: clean]//ow[__html: clean]sp.org/www-proj[__html: clean][__html: clean][__html: clean]-[__html: clean]op-[__html: clean][__html: clean][__html: clean]/)
-[__html: clean][N[__html: clean]x[__html: clean].js[__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y]([__html: clean][__html: clean][__html: clean]ps[__html: clean]//[__html: clean][__html: clean]x[__html: clean]js.org/do[__html: clean]s/s[__html: clean][__html: clean]uri[__html: clean]y)
-[__html: clean][Sup[__html: clean]b[__html: clean]s[__html: clean][__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y]([__html: clean][__html: clean][__html: clean]ps[__html: clean]//sup[__html: clean]b[__html: clean]s[__html: clean].[__html: clean]o[__html: clean]/do[__html: clean]s/guid[__html: clean]s/[__html: clean]u[__html: clean][__html: clean])
-[__html: clean][W[__html: clean]b[__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean]A[__html: clean][__html: clean]d[__html: clean][__html: clean]y]([__html: clean][__html: clean][__html: clean]ps[__html: clean]//por[__html: clean]swigg[__html: clean]r.[__html: clean][__html: clean][__html: clean]/w[__html: clean]b-s[__html: clean][__html: clean]uri[__html: clean]y)
---
**R[__html: clean][__html: clean][__html: clean][__html: clean]b[__html: clean]r**[__html: clean][__html: clean]S[__html: clean][__html: clean]uri[__html: clean]y[__html: clean]is[__html: clean][__html: clean]o[__html: clean][__html: clean]op[__html: clean]io[__html: clean][__html: clean][__html: clean].[__html: clean]O[__html: clean][__html: clean][__html: clean]vu[__html: clean][__html: clean][__html: clean]r[__html: clean]bi[__html: clean]i[__html: clean]y[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]o[__html: clean]pro[__html: clean]is[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]ir[__html: clean][__html: clean]p[__html: clean][__html: clean][__html: clean]for[__html: clean].[__html: clean]W[__html: clean][__html: clean][__html: clean][__html: clean]i[__html: clean][__html: clean]doub[__html: clean],[__html: clean][__html: clean]rr[__html: clean]o[__html: clean][__html: clean][__html: clean][__html: clean][__html: clean][__html: clean]sid[__html: clean][__html: clean]of[__html: clean][__html: clean][__html: clean]u[__html: clean]io[__html: clean].
Skill content
Main instructions and any bundled files for this skill.
Related Skills
Frontend Typescript Linting.mdc
TypeScript and ESLint rules that MUST be followed when creating, modifying, or reviewing any file under apps/frontend/, including .ts, .tsx, .js, and .jsx files. Also apply when discussing frontend li...
2. Apply Deepthink Protocol (reason about dependencies
risks