/
boxdeveloper
/
test
Обзор
Документация
Войти
/
boxdeveloper
/
test
Код
Запросы
1
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
feature/test
trash.tsx
48 строк
1 KB
boxdeveloper
create trash.tsx
04 фев 2025, 23:54
04 фев 2025, 23:54
8e33689
Код
Авторство
О чём код?
import React, { useState } from 'react'; function XSSVulnerableComponent() { const [inputValue, setInputValue] = useState(''); const [displayValue, setDisplayValue] = useState(''); // Обработчик ввода пользователя const handleInputChange = (event) => { setInputValue(event.target.value); }; // Опасное отображение введенных данных без санитизации const handleDisplay = () => { setDisplayValue(inputValue); }; // Опасное использование dangerouslySetInnerHTML const dangerousHTML = { __html: `<p>${displayValue}</p>`, }; return ( <div> <h1>XSS Vulnerable Component</h1> <input type="text" value={inputValue} onChange={handleInputChange} placeholder="Enter something..." /> <button onClick={handleDisplay}>Display</button> {/* Опасное отображение данных */} <div> <h2>Displayed Value (Unsafe):</h2> <div dangerouslySetInnerHTML={dangerousHTML} /> </div> {/* Еще один пример потенциальной XSS через URL-параметры */} <div> <h2>URL Parameter Injection:</h2> <a href={`/search?query=${inputValue}`}>Search</a> </div> </div> ); } export default XSSVulnerableComponent;