Codica - корисне про IT
2.02K subscribers
2.45K photos
124 videos
11 files
1.31K links
Привіт, друже, це канал про корисності в ІТ🤘

🔺Даємо практичні матеріали з RoR, JavaScript, QA, DevOps
🔺Розкажемо як знайти першу роботу без хвилювань та проблем

✍️Для звʼязку-@klimenko_nataly

👉 Відкриті вакансії - www.codica.com/careers
Download Telegram
What is the closest meaning of occur? 🤔
Anonymous Quiz
72%
Happen
10%
Get up
10%
Occupied
8%
Не знаю
🔥71👍1
Що таке XSS-вразливість 🤔

📌 XSS (англ. Cross Site Scripting — «міжсайтовий скриптинг») — тип вразливості інтерактивних інформаційних систем у вебі. XSS виникає, коли на сторінки, які були згенеровані сервером, з якоїсь причини потрапляють користувацькі скрипти.

👀 Це досить поширена вразливість, яку можна виявити на багатьох вебзастосунках. Її суть досить проста: зловмиснику вдається впровадити на сторінку JavaScript-код, який не було передбачено розробниками. Цей код буде виконуватися щоразу, коли жертви (звичайні користувачі) заходитимуть на сторінку програми, куди цей код було додано. А далі є кілька сценаріїв розвитку👇

#codica_tech
👍42🔥1
❗️ Перший: зловмиснику вдасться отримати авторизаційні дані користувача та увійти до його облікового запису.

❗️ Другий: зловмисник може непомітно для жертви перенаправити його на іншу сторінку-клон. Ця сторінка може виглядати цілком ідентично тій, де користувач розраховував опинитися. Але належатиме вона зловмиснику. Якщо користувач не помітить заміни і на цій сторінці введе якісь sensitive data, тобто особисті дані, вони виявляться у зловмисника.

❗️Третій ... та загалом багато чого ще можна придумати. Майже все, що може JavaScript стає доступним для зловмисника.

‼️ Тестувальник повинен вміти перевіряти свій вебзастосунок на вразливості.

Як влаштована вразливість

🧐 Насамперед, як саме вдається впровадити на сторінку JavaScript-код, якого там раніше не було? І як виходить розповсюдити цей код серед інших користувачів?

😑 Наприклад, можна додати JavaScript-код у поле введення, текст якого зберігається і надалі відображається на сторінці для всіх користувачів. Це може бути поле для введення інформації про себе на сторінці профілю соціальної мережі або коментарі на форумі.

⌨️ Зловмисник вводить текст (і шкідливий код), який зберігається на сторінці. Коли інші користувачі зайдуть на цю сторінку, разом з текстом вони завантажать і JavaScript-код зловмисника. Саме на момент завантаження цей код відпрацює. Звичайно, вразливість спрацює, тільки якщо текст при збереженні не буде захищений.

Чому такі помилки часто трапляються на веб-проектах

👉 Суть у тому, що браузер не може самостійно відрізнити звичайний текст від тексту CSS, HTML або JavaScript-коду. Він намагатиметься обробляти все, що знаходиться між тегами <script>, як JavaScript-код. Все, що знаходиться між тегами <style>, вважати CSS. І все, що схоже на тег, вважати HTML-кодом.

☝️ Якщо розробник хоче, щоб якийсь текст тільки виглядав як код, але таким не був (тобто не оброблявся браузером, а виводився як є), цей текст треба спеціально обробити перш, ніж віддати його браузеру. Така обробка називається "екрануванням".

🖥 У процесі екранування тексту в цьому тексті всі спеціальні символи замінюються їх "аналогами", і браузер вже знає напевно, що це просто текст. Найважливіше обробляти той текст, який надходить від користувача, тому що будь-який користувач може виявитися зловмисником і разом з текстом надіслати якийсь код. На жаль, іноді розробники забувають про екранування в тих чи інших місцях вебпрограми, і текст виводиться без будь-якої обробки.

🖇 Наприклад, не завжди програміст тримає в голові всі місця, де текст, заданий користувачем, потрапляє на сторінку. І більше, іноді різні частини сайту можуть створюватися у різний час та/або різними людьми. І тут ймовірність помилки зростає.

Заради безпеки та захисту своїх користувачів необхідно вміти шукати та закривати подібні вразливості на ваших проєктах 😌

TikTok | Instagram

#codica_tech
👍93🔥2👏1
15 лютого AWS User Group Ukraine та N-iX запрошують на AWS re:Invent re:Cap!

Найбільша у світі конференція з хмарних технологій AWS re:Invent відбулася в Лас-Вегасі.
🔥 Разом зі спікерами з AWS та N-iX організовуємо re:Cap, щоб обговорити основні анонси AWS re:Invent 2022 та детально розібратися у найважливіших для різноманітних спеціалістів.

Що очікувати?

