Задать вопрос
@romaKARDAPOLTSEV

Скрипт robot вопрос по пайтону?

Здравствуйте, подскажите, пожалуйста, робот содержит в себе какую-то информацию, благодаря которой можно вручную, включив его, вывести звезды с аккаунта чужого в телеграмме?
Очень хотелось бы знать ответ, так как, к сожалению, не понимаю ничего в коде пайтона
https://disk.yandex.ru/d/eJCJhtDA63TqTg
  • Вопрос задан
  • 96 просмотров
Подписаться 1 Простой 1 комментарий
Решения вопроса 1
@rPman
openai:o3
Программа делает ровно то, что обещает README: она следит за списком доступных подарков Telegram на вашем USER-аккаунте и, если подарок подходит под правила из config.ini, пытается его купить и сразу переслать получателям, которые тоже перечислены в config.ini.
В коде нет скрытых частей, которые могут тайно переводить звёзды, контакты или средства авторам.
Тем не менее, скрипт — это USER-бот: он работает с полными данными вашего Telegram-аккаунта — запускайте его только если доверяете опубликованному исходному коду **и всем будущим обновлениям, которые установите**.

───────────────────────────────
1. Проверка по функциям
───────────────────────────────

Обещание в README │ Реальность кода
────────────────────────────────────────┼────────────────────────────────────────
Круглосуточный мониторинг / интервал │ app/utils/detector.py → GiftMonitor.
настраивается │ INTERVAL секунд (config.ini) в цикле. ✅
Приоритет низкого остатка │ GiftDetector.prioritize_gifts() – когда
PRIORITIZE_LOW_SUPPLY=True. ✅
Несколько получателей / индивидуальное │ Разбор в data/config.py → GIFT_RANGES
количество │ → _parse_single_range(). Количество и
получатели пересылаются, как есть. ✅
Покупает даже с низким балансом │ purchase.py → GiftPurchaser.buy_gift():
(частичная покупка) │ покупает максимум доступного, шлёт уведомление. ✅
Уведомления о балансе, ошибках, │ app/notifications.py – несколько сообщений. ✅
скипах │
Язык EN/RU │ app/utils/localization.py, locales/*.yml ✅
“Только для улучшения” переключатель │ callbacks.py → GiftProcessor.evaluate …
через PURCHASE_ONLY_UPGRADABLE_GIFTS ✅
Все настройки в одном файле (config) │ Да – всё читается только оттуда. ✅
Нет автообновлений или скрытых │ Ничего не загружает код/данные из сети,
веб-запросов │ кроме Telegram API для подарков / чатов. ✅

Всё, что заявлено в README, реально присутствует в коде, ничего существенного не пропущено.

───────────────────────────────
2. Где реально можно потратить звёзды
───────────────────────────────

• Только одно место вызывает метод Telegram API, который тратит звёзды:

purchase.py → await app.send_gift(chat_id, gift_id, …)

• Параметры для этого вызова берутся из:
– gift_id, найденного детектором
– quantity, указанного в подходящем диапазоне
– chat_id буквально из списка получателей в config.ini

Нет никаких других, жёстко забитых “тайных” получателей и нет других способов потратить звёзды или перевести монеты.

───────────────────────────────
3. Что код МОЖЕТ делать (и вы должны с этим согласиться)
───────────────────────────────

1. Он работает от вашего имени. Любой USER-бот может видеть и изменять всё,
что может ваш Telegram-клиент. Само по себе это не неэтично, но вы доверяете
всему этому репозиторию — и любым будущим обновлениям, которые установите.

2. Если указать CHANNEL_ID чужого канала, туда будут уходить все уведомления
(включая стартовое сообщение с вашим текущим балансом).
В стандартном config это поле пустое, так что ничего не уходит, если сами не пропишете.

3. Ошибка в вашем GIFT_RANGES может привести к трате больше звёзд, чем ожидалось
(например, пересекающиеся диапазоны, очень большое количество).
Программа ограничивается вашим балансом, но потратит всё, если правило сработает.

4. Сессионные файлы (data/account) хранятся в открытом виде на диске.
Кто угодно, получивший эту папку, сможет зайти в ваш аккаунт без SMS.

───────────────────────────────
4. Проверка на “красные флаги”
───────────────────────────────

• Нет сетевого доступа, кроме Telegram.
• Нет записи вне ./data и логов.
• Нет динамического import, eval, exec сетевого кода.
• Нет попыток продать уже купленные NFT или вывести звёзды напрямую.
• Нет скрытых получателей, нет кошелька разработчика.
• Нет майнинга, нет вызовов shell-кода кроме harmless Windows “title …”.

───────────────────────────────
5. Вердикт и рекомендации
───────────────────────────────

Публикованный код выглядит честно: он только покупает подарки по вашему config
и пересылает их только указанным получателям. Он не может “украсть” звёзды неявно.

Однако:

• USER-бот так же силён, как ваш Telegram — проверяйте каждый апдейт!
• Храните свой session-файл в безопасности.
• Если переживаете — заведите отдельный Telegram с ограниченным балансом.
• Всегда перепроверяйте GIFT_RANGES перед запуском.

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

5. Вердикт и рекомендации
───────────────────────────────

Публикованный код выглядит честно: он только покупает подарки по вашему config
и пересылает их только указанным получателям. Он не может “украсть” звёзды неявно.


стоило мне это примерно $0.13 (плюс я ранее создавал из любопытства полностью вайбкодингом утилиту, которая помогает подготовить запрос, собирая в него все файлы из текущего каталога, которые являются кодом, типа ```имя файла\nсодержимое\n``` и так все файлы)

настоятельно рекомендую для таких задач сделать так же

конечно, гарантий что ИИ не пропустит что то опасное нет, но спрашивать помощи у рандомов в интернете еще более странно и ненадежно.

Кстати в архиве слита текущая база данных - data/account.session выглядит как что то важное, рекомендации
openai:o3
Да — утечка файла «data/account.session» (или «*.session-journal», «.session-v2») примерно то же самое, что дать посторонним свой пароль от Telegram + действующий SMS-код.

Почему это опасно
1. Файл содержит ключ авторизации, который Pyrogram (и любой другой MTProto-клиент) может использовать для мгновенного входа в ваш аккаунт, без SMS или 2FA.
2. Другая сторона может:
• читать все чаты (даже секретные, если вы их когда-либо открывали на этом аккаунте);
• отправлять и удалять сообщения, тратить Stars, дарить подарки, менять данные профиля;
• создавать дополнительные сессии, поэтому завершить только одну сессию может быть недостаточно;
• запускать других user-ботов от вашего имени.
3. Ключ не истекает сам по себе; он действителен, пока вы его явно не отзовёте.

Что делать, если файл уже попал в чужие руки
A. Немедленно отзовите скомпрометированную сессию(и).
1. Откройте любое официальное приложение Telegram → Настройки → Устройства (или Конфиденциальность и безопасность → Активные сеансы).
2. Найдите сессию “Pyrogram”, “Telethon” или “Неизвестно” (часто отображается как “Веб” или “Linux” с тем же IP, что и ваш сервер).
3. Тапните по ней и выберите “Завершить сеанс”, или просто “Завершить все остальные сеансы” для надёжности.
4. Это немедленно аннулирует скомпрометированный ключ авторизации; украденный файл станет бесполезен.

B. Выйдите из работающего бота и создайте новую сессию.
1. Остановите скрипт на вашем сервере/VPS.
2. Удалите старые файлы *_account.session* из папки «data/».
3. Перезапустите программу — Pyrogram запросит новый SMS/Telegram-код и создаст чистый сессионный файл.

C. Усильте защиту аккаунта
• Включите двухэтапную аутентификацию (пароль Telegram), если ещё не сделали этого.
• Установите резервный email и выберите сильный пароль.
• Регулярно просматривайте “Конфиденциальность и безопасность → Активные сеансы”.
• Рассмотрите вариант работы бота с отдельного вторичного аккаунта Telegram с ограниченным балансом Stars.

D. Устраните последствия утечки
• Удалите опубликованный сессионный файл из репозитория, публичного чата, форума.
• Если он был закоммичен в публичный репозиторий, перепишите историю или удалите репозиторий, чтобы не дать файл скачать.

E. (Опционально) Смените API credentials
Обычно менять API_ID / API_HASH не нужно; они идентифицируют *приложение*, а не пользователя. Одних этих значений недостаточно для доступа к вашему аккаунту, но если вы их тоже утекли — вы можете отозвать и создать “developer app” заново на https://my.telegram.org/apps.

Главное
Файл сессии = полный доступ к аккаунту. Если он утекает — срочно отзовите сессию, удалите файл и создайте новый.


p.s. хотите каких то гарантий, обратитесь в компании, занимающихся ревью профессионально
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы