Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.01.2012, 14:54
Новичок на форуме
Отправить личное сообщение для falsenull Посмотреть профиль Найти все сообщения от falsenull
 
Регистрация: 19.01.2012
Сообщений: 3

Введенный код в prompt()
Так было задумано создателями языка?

var ent = prompt("Введите код", "");
document.write(ent);


выполненный код вызовет окно prompt и запишет полученные данные на страницу. Но JS не только запишет полученные данные, но и выполнит код введенный в prompt, например примитивный <script language="JavaScript">alert("lol");</script>. Так и должно быть?
Ответить с цитированием
  #2 (permalink)  
Старый 19.01.2012, 15:36
Аватар для Skipp
.
Отправить личное сообщение для Skipp Посмотреть профиль Найти все сообщения от Skipp
 
Регистрация: 30.03.2010
Сообщений: 1,813

Естественно.
__________________
.
Ответить с цитированием
  #3 (permalink)  
Старый 19.01.2012, 15:49
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

А что, в этом, например, случае такого произойти не должно?
document.write('<script>alert("lol");</script>');
Ответить с цитированием
  #4 (permalink)  
Старый 19.01.2012, 21:54
Новичок на форуме
Отправить личное сообщение для falsenull Посмотреть профиль Найти все сообщения от falsenull
 
Регистрация: 19.01.2012
Сообщений: 3

Но ведь код может быть и не таким безобидным?
Ответить с цитированием
  #5 (permalink)  
Старый 19.01.2012, 21:59
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от falsenull
Но ведь код может быть и не таким безобидным?
ну дык замените в нем спецсимволы:
<script>
var ent = prompt("Введите код", '');
document.write(ent.replace(/</g, '&lt;').replace(/>/g, '&gt;'));
</script>
Ответить с цитированием
  #6 (permalink)  
Старый 19.01.2012, 22:15
Аватар для Magneto
Люмус, Емаксос Developer!
Отправить личное сообщение для Magneto Посмотреть профиль Найти все сообщения от Magneto
 
Регистрация: 06.05.2010
Сообщений: 677

Сообщение от falsenull
Но ведь код может быть и не таким безобидным?
Ты боишся что пользователь сам на себя произведет XSS атаку? Стырит свои же куки и зайдет на твой сайт под своим же именем.
Ответить с цитированием
  #7 (permalink)  
Старый 19.01.2012, 22:29
что-то знаю
Отправить личное сообщение для devote Посмотреть профиль Найти все сообщения от devote
 
Регистрация: 24.05.2009
Сообщений: 5,176

Сообщение от Magneto Посмотреть сообщение
Ты боишся что пользователь сам на себя произведет XSS атаку? Стырит свои же куки и зайдет на твой сайт под своим же именем.
Ответить с цитированием
  #8 (permalink)  
Старый 19.01.2012, 23:18
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

Сообщение от falsenull
Но ведь код может быть и не таким безобидным?
Какой код? А сама возможность вызвать document.write безобидна?
Ответить с цитированием
  #9 (permalink)  
Старый 21.05.2012, 16:47
Аватар для Джэксон
Аспирант
Отправить личное сообщение для Джэксон Посмотреть профиль Найти все сообщения от Джэксон
 
Регистрация: 21.05.2012
Сообщений: 89

Да. Он изменит страницу для себя. Для других пользователей она останется прежней.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Типографика и HTML код Manjuriano (X)HTML/CSS 3 23.11.2011 12:22
Как создать bodyclick код royksopp Общие вопросы Javascript 8 14.10.2011 16:39
АААААААААА!!! Протестируйте пожалуйста код в разных браузерах. выявляем ошибки. prototype Элементы интерфейса 1 22.07.2011 07:47
код странно отрабатывает комбинацию клавиш ffx Общие вопросы Javascript 4 20.01.2011 10:58
Opera отдаёт неправильный код функциональных клавиш. NT Man Opera, Safari и др. 1 19.01.2010 02:45