15.09.2015 08:36
Цитата:
OlegON Тут про Linux речь.
насколько я помню ffmpeg и под виндой есть и работает также
15.09.2015 09:06
Цитата:
student насколько я помню ffmpeg и под виндой есть и работает также
давайте не будем сваливаться в холивар тут :) я про то, что коллегу не устраивает Линукс, длина опций и ffmpeg. Полагаю, это он еще ман по нему не читал.
15.09.2015 16:05
Цитата:
OlegON давайте не будем сваливаться в холивар тут :) я про то, что коллегу не устраивает Линукс, длина опций и ffmpeg. Полагаю, это он еще ман по нему не читал.
Долго писал, потом питание пропало - надо бы бесперебойником обзавестись.
Я хотел бы уточнить в каком месте я указал что меня не устраивает Линукс ?
Я всего лишь уточнил зачем использовать столь не маленький код, что бы получить простой снимок с экрана. - после твоих ответов я понял что резон в этом есть.
Только если ноутбук или пк по прежнему будет дома.
если student написал что fswebcam можно использовать и в окошке, то я думаю он знает что написал.
Может код будет длиннее или короче - меня интересовало не длинна кода, а суть использования подобных кодов будь то окошко или пингвин.
30.12.2024 19:50
Так ребята, писал давненько скрипт одному упоротому безопаснику на заводе.

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

Ну ты понял. Тип захотел, чтобы его ноут сфоткал рожу коллеги, который возможно вынашивает коварный план. И однажды попытается взломать его пароль из 128 символов.

Сказано сделано, дополнительно прикрутил фичу с оправкой фотки в телегу.

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

Код:
#!/bin/bash

# переменные
TOKEN="BOT_TOKEN"
CHAT_ID="CHAT_ID"
USER=$(whoami)
TIMESTAMP=$(date '+%Y-%m-%d_%H-%M-%S')
IMAGE_PATH="/tmp/face-${USER}-${TIMESTAMP}.png"

# Делаем фотку с вебки
if ffmpeg -y -t 1 -f video4linux2 -s 640x480 -r 30 -i /dev/video0 -f image2 "$IMAGE_PATH"; then
    echo "✅ Рожа успешно захвачена: $IMAGE_PATH"
else
    echo "❌ Ошибка: Не удалось захватить рожу"
    exit 1
fi

# Пулим фотку в телегу
RESPONSE=$(curl -s -X POST "https://api.telegram.org/bot$TOKEN/sendPhoto" \
    -F chat_id="$CHAT_ID" \
    -F photo="@$IMAGE_PATH" \
    -F caption="🚨 Хакер пойман, лови рожу: $USER на $(hostname)")

# Проверяем респонс
if echo "$RESPONSE" | grep -q '"ok":true'; then
    echo "📨 Рожа успешно отправлена в Telegram"
else
    echo "❌ Ошибка: Не удалось отправить рожу в Telegram"
    echo "Ответ Telegram API: $RESPONSE"
fi

# Подчищаем за собой
rm -f "$IMAGE_PATH"
Делаем скрипт исполняемым (иксим через чмод), кидаем этот скрипт например сюда: /usr/local/bin/

Добавляем строчку в /etc/pam.d/common-auth

Код:
auth optional pam_exec.so /usr/local/bin/face_send.sh
optional = скрипт не блокирует аутентификацию, даже если выплюнет ошибку

Если хочешь чтобы скрипт был обязателен для выполнения, замени optional на required.

Работает так:

- При неудачной аутентификации PAM вызывает скрипт face_send.sh

- Скрипт делает снимок рожи с камеры и отправляет его в телегу

Да, не забудь проверить что у PAM есть разрешение на доступ к /dev/video0 и на выполнение скрипта.
Часовой пояс GMT +3, время: 05:36.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.