• XSS.stack #1 – первый литературный журнал от юзеров форума

Скамеры среди нас

oceanaric

Developer
Пользователь
Регистрация
18.12.2022
Сообщения
134
Реакции
132
Гарант сделки
8
Депозит
1.11 Ł
Просто оффтопик о скамере, который создал расширение XSS против скамеров :D

Месяц назад мой заказчик бинанс чекера написал мне, что AGN заскамил его на Binance чекер без капчи (под спойлер закинул код, который он ему продал):

Python:
import tkinter as tk
from tkinter import filedialog, messagebox, ttk
import asyncio
import aiohttp
import random

# Asynchronous function to check a single phone number
async def check_phone_binance(session, phone_number, country_code, proxy=None):
    url = "https://www.binance.com/bapi/accounts/v1/public/authcenter/verify-phone"
    headers = {"Content-Type": "application/json"}
    formatted_phone = f"+{country_code}{phone_number}" if not phone_number.startswith("+") else phone_number
    data = {"phone": formatted_phone, "countryCode": country_code, "type": "1"}
    proxy = f"http://{proxy}" if proxy else None

    try:
        async with session.post(url, json=data, headers=headers, proxy=proxy, timeout=10) as response:
            if response.status != 200:
                raise Exception(f"HTTP Error {response.status}: {await response.text()}")
            result = await response.json()
            if result.get("success"):
                return phone_number, "Exists"
            return phone_number, result.get("msg", "Unknown error")
    except aiohttp.ClientProxyConnectionError:
        return phone_number, "Proxy Error"
    except aiohttp.ClientConnectionError:
        return phone_number, "Network Error"
    except aiohttp.ClientResponseError as e:
        return phone_number, f"HTTP Error: {e.status}"
    except Exception as e:
        return phone_number, f"Unknown Error: {e}"

# Main asynchronous function to handle checking
async def check_numbers(file_path, country_code, proxies, max_connections, update_progress):
    with open(file_path, "r") as file:
        phone_numbers = [line.strip() for line in file.readlines()]

    results = []
    proxy_errors = []
    phone_errors = []
    network_errors = []
    unknown_errors = []

    connector = aiohttp.TCPConnector(limit=max_connections)
    async with aiohttp.ClientSession(connector=connector) as session:
        tasks = []
        for idx, phone in enumerate(phone_numbers):
            proxy = random.choice(proxies) if proxies else None
            tasks.append(check_phone_binance(session, phone, country_code, proxy))

            # Update progress every 100 tasks
            if len(tasks) % 100 == 0:
                update_progress(idx + 1, len(phone_numbers))

        # Process all tasks
        for idx, result in enumerate(await asyncio.gather(*tasks)):
            phone_number, status = result
            if status == "Exists":
                results.append(f"{phone_number}: Exists")
            elif status == "Proxy Error":
                proxy_errors.append(phone_number)
            elif status == "Network Error":
                network_errors.append(phone_number)
            elif "HTTP Error" in status:
                phone_errors.append(f"{phone_number}: {status}")
            else:
                unknown_errors.append(f"{phone_number}: {status}")
            update_progress(idx + 1, len(phone_numbers))

    # Save results and errors to files
    with open("results.txt", "w") as result_file:
        result_file.write("\n".join(results))

    if proxy_errors:
        with open("proxy_errors.txt", "w") as proxy_file:
            proxy_file.write("\n".join(proxy_errors))
    if phone_errors:
        with open("phone_errors.txt", "w") as phone_file:
            phone_file.write("\n".join(phone_errors))
    if network_errors:
        with open("network_errors.txt", "w") as network_file:
            network_file.write("\n".join(network_errors))
    if unknown_errors:
        with open("unknown_errors.txt", "w") as unknown_file:
            unknown_file.write("\n".join(unknown_errors))

    return len(results)

# Function to start the checking process
def start_checking():
    file_path = file_label.cget("text")
    proxy_path = proxy_label.cget("text")
    country_code = geo_entry.get()
    max_connections = int(thread_entry.get())

    if not file_path or file_path == "No file selected":
        messagebox.showerror("Error", "Please select a file with phone numbers!")
        return

    if not country_code and not all([line.startswith("+") for line in open(file_path).readlines()]):
        messagebox.showerror("Error", "Please specify the country code or ensure all numbers include the '+' prefix!")
        return

    proxies = []
    if proxy_path and proxy_path != "No proxy file selected":
        try:
            with open(proxy_path, "r") as proxy_file:
                proxies = [line.strip() for line in proxy_file.readlines()]
        except Exception as e:
            messagebox.showerror("Error", f"Failed to load proxy file: {e}")
            return

    # Update progress callback
    def update_progress(current, total):
        progress_bar["maximum"] = total
        progress_bar["value"] = current
        progress_label.config(text=f"{int((current / total) * 100)}%")
        root.update_idletasks()

    # Run the asynchronous function
    async def run_check():
        try:
            total_checked = await check_numbers(file_path, country_code, proxies, max_connections, update_progress)
            messagebox.showinfo("Done", f"Check completed. {total_checked} numbers processed. Results are saved in results.txt.")
        except Exception as e:
            messagebox.showerror("Error", f"An error occurred: {e}")

    asyncio.run(run_check())