🔸 овервʼю найголовнішого від Ігоря Іванюка, Sr. Solutions Architect в AWS
Головні анонси та новинки для: AWS інфраструктури, Data/ML, інструментів безпеки, IT Ops.

🔸 панельна дискусія за участі:
Ігоря Іванюка, Sr. Solutions Architect в AWS
Дениса Головатюка, Country Lead в AWS
Дмитра Овчаренко, Director of Technology Office в N-iX
Олексія Зайця, Chief Information Technology Architect в ПриватБанк

Keytopics: великі міграції в Amazon: досвід ПриватБанку та побудова Secure SDLC за допомогою AWS сервісів.

Коли: 15 лютого о 18:00 (за київським часом)
Формат: онлайн

🧡 Подаруємо тепло дітям: приєднуйтесь комфортним донатом до збору БФ “Клуб Добродіїв” ━ 45 100 грн на спальники і шапки для 2000 дітей на прифронтових територіях

👉 Деталі та реєстрація: http://bit.ly/3ljJjmy

Долучайтеся, щоб поставити свої запитання під час Q&A сесій!
Це буде AWSome!
6👍3🔥2
Всім гарного недільного дня, ловіть невеличкий дайджест новин зі світу IT від @Mister_Cody 🐾

👀 GitHub звільняє 10% співробітників і переходить на повний remote.

📚 Розробка на Java — з чого почати знайомство з мовою.

💰 Blackpearl Group із Нової Зеландії придбала українську NewOldStamp за понад $3 млн.

🔎 Google впровадить нові налаштування для безпечного пошуку.

💼 Власнику «Київстару» дозволили продати російські активи.

🎓 Linux, Git і Kubernetes. Українцям нададуть безплатний доступ до ІТ-курсів від The Linux Foundation.

TikTok | Instagram
👍113🔥2
👍43🔥1
Які операції можна застосувати до цього списку?
Anonymous Quiz
61%
b.length()
12%
b.remоve()
14%
b.reverse()
12%
b.include?"Some"
👍4🔥21
Що таке bash/shell 🧐

📌 Bash (скор. від «Bourne-Again shell») — це командна оболонка (або «інтерпретатор командного рядка»), яка використовується за замовчуванням в операційних системах на базі Unix та Linux, створена в 1989 році Брайаном Фоксом з метою вдосконалення командної оболонки sh.

👉 Bash дозволяє автоматизувати різні завдання, встановлювати програмне забезпечення, налаштовувати конфігурації для свого робочого оточення та багато іншого.

#codica_tech
👍9🔥32
📌 Shell (або «шелл», «командна оболонка») — це не тільки командний інтерпретатор, який забезпечує інтерфейс взаємодії між користувачем та ядром операційної системи, але й своєрідна мова програмування, в якій присутні такі конструкції, як оператори умовного розгалуження, цикли, змінні та багато іншого.

👉 Операційна система запускає командну оболонку для кожного користувача, коли той входить у систему чи відкриває вікно терміналу. Першим, що користувач побачить у вікні терміналу, буде запрошення оболонки — воно, як правило, складається з імені користувача та імені хоста, відокремлених один від одного символом @, слідом за ними йде шлях поточної робочої директорії та один із двох символів: $ або #.

☝️ Якщо користувач не має особливих прав, то як запрошення для введення команд у терміналі відображатиметься символ $. Якщо ж було виконано вхід під обліковим записом привілейованого користувача, то в терміналі відображатиметься символ #.

💻 Після запрошення користувач вводить різні команди в термінал, оболонка запускає програми для користувача, а потім відображає в терміналі результат їхнього виконання. Команди можуть бути введені безпосередньо самим користувачем або зчитані з файлу, який називається shell-скриптом або shell-програмою.

Як дізнатися, яка оболонка в мене встановлена

👉 Якщо ви починаєте своє знайомство з Linux і не змінювали оболонку, то найімовірніше, що у вашій системі використовується bash. Найпростіший спосіб дізнатися, яка оболонка використовується в даний момент — це звернутися до змінної оточення SHELL:

echo $SHELL

👀 Щоб переглянути всі доступні оболонки у вашій системі, необхідно звернутися до вмісту файлу /etc/shells:

cat /etc/shells

TikTok | Instagram

#codica_tech
👍73🔥3
Codica це...

Кожен з нас по-особливому ідентифікує, що для нього Codica. Для когось Codica - це неймовірна команда, мемчики в чаті, цікаві проєкти, можливість навчатися та бути почутим 🫶

#CodicaTeam вітає вас із Днем Закоханих та бажає кожному знайти своє кохання 💕
18🥰4🔥1
Принцип Парето - що це таке і чи потрібно застосовувати його на роботі? 👀

