import React, { useState } from 'react'; import './Yandex.css'; const YandexApp: React.FC = () => { const [currentPage, setCurrentPage] = useState<'yandex' | 'email' | 'gosuslugi' | 'fakeSite' | 'telelitra' | 'searchResults'>('yandex'); const [selectedEmail, setSelectedEmail] = useState(null); const [login, setLogin] = useState(''); const [password, setPassword] = useState(''); const [showPhishingModal, setShowPhishingModal] = useState(false); const [showSuccessModal, setShowSuccessModal] = useState(false); const [showVirusModal, setShowVirusModal] = useState(false); const [searchQuery, setSearchQuery] = useState(''); const [showFakeSiteWarning, setShowFakeSiteWarning] = useState(false); const emails = [ { id: 1, from: 'security@bank.ru', subject: 'Ваш аккаунт Госуслуги заблокирован', body: 'Уважаемый клиент! Ваш аккаунт был заблокирован. Для разблокировки перейдите по ссылке и подтвердите данные.' }, { id: 2, from: 'noreply@gosuslugi.ru', subject: 'Подтверждение записи на портале Госуслуги', body: 'Ваша запись подтверждена. Для просмотра перейдите на сайт госуслуг.' } ]; const handlePhishingSubmit = () => { if (login && password) { setShowPhishingModal(true); } }; const handleGosuslugiLogin = () => { if (login && password) { setShowSuccessModal(true); } }; const handleSearch = () => { if (searchQuery.toLowerCase().includes('телелитр')) { setCurrentPage('searchResults'); } else { alert('Ничего не найдено. Попробуйте найти "ТелеЛитр"'); } }; const handleFakeLink = () => { setCurrentPage('fakeSite'); }; const handleOfficialLink = () => { setCurrentPage('telelitra'); }; const handleDownloadVirus = () => { setShowVirusModal(true); }; const MailIcon = () => ( ); const GosuslugiIcon = () => ( ); const BackIcon = () => ( ); const EmailIcon = () => ( ); const WarningIcon = () => ( ); const SecureIcon = () => ( ); if (currentPage === 'yandex') { return (

Яндекс

setSearchQuery(e.target.value)} onKeyPress={(e) => e.key === 'Enter' && handleSearch()} />
setCurrentPage('email')}>
Почта
setCurrentPage('gosuslugi')}>
Госуслуги

Найдется всё. Например, ТелеЛитр

); } // Страница результатов поиска if (currentPage === 'searchResults') { return (

Результаты поиска: ТелеЛитр

Найдено 2 результата

{/* Официальный сайт */}
🔒
ТелеЛитр - Официальный сайт
https://tele-litra.gov.ru
Крупнейшая библиотека электронных книг. Более 1 миллиона книг. Официальный сайт с лицензионными книгами.
Защищенное соединение
{/* Поддельный сайт */}
⚠️
ТелеЛитр - Скачать бесплатно
http://tele-litra-free.download
Скачай любую книгу бесплатно без регистрации! Все книги в открытом доступе.
Незащищенное соединение
); } // Страница Госуслуг if (currentPage === 'gosuslugi') { return (

Госуслуги

Добро пожаловать на портал государственных услуг

setLogin(e.target.value)} /> setPassword(e.target.value)} />

Официальный сайт. Ваши данные в безопасности

{showSuccessModal && (

Поздравляем!

Вы успешно вошли на официальный сайт Госуслуг!

Все ваши данные в безопасности. Вы выполнили задание правильно!

Ваши данные:
Логин: {login}
Пароль: {password}
)}
); } if (currentPage === 'fakeSite') { return (
Незащищенное соединение

ТелеЛитр - НЕОФИЦИАЛЬНЫЙ САЙТ

ВНИМАНИЕ! Этот сайт не имеет защищенного SSL-сертификата!

Ваше соединение не зашифровано. Данные могут быть перехвачены злоумышленниками.

Адресная строка: http://tele-litra-free.download (не защищено)

Для скачивания книг установите наше приложение:

{showVirusModal && (
🦠

О НЕТ! ВЫ СКАЧАЛИ ВИРУС!

Вы скачали файл с поддельного сайта. Это вредоносное ПО!

Никогда не скачивайте файлы с непроверенных сайтов и не переходите по подозрительным ссылкам!

Что произошло:
- Ваш компьютер заражен трояном
- Данные могли быть украдены
- Рекомендуется немедленно запустить антивирус
- Не вводите пароли на подозрительных сайтах
)}
); } if (currentPage === 'telelitra') { return (
Защищенное соединение

✅ ТелеЛитр - Официальный сайт

🔒 SSL Сертификат подтвержден (Let's Encrypt)

Адресная строка: https://tele-litra.gov.ru (защищено)

Ваше соединение зашифровано. Сайт официальный и безопасный.

Добро пожаловать в ТелеЛитр!

Крупнейшая официальная библиотека электронных книг.

📚 Более 1 миллиона лицензионных книг
🎧 Аудиокниги от официальных издательств
📱 Официальное мобильное приложение
⭐ Рейтинги и отзывы читателей
💰 Бесплатные книги по школьной программе
🎓 Образовательные материалы
); } // Детали письма if (selectedEmail) { const email = emails.find(e => e.id === selectedEmail); return (

{email?.subject}

От: {email?.from}

{email?.body}

{selectedEmail === 1 && (

⚠️ Внимание! Подтвердите данные

setLogin(e.target.value)} className="input-field" /> setPassword(e.target.value)} className="input-field" />
)} {selectedEmail === 2 && (
)}
{showPhishingModal && (

😱 О нет! Ваши данные украдены!

Вы ввели логин и пароль на поддельном сайте.

Никогда не переходите по подозрительным ссылкам из писем!

Украденные данные:
Логин: {login}
Пароль: {password}
)}
); } // Список писем return (

Входящие

{emails.map(email => (
setSelectedEmail(email.id)}>
{email.from}

{email.subject}

))}
); }; export default YandexApp;