Submit Search
Upload
Gennady kovshenin-wcrus2015-2
•
0 likes
•
1,056 views
Gennady Kovshenin
Follow
WordCamp Russia presentation (search for video on wordcamp.tv)
Read less
Read more
Technology
Report
Share
Report
Share
1 of 113
Download now
Download to read offline
Recommended
"VUE.JS как реакт с человеческим лицом" Дулецкий Вольдэмар, Evrone
"VUE.JS как реакт с человеческим лицом" Дулецкий Вольдэмар, Evrone
it-people
176023
176023
whitepawn2012
"Жизнь без интернета" Кувалдин Артём, Яндекс
"Жизнь без интернета" Кувалдин Артём, Яндекс
it-people
Руководство по приготовлению бутербродов из Selenium
Руководство по приготовлению бутербродов из Selenium
Uladzimir Kryvenka
VolgaCTF 2012 разбор заданий
VolgaCTF 2012 разбор заданий
BlackFan
Crazy owl yii1=> yii2
Crazy owl yii1=> yii2
Alexei Smolyanov
Take more from Jquery
Take more from Jquery
Magento Dev
Интуит. Разработка приложений для iOS. Лекция 7. Работа с сетью
Интуит. Разработка приложений для iOS. Лекция 7. Работа с сетью
Глеб Тарасов
Recommended
"VUE.JS как реакт с человеческим лицом" Дулецкий Вольдэмар, Evrone
"VUE.JS как реакт с человеческим лицом" Дулецкий Вольдэмар, Evrone
it-people
176023
176023
whitepawn2012
"Жизнь без интернета" Кувалдин Артём, Яндекс
"Жизнь без интернета" Кувалдин Артём, Яндекс
it-people
Руководство по приготовлению бутербродов из Selenium
Руководство по приготовлению бутербродов из Selenium
Uladzimir Kryvenka
VolgaCTF 2012 разбор заданий
VolgaCTF 2012 разбор заданий
BlackFan
Crazy owl yii1=> yii2
Crazy owl yii1=> yii2
Alexei Smolyanov
Take more from Jquery
Take more from Jquery
Magento Dev
Интуит. Разработка приложений для iOS. Лекция 7. Работа с сетью
Интуит. Разработка приложений для iOS. Лекция 7. Работа с сетью
Глеб Тарасов
тестирование защищенности веб приложений
тестирование защищенности веб приложений
Zestranec
Продвинутое использование ActiveRecord в Yii2
Продвинутое использование ActiveRecord в Yii2
Paul Klimov
WordPress auto-install: просто о сложном
WordPress auto-install: просто о сложном
Vladimir Samoletov
Тестирование игр: фан или тяжелый труд?
Тестирование игр: фан или тяжелый труд?
guest316854
Максим Ширшин "SVARX, или Борьба с большими формами"
Максим Ширшин "SVARX, или Борьба с большими формами"
Yandex
А не поговорить ли нам о XSS!
А не поговорить ли нам о XSS!
SQALab
Тестирование уязвимостей веб приложений
Тестирование уязвимостей веб приложений
SQALab
Интуит. Разработка приложений для iOS. Лекция 12. Тестирование, публикация и др.
Интуит. Разработка приложений для iOS. Лекция 12. Тестирование, публикация и др.
Глеб Тарасов
Миша Рудрастых: Введение в HTTP API WordPress
Миша Рудрастых: Введение в HTTP API WordPress
Ruslan Begaliev
TestGuy - эмулируем вашего тестировщика
TestGuy - эмулируем вашего тестировщика
davertmik
Пластилиновый код: как перестать кодить и начать жить
Пластилиновый код: как перестать кодить и начать жить
Moscow.pm
Top 10 problems supporting Magento customers
Top 10 problems supporting Magento customers
aheadWorks
работа сайта
работа сайта
Rinald Latupov
"Jaggery.js — сладкие корпоративные решения", Александр Новиков, MoscowJS 15
"Jaggery.js — сладкие корпоративные решения", Александр Новиков, MoscowJS 15
MoscowJS
YiiConf: Миграции и инсталляции
YiiConf: Миграции и инсталляции
Paul Klimov
Web осень 2013 лекция 5
Web осень 2013 лекция 5
Technopark
Selenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностей
Paul Stashevsky
Easy authcache 2 кеширование для pro родионов игорь
Easy authcache 2 кеширование для pro родионов игорь
drupalconf
More Related Content
What's hot
тестирование защищенности веб приложений
тестирование защищенности веб приложений
Zestranec
Продвинутое использование ActiveRecord в Yii2
Продвинутое использование ActiveRecord в Yii2
Paul Klimov
WordPress auto-install: просто о сложном
WordPress auto-install: просто о сложном
Vladimir Samoletov
Тестирование игр: фан или тяжелый труд?
Тестирование игр: фан или тяжелый труд?
guest316854
Максим Ширшин "SVARX, или Борьба с большими формами"
Максим Ширшин "SVARX, или Борьба с большими формами"
Yandex
А не поговорить ли нам о XSS!
А не поговорить ли нам о XSS!
SQALab
Тестирование уязвимостей веб приложений
Тестирование уязвимостей веб приложений
SQALab
Интуит. Разработка приложений для iOS. Лекция 12. Тестирование, публикация и др.
Интуит. Разработка приложений для iOS. Лекция 12. Тестирование, публикация и др.
Глеб Тарасов
Миша Рудрастых: Введение в HTTP API WordPress
Миша Рудрастых: Введение в HTTP API WordPress
Ruslan Begaliev
TestGuy - эмулируем вашего тестировщика
TestGuy - эмулируем вашего тестировщика
davertmik
Пластилиновый код: как перестать кодить и начать жить
Пластилиновый код: как перестать кодить и начать жить
Moscow.pm
Top 10 problems supporting Magento customers
Top 10 problems supporting Magento customers
aheadWorks
работа сайта
работа сайта
Rinald Latupov
"Jaggery.js — сладкие корпоративные решения", Александр Новиков, MoscowJS 15
"Jaggery.js — сладкие корпоративные решения", Александр Новиков, MoscowJS 15
MoscowJS
YiiConf: Миграции и инсталляции
YiiConf: Миграции и инсталляции
Paul Klimov
Web осень 2013 лекция 5
Web осень 2013 лекция 5
Technopark
Selenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностей
Paul Stashevsky
Easy authcache 2 кеширование для pro родионов игорь
Easy authcache 2 кеширование для pro родионов игорь
drupalconf
What's hot
(18)
тестирование защищенности веб приложений
тестирование защищенности веб приложений
Продвинутое использование ActiveRecord в Yii2
Продвинутое использование ActiveRecord в Yii2
WordPress auto-install: просто о сложном
WordPress auto-install: просто о сложном
Тестирование игр: фан или тяжелый труд?
Тестирование игр: фан или тяжелый труд?
Максим Ширшин "SVARX, или Борьба с большими формами"
Максим Ширшин "SVARX, или Борьба с большими формами"
А не поговорить ли нам о XSS!
А не поговорить ли нам о XSS!
Тестирование уязвимостей веб приложений
Тестирование уязвимостей веб приложений
Интуит. Разработка приложений для iOS. Лекция 12. Тестирование, публикация и др.
Интуит. Разработка приложений для iOS. Лекция 12. Тестирование, публикация и др.
Миша Рудрастых: Введение в HTTP API WordPress
Миша Рудрастых: Введение в HTTP API WordPress
TestGuy - эмулируем вашего тестировщика
TestGuy - эмулируем вашего тестировщика
Пластилиновый код: как перестать кодить и начать жить
Пластилиновый код: как перестать кодить и начать жить
Top 10 problems supporting Magento customers
Top 10 problems supporting Magento customers
работа сайта
работа сайта
"Jaggery.js — сладкие корпоративные решения", Александр Новиков, MoscowJS 15
"Jaggery.js — сладкие корпоративные решения", Александр Новиков, MoscowJS 15
YiiConf: Миграции и инсталляции
YiiConf: Миграции и инсталляции
Web осень 2013 лекция 5
Web осень 2013 лекция 5
Selenium 2.0: обзор новых возможностей
Selenium 2.0: обзор новых возможностей
Easy authcache 2 кеширование для pro родионов игорь
Easy authcache 2 кеширование для pro родионов игорь
Gennady kovshenin-wcrus2015-2
1.
Взлом WordPress Строим, ломаем,
латаем
2.
Геннадий Ковшенин soulseekah http://codeseekah.com
3.
4.
5.
“Зарегистрированный пользователь может совершить
вход прямо на сайте (не через wp-admin)...”
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
wp_signon, wp_set_auth_cookie
17.
18.
19.
20.
SELECT * FROM
wp_users WHERE user_login = “” OR SLEEP(10); # “;
21.
SELECT * FROM
wp_users WHERE user_login = “evil0ne” OR 1=1; # “;
22.
SELECT * FROM
wp_users WHERE user_login = “evil0ne” OR 1=0; # “;
23.
SELECT * FROM
wp_users WHERE user_login = “evil0ne” AND SUBSTRING(( SELECT user_pass FROM wp_users WHERE user_login = "admin"), 1, 1) = "$"; #'; “
24.
25.
26.
27.
28.
29.
Схемы таблиц, данные,
системные функции
30.
$wpdb→prepare, get_user_by get_post, и
т.д.
31.
“Нужна регистрация на
фронтэнде...”
32.
33.
34.
35.
extract( array( 'hello'
=> 1 ) ); echo $hello; // 1
36.
37.
38.
39.
40.
extract( array( 'a'
=> 1 ), null, 'b' ); echo $a; // undefined echo $b_a; // 1
41.
“Хочу публичные странички
– профили!”
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
document.cookie, jQuery(link).click(), location.href =,
и многое другое
54.
esc_attr, esc_html, … http://codeseekah.com/2012/03/13/wordpress-escape-functions/
55.
“У нас на
сервере 1С в сетке выгрузка накладных, надо, чтобы на нашем сайте можно было их посмотреть и скачать...”
56.
57.
58.
59.
2
60.
61.
62.
63.
wp-config.php, другой исходный
код
64.
объекты в wp_posts
+ attachments sanitize_file_name
65.
66.
67.
68.
69.
70.
current_user_can, check_admin_referrer (nonce), Settings
API https://codex.wordpress.org/Settings_API
71.
“Завершить безопасную сделку
по одному щелчку мыши...”
72.
73.
74.
75.
Заставить заказчика пройти
по ссылке ?complete=1 ...напрямую, CSRF - iframe, src, или Location:
76.
wp_create_nonce, wp_verify_nonce https://codex.wordpress.org/WordPress_Nonces
77.
“У каждого пользователя
два внутренних счета – заказчика и фрилансера. Можно между ними перекидывать денежки без проблем.”
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
Транзакции, межпроцессорные замки, UPDATE
WHERE, и т.д.
92.
93.
:(
94.
;(
95.
Пользовательский ввод всегда считать
опасным
96.
https://codex.wordpress.org/Data_Validation
97.
Изучать досконально WordPress
API
98.
Защитить любое действие
'nonce'ом
99.
100.
Бонус или “ой забыл в
ТЗ указать, а добавь еще это...”
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
wp_handle_upload
Download now