🚀 Вийди на новий рівень крипто-торгівлі!
Easy Trade Bot — автоматизуй свій прибуток уже зараз!

Ми пропонуємо перелік перевірених прибуткових стратегій на такі пари як BTC, DOT, TRX, AAVE, ETH, LINK та інші. Ви можете підключити автоматичну торгівлю на своєму акаунті Binance або отримувати торгові рекомендації на email у режимі реального часу. Також можемо створити бота для обраної вами монети.

Всі результати торгів ботів доступні для перегляду у зручних таблицях на головній сторінці. Швидко, динамічно та прозоро!

Перейти до бота + 30$ бонус

Усунення вразливостей за допомогою Fortify on Demand

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
О
Факультет:
КН
Кафедра:
Не вказано

Інформація про роботу

Рік:
2024
Тип роботи:
Лабораторна робота
Предмет:
СП

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» / Лабораторна робота №4 З дисципліни “Безпека програмного забезпечення” Тема: «Усунення вразливостей за допомогою Fortify on Demand» Львів - 2024 Мета роботи: Навчитись усувати вразливості виявлені за допомогою Fortify on Demand на основі наданих системою рекомендацій. Виконання роботи 1. Hardcoded API Credentials Це статична інформація для автентифікації, вбудована безпосередньо у вихідний код програми. Це небезпечно, оскільки, якщо їх буде виявлено, неавторизовані користувачі зможуть легко отримати доступ до конфіденційних систем або даних, що становить значний ризик для безпеки. Усунення вразливості Я усунув дану уразливість зберігаючи ключі API в окремому .env файлі. Потім я отримав доступ до цих значень у коді через змінні оточення. Це підвищило безпеку, оскільки конфіденційні дані були відокремлені від вихідного коду. Було: it('returns payload from decoding a valid JWT', inject([LoginGuard], (guard: LoginGuard) => { localStorage.setItem('token', 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c') expect(guard.tokenDecode()).toEqual({ sub: '1234567890', name: 'John Doe', iat: 1516239022 }) })) Стало: import * as dotenv from 'dotenv'; dotenv.config(); … it('returns payload from decoding a valid JWT', inject([LoginGuard], (guard: LoginGuard) => { const token = process.env.TOKEN || ''; localStorage.setItem('token', token) expect(guard.tokenDecode()).toEqual({ sub: '1234567890', name: 'John Doe', iat: 1516239022 }) })) Контролі інформаційної безпеки 1. Використання змінних середовища: Використання змінних середовища для безпечного зберігання облікових даних API замість того, щоб хардкодити їх безпосередньо у вихідному коді. Це дозволяє запобігти витоку у випадку несанкціонованого доступу до кодової бази. 2. Системи управління секретами: Використання спеціальних систем управління секретами (наприклад, HashiCorp Vault, AWS Secrets Manager) для централізації та контролю доступу до конфіденційної інформації. Це забезпечує безпечне зберігання та динамічне отримання ключів та облікових даних API. 3. Регулярна зміна ключів: Впровадження практики регулярної зміни ключів для облікових даних API зменшить вікно можливостей для потенційних зловмисників зловживати будь-якими скомпрометованими обліковими даними. 4. Контрольні журнали та моніторинг: Налаштування надійних контрольних журналів та механізмів безперервного моніторингу для відстеження доступу до конфіденційної інформації, оперативного виявлення та сповіщення про будь-які несанкціоновані спроби доступу до облікових даних API або їх модифікації. 2. Insecure Transport Незахищений транспорт означає незашифровану передачу даних через Інтернет у вигляді відкритого тексту, без заходів безпеки, передбачених протоколом HTTPS. Він небезпечний тим, що наражає конфіденційну інформацію на потенційне перехоплення та несанкціонований доступ, роблячи її вразливою до різних кібератак, таких як підслуховування та маніпуляції з даними. Усунення вразливості Я усунув уразливість у своєму коді, застосувавши HTTPS, використовуючи ключ і самопідписаний сертифікат для шифрування даних, що передаються між клієнтом і сервером, забезпечивши безпечне і зашифроване з'єднання, тим самим запобігаючи несанкціонованому доступу і перехопленню даних. Таке налаштування уможливило безпечний зв'язок завдяки шифруванню трафіку, забезпеченню цілісності та конфіденційності даних, а також встановленню довіри між сервером і клієнтом. Було: describe('open a server before running the test', () => { const testServer = net.createServer() before((done) => { testServer.listen(3000, done) }) Стало: describe('open a server before running the test', () => { const options = { key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'), cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem') }; const testServer = https.createServer(options) before((done) => { testServer.listen(3000, done) }) Контролі інформаційної безпеки 1. Впровадження HTTPS: Використання HTTPS (HTTP через SSL/TLS) для шифрування даних, що передаються мережею, забезпечує безпечний зв'язок, запобігає підслуховуванню та несанкціонованому доступу до конфіденційної інформації. 2. HSTS (HTTP Strict Transport Security): Впровадження заголовків HSTS для забезпечення використання HTTPS у веб-браузерах, запобігає атакам на зниження рівня безпеки та встановлення безпечних з'єднань протягом певного періоду часу. Перевірка виправлення вразливостей Після виправлення вище наведених вразливостей проводимо повторне сканування коду, щоб переконатись, що вразливості дійсно зникли: Було: Стало:  / /   Як можемо бачити, вразливості усунені. Висновки Під час виконання даної лабораторної роботи я навчився усувати вразливості виявлені за допомогою Fortify on Demand на основі наданих системою рекомендацій.
Антиботан аватар за замовчуванням

08.04.2025 12:04-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!