1+
2+
3+ <!DOCTYPE html>
4+
5+ < html lang =en >
6+
7+ < head >
8+ < meta charset =utf-8 >
9+
10+ < title >
11+ Bypassing Content-Security-Policy for Websites
12+ </ title >
13+
14+ < meta name =description content ='Discover how to overcome the content-security-policy for a website. '>
15+
16+ < base href ='https://ext-code.com/blog/25-12-03/bypass-csp/ '>
17+ < link rel =canonical href ='https://ext-code.com/blog/25-12-04/bypass-csp/bypass-csp.html '>
18+
19+ < link rel =icon type ='image/png ' href ='data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAABLFBMVEVHcEwopnMfpm8epm4epm4hpm81pHgfpm8ipnAhpm8ipnAfpm8gpm8jpnAsquAqpXQhpnAjpnEspXQhpnDr3Mgtqt8epm8fpm8kpnEgpm8rpXPr6OkqquAqquEjpnF/xagnqHTr6OlUtY7m5ubm5ub/9//m5uYbpWyXzLZ1s4UPnmRbqrkdpm7m5ubp5+gbpm0bpWwsq3fC29GXzbaMyrEwrOFHtIYnquHb4+Cz1uUkp3LT4ebi5ejwhhL3jhj7mSO72eXkhB12w+T4pDd8xafF3NKfijLWsrDc3diHlIzyr07et4jq07fqmkfhqFfyv3dauuJnveE2rn1AnFltkULIx8dQomPMfxXvjbNuo4xylYXu0KZqr7fOwrFaueL9yoTI1MatqHQwqtqDrqPS97zrAAAALHRSTlMAHtX5958F0l+Pfe2lXa4QgGAPjf6b8fBbzw9Y0L1h6t3NR9HhDPzLh/QusFA6UqkAAAGESURBVCjPdZNnW8IwEIDTtKVQKHsj7u21RUVREBFQ2SjuPf//fzBt0gFPfT+0z9M3vVwudwhZcLEQzvB8Bof8HJqFi2IeGLwkTy/w+TFMgRWfYyMBAfSShW54IZG3bFwEqJ6XLRYWzQBinEUOAOi7F5rF0rJErA4JGl8RDL2nqYyVte2Nau+lKmTNnI2s3Hq1UNjc6jz1ABv5yzCj1XU12R93nnWQyc+SrdneZMFVo35ZBZA4pPCWrh1Tatpr+/Tx1qhPFonAtNo6oLSS/Ubzjh4OSZY+ua5QJkbokvk5h4IuPZcqhsPF3/Zp88EsHQQRb+sPosOp8M64UR8c0r8FR9O9Kz/fjfqoa2s7uFY7I0zeSOjhEdNBJzV67trX52igWTrnHIxV7X2YVG0tuspC9X2XPJgmZXEV1cR8MU2K6nEltpadC3XagUC1eaHIT9qBNNO+i/INqZqg2M3kBWsmFBG9rJh3GpmflUIi7hqD2OwY+H3/DxGOekzZfAinAdI4FHPkH67FfQ17kRvyAAAAAElFTkSuQmCC '>
20+ < meta name =viewport content ='width=device-width, initial-scale=1 '>
21+
22+ < script type ='application/ld+json '>
23+ {
24+ "@context" : "https://schema.org" ,
25+ "@type" : "TechArticle" ,
26+ "headline" : "Bypassing Content-Security-Policy for Websites" ,
27+ "description" : "Discover how to overcome the content-security-policy for a website." ,
28+ "author" : { "@type" :"Person" , "name" :"Matthew Richards" } ,
29+ "datePublished" : "2025-11-15" ,
30+ "dateModified" : "2025-11-15" ,
31+ "mainEntityOfPage" : { "@type" :"WebPage" , "@id" :"https://ext-code.com/blog/25-12-04/bypass-csp/bypass-csp.html" } ,
32+ "publisher" : { "@type" :"Organization" , "name" :"ext-code.com" , "logo" :{ "@type" :"ImageObject" , "url" :"https://ext-code.com/favicon.ico" } } ,
33+ }
34+ </ script >
35+
36+ < script src ='https://ajaxorg.github.io/ace-builds/src-noconflict/ace.js '> </ script >
37+
38+
39+ < script src ='https://libs.ext-code.com/js/dom/component/component.js '> </ script >
40+
41+ < script init >
42+ console . clear ( ) ;
43+ console . log ( 'bypass-csp.html' ) ;
44+ console . log ( ) ;
45+ console . json = v => console . log ( JSON . stringify ( v , null , 4 ) ) ;
46+ var df = true , version = 'v2.0'
47+ ;
48+
49+ var ace ;
50+
51+ var ext ;
52+ var $ ;
53+ var datatype ;
54+ var menumod ;
55+ var keydown ;
56+ var debug ;
57+
58+ var menu ;
59+
60+ var hdr ;
61+ var log ;
62+ var ex = { } ;
63+
64+
65+ //:
66+
67+
68+ async function init ( ) {
69+
70+ menu = menumod ( ) ;
71+
72+ hdr = mod [ 'blog-hdr' ] ;
73+ log = mod [ 'log-mod' ] ;
74+
75+ hdr . initmod ( { ext, $} ) ;
76+ log . initmod ( { ext, $} ) ;
77+
78+
79+
80+
81+ await Promise . all ( [
82+ hdr . init ( ) ,
83+ log . init ( ) ,
84+
85+ ] ) ;
86+
87+
88+ initdom ( document . body ) ;
89+
90+
91+ } //init
92+
93+
94+ ( async ( ) => {
95+
96+ mod . stack . add ;
97+
98+ ( { ext} = await import ( 'https://libs.ext-code.com/js/io/ext-loader/ext-loader.m.js' ) ) ;
99+
100+ var promise = ext . load . libs (
101+ 'js/dom/$.js' ,
102+ 'js/core/datatype.js' ,
103+ 'js/dom/menumod/menumod.js' ,
104+ 'js/dom/keydown/keydown.js' ,
105+ 'js/debug/debug.js' ,
106+ ) ;
107+
108+ [ $ , datatype , menumod , keydown , debug ] = await promise ;
109+
110+ mod . stack . complete ;
111+
112+ } ) ( ) ;
113+
114+ </ script init>
115+
116+
117+ < link rel =stylesheet href ='https://fonts.googleapis.com/css2?family=Pacifico&display=swap '>
118+ < link rel =stylesheet href ='/blog/css/blog.css '>
119+
120+ < style >
121+
122+
123+
124+ html
125+ {height : 100% ;font-family : arial}
126+ body
127+ {min-height : calc (100% - 40px );display : flex;flex-direction : column;gap : 20px ;margin : 20px ;align-items : center;
128+ padding-bottom : 200px ;
129+ }
130+ body > *
131+ {max-width : 1400px ;width : 100% }
132+
133+ [component ]
134+ {display : none}
135+
136+ .description
137+ {max-width : 1000px ;text-align : justify;border-left : 4px solid # 4a90e2 ;padding : 1rem 2rem ;
138+ background-color : # f9f9f9 ;font-family : system-ui, sans-serif;font-size : 1rem ;line-height : 1.6 ;color : # 333 }
139+ .description > p
140+ {margin : 0 }
141+ .description > p + p
142+ {margin : 10px 0 }
143+
144+
145+ .blog-hdr
146+ {color : blue}
147+
148+ .blog-text
149+ {margin : 1.5rem auto;padding : 1.25rem 1.75rem ;background-color : # fcfcfc ;/*#f9f9f9*/ font-family : system-ui, sans-serif;font-size : 1rem ;line-height : 2 ;
150+ color : # 333 ;text-align : justify;border-radius : 4px }
151+ .blog-text h2 , .blog-text h3
152+ {margin-top : 1.5rem ;margin-bottom : 0.75rem ;font-weight : 600 ;color : # 222 ;}
153+ .blog-text p
154+ {margin : 0 0 1rem 0 ;}
155+
156+
157+
158+
159+
160+
161+
162+
163+ code
164+ {font-family : monospace;background : whitesmoke}
165+ code .inline
166+ {display : inline;padding : 5px 10px }
167+
168+
169+
170+ a
171+ {color : # 4a90e2 ;text-decoration : none;font-weight : 500 }
172+ a : hover
173+ {text-decoration : underline}
174+ .link-domain
175+ {font-size : 0.85rem ;color : # 777 ;margin-left : 0.25rem }
176+ .link-domain ::before
177+ {content : '[' }
178+ .link-domain ::after
179+ {content : ']' }
180+ .link-txt
181+ {}
182+
183+ input
184+ {font-size : 16px ;padding : 5px 7px ;box-sizing : border-box;}
185+ input [type = button ]
186+ {cursor : pointer}
187+
188+
189+ snippet-editor , web-editor
190+ {margin : 30px 0 ;display : block}
191+
192+
193+ .icon
194+ {border : 1px solid gray;border-radius : 3px ;box-sizing : border-box;width : 30px ;height : 30px ;cursor : pointer}
195+
196+ blog-hdr h1
197+ {font-family : pacifico}
198+
199+ </ style >
200+
201+ </ head >
202+
203+
204+ < body >
205+
206+
207+ < blog-hdr component =grp1 >
208+ < h1 class =title style ='position:absolute;left:0;right:0;margin:auto;top:-10px '>
209+ Bypassing Content-Security-Policy for Websites
210+ </ h1 >
211+ < time slot =date datetime =2025-12-03 >
212+ 04 Dec 2025
213+ </ time >
214+ </ blog-hdr >
215+
216+
217+ < div class =description >
218+ < p >
219+ Discover how to overcome the content-security-policy for a website.
220+ </ p >
221+ </ div >
222+
223+
224+ < h3 class =blog-hdr >
225+ ipc socket servers
226+ </ h3 >
227+
228+
229+
230+
231+
232+ < log-mod component > </ log-mod >
233+
234+ </ body >
235+
236+
237+ < script >
238+
239+
240+ function initdom ( ) {
241+
242+ hdr . initdom ( ) ;
243+ log . initdom ( ) ;
244+
245+
246+ } //initdom
247+
248+
249+
250+ </ script >
251+
252+ </ html >
253+
254+
255+
256+
0 commit comments