📌 20% досліджуваних об'єктів належать до 80% певних ресурсів - так звучить принцип Парето. Що це означає? Іншими словами, невелика частина ваших завдань або робіт приносить аж 80% прибутку і вигод. Завдяки цьому ви можете заощадити час і знайти моменти в своїй роботі, які зменшують вашу продуктивність.

#codica_advice
👍83🔥1
Що таке принцип Парето

🔖 Принцип Парето, також званий правилом 80/20 або 80 на 20, був сформульований на початку 1950-х років Джозефом Юраном, але був заснований на відносинах, які помітив Вільфредо Парето, а саме, що 80% світових товарів належать 20% людства. Перетворюючи ці значення в інші змінні, виходить, що в разі повторюваних дій це правило працює. Звичайно, це не завжди точне співвідношення, значення досить ілюстративне і не буде застосовуватися в кожній ситуації, але в багатьох випадках принцип Парето працює відмінно.

Як виглядає принцип Парето в повсякденному житті і де ви можете його побачити? 🤔
Є багато прикладів, і до них належать такі ситуації, як:

▪️дорожні пригоди, ДТП - близько 20% водіїв винні у 80% аварій;
▪️інтернет - 20% користувачів зазвичай генерують 80% контенту. Аналогічно це правило діє на різних порталах, наприклад, YouTube. Хоча у каналів багато підписників, 80% коментарів надходять від 20% з них;
▪️іспити - зазвичай 80% іспиту засновано на 20% матеріалу. Варто поставити питання, що є найбільш важливим, і саме про це сказати учням або студентам;
▪️гардероб - безумовно, майже кожен при огляді гардеробу дізнається, що у нього багато одягу, який він взагалі не носить, близько 20% одягу ви носите 80% часу.

☝️ Таких прикладів можна навести більше, і якщо ви помітите деякі залежності, то зможете навчитися завдяки принципу Парето економити час і простір.

Діяльність 80 з 20 може поліпшити роботу компанії і її персоналу 💼
Як це зробити?

👉 Спочатку ви повинні розуміти, що в значній мірі тільки 20% вашої діяльності дають до 80% результатів. Тому на них варто зосередитися. Наприклад, припустимо, що ви працюєте в компанії, де переважає спілкування з клієнтами. Ви намагаєтеся ставитися до кожного з них з належною повагою, приділяєте їм багато часу, незважаючи на те, що іноді це не дає бажаного результату. Ви розумієте, що тільки 20% ваших клієнтів дійсно приносять прибуток компанії, а решта – не мають особливого значення, хоча час, витрачений на них, вимірюється годинами.

✔️ Якщо ви відмовитеся від співпраці з такими клієнтами і присвятите весь час і сили щойно згаданим 20%, ви збільшите не тільки прибуток, але і час, який приділяєте роботі.

😌 Тому на початку варто вказати змінні, які ви можете виміряти. Виділіть дії, які насправді можуть генерувати 80% результатів і які, безумовно, заслуговують роботи. Перевірте, які завдання повторюються, і подивіться на них. Проаналізуйте час, присвячений їм:

🔎 Чи можете ви зробити більше?
🔎 Чи не витрачаєте ви його даремно?
🔎 Чи немає у вашій роботі факторів, які відволікають і які можна було б усунути?

📍 Якщо ви знайдете завдання, в яких відповідь на вищевказані питання ствердна, подивіться на них уважніше і оцініть, які елементи цієї роботи приносять найбільшу користь. Коли ви їх знайдете, то зможете цілком зосередитися на них, підвищити продуктивність і заощадити час.

TikTok | Instagram

#codica_advice
👍141🔥1
Доброго ранку та гарного дня всім 🌞

#codica_js
5🔥2🥰1
Що буде виведено у консоль
Anonymous Quiz
25%
24
5%
48
66%
42
5%
Не знаю
👍61🔥1
Codica - корисне про IT
Docker volumes та bind mounts: різниця між ними та для чого вони потрібні 🌚 👉 Існують два способи, що дозволяють зробити термін життя даних більшим за термін життя контейнера. Один із способів полягає у використанні bind mount. При такому підході до контейнера…
Docker build та docker builders 🤓

📌 Docker Build — одна з найбільш використовуваних функцій Docker Engine. Щоразу, коли ви створюєте образ, ви використовуєте Docker Build. Збірка є ключовою частиною життєвого циклу розробки програмного забезпечення, що дозволяє вам укомплектовувати код та всі його залежності й надсилати його будь куди.

☝️ Білд — це один з найуразливіших моментів у циклі життя контейнера та застосунку всередині контейнера.
Команда docker build створює образ Docker з Dockerfile і «контексту». Контекст збірки — це набір файлів хоста або віддалених серверів, які контейнер використовує в інструкціях. Build процес може посилатися на будь-який файл. Наприклад, ваша збірка може використовувати інструкцію COPY для посилання на файл з хоста.

#codica_tech
👍8🔥3