Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Escape From New York
Search
Tom J Nowell
November 01, 2015
Technology
830
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Escape From New York
A talk on escaping and security in WordPress and PHP
Tom J Nowell
November 01, 2015
More Decks by Tom J Nowell
See All by Tom J Nowell
Using Blocks Outside The Editor
tarendai
0
1.2k
Composer_and_WordPress__1_.pdf
tarendai
0
98
REST APIs for Absolute Beginners
tarendai
0
1k
VVV 2
tarendai
0
910
WordCamp Europe 2016 - Handling Anxiety
tarendai
1
600
WP The Right Way
tarendai
0
1.1k
Code Deodorant 2014
tarendai
1
840
Adv WP CLI
tarendai
0
790
WP CLI
tarendai
0
760
Other Decks in Technology
See All in Technology
Jetpack Compose で挑む新聞紙面UI ─ 複合ジェスチャー・ポリゴン記事領域・適応的ページ構成という3つの壁/droidkaigi2026
nikkei_engineer_recruiting
0
240
enechainの内製セルフサービスプラットフォーム
hiyosi
0
140
Deploying a Full-Stack Bun-Native Framework on Cloudflare Workers
7nohe
0
110
コスト最適化の「めんどくさい」を AWS FinOps Agent でチョット楽にする
classmethod_kaz
0
280
Azure Cost Management の FOCUS コストデータを迷わず読むための“3つの軸”
tetsuyaooooo
0
160
全員がプロダクトへ向き合う組織を持続成長させるために——組織づくりのフライホイールと4象限 / The Flywheel Model and Four Quadrants for Organizational Design
hiro_torii
4
910
ブラウザアプリの継続的パフォーマンスモニタリング (序) / Continuous Browser Application Performance Monitoring; Act 1
moznion
0
110
KPIだけでは評価できないプロダクトが考えるべき Evalsという第二の評価系 / Beyond KPIs: Evals as a Second Evaluation Framework for Products #PdEConf
aki_iinuma
4
3.8k
Snowflakeのコスト最適化を支えるアーキテクチャ設計
ktatsuya
0
840
AI時代におけるプロダクト横断勉強会の設計
zozotech
PRO
0
170
Multica × 長期記憶:40個のミニプロジェクト管理
eiei114
1
210
作品が生態系になった ─ Mini Tokyo 3D から世界へ
nagix
0
120
Featured
See All Featured
WCS-LA-2024
lcolladotor
0
820
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
520
Building AI with AI
inesmontani
PRO
1
1.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.6k
GitHub's CSS Performance
jonrohan
1033
470k
Exploring anti-patterns in Rails
aemeredith
3
500
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
660
Side Projects
sachag
455
43k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
480
Abbi's Birthday
coloredviolet
3
9.8k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.8k
Transcript
Escape From New York Tom J Nowell
Validation Sanitisation Escaping
Validation: Is this what it claims to be?
Sanitisation: Lets clean up this input
Escaping: Making output safe
WordPress.com VIP VIP Wrangler - @tarendai
'; DROP TABLE votes'
Search Results For: <?php echo $_GET[‘s’]; ?>
Search Results For: <?php echo $_GET [‘s’]; ?>
<b>Test</b>
<b>Test</b>
<script>alert(“hey”);</script>
Search Results For: <?php echo esc_html( $_GET[‘s’] ); ?>
Search Results For: <?php echo esc_html( $_GET[‘s’] ); ?>
How to Escape
Sanitize early Escape Late Escape Often
No Data is Safe
<script src='//peniscorp.com/topkek.js'> </script>
Escape Everything..?
echo $var; echo esc_html( $var );
class=”<?php echo $css; ?>” class=”<?php echo esc_attr( $css ); ?>”
href=”<?php echo $url; ?>” href=”<?php echo esc_url( $url ); ?>”
wp_kses & wp_kses_post
echo apply_filters( ‘the_content’ wp_kses_post( $content ) );
tomjn.com/escaping
WordPress.com VIP VIP Wrangler - @tarendai
automattic.com/work-with-us/vip-wrangler/
Questions? Tom J Nowell - WordPress.com VIP @tarendai - tomjn.com