Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
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
920
WordCamp Europe 2016 - Handling Anxiety
tarendai
1
610
WP The Right Way
tarendai
0
1.2k
Code Deodorant 2014
tarendai
1
840
Adv WP CLI
tarendai
0
800
WP CLI
tarendai
0
770
Other Decks in Technology
See All in Technology
【データ横丁主催】AI Agentがコンテキストを使って仕事をした後、何が残るのか― 組織の経験を次の判断に引き継ぐ「Agent Memory」
shisyu_gaku
2
330
カンファレンスに参加した後の浮遊感とセルフケア
pauli
0
310
生成AIで高い生産性を求められて、 悩み、乗り越えた話
mot_techtalk
2
130
自律型 AI をセキュアに実装!Gemini と MIG で作る動的コード実行環境
recruitengineers
PRO
1
220
LLM機能を自作して分かるSnowflake Cortex AIの強み
nayuts
0
310
メルペイ 会計システム概要と歴史
mewuto
0
190
Google Cloud Next Tokyo 26登壇時のスクリプト
recruitengineers
PRO
0
200
FactoryBotアンチパターン / factory_bot anti-patterns
toshimaru
0
140
いちAWSエンジニアのAI活用を振り返る #devio2026 / devio osaka 2026 kawahara
masahirokawahara
2
390
AI時代だからこそ推したい!Gitコマンド再入門
munakata
0
150
あなたの知らないAmazon VPC Route Server/Amazon VPC Route Server you don't know about
masakiokuda
2
230
1万名の社員が使う認証基盤で どう信頼性を担保するか?
kairim0
0
210
Featured
See All Featured
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
610
Joys of Absence: A Defence of Solitary Play
codingconduct
1
530
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Building an army of robots
kneath
307
47k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
2
320
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
5.1k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
700
ラッコキーワード サービス紹介資料
rakko
1
5.2M
Six Lessons from altMBA
skipperchong
29
4.5k
Building the Perfect Custom Keyboard
takai
2
890
Everyday Curiosity
cassininazir
0
350
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
540
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