# Function to select the file with phone numbers
def select_file():
    file_path = filedialog.askopenfilename(filetypes=[("Text files", "*.txt")])
    if file_path:
        file_label.config(text=file_path)

# Function to select the proxy file
def select_proxy_file():
    proxy_path = filedialog.askopenfilename(filetypes=[("Text files", "*.txt")])
    if proxy_path:
        proxy_label.config(text=proxy_path)

# Create the main window
root = tk.Tk()
root.title("Binance Phone Checker with AsyncIO")
root.geometry("400x600")

# Label for the phone numbers file
file_label = tk.Label(root, text="No file selected", wraplength=300)
file_label.pack(pady=10)

# Button to select the phone numbers file
file_button = tk.Button(root, text="Select Phone Numbers File", command=select_file)
file_button.pack(pady=5)

# Label for the proxy file
proxy_label = tk.Label(root, text="No proxy file selected", wraplength=300)
proxy_label.pack(pady=10)

# Button to select the proxy file
proxy_button = tk.Button(root, text="Select Proxy File", command=select_proxy_file)
proxy_button.pack(pady=5)

# Input for country code
geo_label = tk.Label(root, text="Enter country code (e.g., RU):")
geo_label.pack(pady=5)
geo_entry = tk.Entry(root)
geo_entry.pack(pady=5)

# Input for number of threads
thread_label = tk.Label(root, text="Enter max connections (e.g., 500):")
thread_label.pack(pady=5)
thread_entry = tk.Entry(root)
thread_entry.insert(0, "500")
thread_entry.pack(pady=5)

# Progress bar
progress_bar = ttk.Progressbar(root, orient="horizontal", length=300, mode="determinate")
progress_bar.pack(pady=10)

# Progress percentage label
progress_label = tk.Label(root, text="0%")
progress_label.pack()

# Button to start checking
start_button = tk.Button(root, text="Start Checking", command=start_checking)
start_button.pack(pady=20)

# Run the GUI
root.mainloop()

1737409332958.png



AGN активничал на форуме и не создавал впечатление скамера, поэтому я решил написать ему в шуточно-уважительном стиле:
1737409705532.png

Что сделал бы человек, который ничего не знает об этой ситуации? Ответил, наверное. Он - нет)

Спустя время он создал статью "[JS] ScammerController | Расширение для xss.pro с детектом СКАМЕРОВ!" и случайно напомнил мне об этой ситуации, поэтому я решил написать еще раз (конечно, я не ожидал что он признается, просто хотел посмотреть на его ответы):
1737409832701.png


1737409872919.png
1737409893886.png



Это был далеко не первый человек которого он заскамил, если верить моему заказчику:
1737410226576.png



Мораль истории: никому не верьте

Я думал написать админу, но было недостаточно доказательств.
Мой заказчик создавал арбитраж, но его за что-то забанили.
 
Надо было назвать топик "скамеры вокруг oceanaric" ) Не везет тебе прям, заказчика забанили, параллельного исполнителя (скамера - антискамера) - забанили, прямо карма какаято... Чур-чур только теперь не меня )))
 
Надо было назвать топик "скамеры вокруг oceanaric" ) Не везет тебе прям, заказчика забанили, параллельного исполнителя - забанили, прямо карма... Чур-чур только теперь не меня )))
Я бы не назвал его параллельным исполнителем. У тебя, кстати, подозрительно дата регистрации совпадает с ним)
 
Пожалуйста, обратите внимание, что пользователь заблокирован
не удивил, к сожалению от скамеров не избавишься которые своих же обманывают
 
Тут писалось на каждом шагу на форуме - юзайте гарант! Есть же автогарант вообще, автомат - как для разумных людей сделано. А вы сами плодите скамеров (т.к.мне нечего покупать и я ничего не продаю, то смотрю на это как абсолютно нейтральный сторонний наблюдатель), потом пополняется армия скамеров, терпил с воплями "на#^али" и Админ вынужден разгребать это говно. А получается в итоге, что "на#^али" то вы себя сами, ведь знаете в какой сфере и компании крутитесь.
 
AGN активничал на форуме и не создавал впечатление скамера
у меня было противоположное ощущение. вопрос лишь времени. тут я не мог понять, когда он в статус уйдет и на какую сумму хочет заскамить
 
Я давно заметил что тот кто больше всех топит против скамеров - часто сам соскамливается, ну и верить никому нельзя, тем более в сети, особенно тем кто говорят что имеют миллионы долларов, так как проверить ты этого не можешь, а тебе соврут не дорого возьмут. Да что там далеко ходить, даже Арут Назарян на ютубе сколько пиздел до талого что он миллиардер, но в конце концов разоблачили пиздабола.
 
где он признался?
Не признался. Я и не ожидал что признается, с другой интонацией прочти)

Арут Назарян
Ой, это тот ещё кадр, как-то наблюдал за его стилем общения в чате - чистое быдло. По тех. части тоже бред написывал.
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх