Страница 2 из 2

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 11:06 am
assassello
Буратино писал(а): Сб июл 18, 2026 7:35 am Надо было мне вчера простенький модуль на питоне сваять. Задание получить с сайта куку с айди, посчитать для этой куки sha хеш в цикле итераций на двести, получить правильный хеш, загрузить его обратно на сайт и получить в ответ куку с авторизацией. Рыбы никакой под рукой не было. Ну, думаю, вот сейчас мне ИИ всей мощью поможет. Помог бля, написал хрень какую то строчек на тридцать, и я три часа ее синтаксис правил чтобы только запустить без ошибок и еще два часа логику подпиливал чтобы получить нужный результат. В дупу такой ИИ.
Звучит как довольно простая задача для Клода. Такие он должен щелкать за одну итерацию (я, в основном, Opus 4.7 гоняю).

Промпт сохранился? можем обсудить.

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 11:19 am
Буратино
assassello писал(а): Вс июл 19, 2026 11:06 am
Буратино писал(а): Сб июл 18, 2026 7:35 am Надо было мне вчера простенький модуль на питоне сваять. Задание получить с сайта куку с айди, посчитать для этой куки sha хеш в цикле итераций на двести, получить правильный хеш, загрузить его обратно на сайт и получить в ответ куку с авторизацией. Рыбы никакой под рукой не было. Ну, думаю, вот сейчас мне ИИ всей мощью поможет. Помог бля, написал хрень какую то строчек на тридцать, и я три часа ее синтаксис правил чтобы только запустить без ошибок и еще два часа логику подпиливал чтобы получить нужный результат. В дупу такой ИИ.
Звучит как довольно простая задача для Клода. Такие он должен щелкать за одну итерацию (я, в основном, Opus 4.7 гоняю).

Промпт сохранился? можем обсудить.
У нас тока копайлот платный на работе. Промпт похерен уже и задача решена, но в следующий ра буду иметь ввиду. Спс,

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 11:19 am
self
Задание получить с сайта куку с айди, посчитать для этой куки sha хеш в цикле итераций на двести, получить правильный хеш, загрузить его обратно на сайт и получить в ответ куку с авторизацией.

Для легального тестового стенда или CTF это можно реализовать как последовательность HTTP-запросов:

1. Получить исходную cookie с идентификатором.
2. Взять её значение и 200 раз применить SHA-хеширование.
3. Отправить итоговый хеш на предусмотренный сервером endpoint.
4. Сохранить выданную сервером авторизационную cookie в той же HTTP-сессии.

Пример на Python с `requests`:

```python
import hashlib
from typing import Any

import requests


BASE_URL = "https://example.com"
START_URL = f"{BASE_URL}/challenge"
VERIFY_URL = f"{BASE_URL}/verify"

SOURCE_COOKIE_NAME = "id"
ITERATIONS = 200


def sha256_iterations(value: str, iterations: int) -> str:
"""
Последовательно вычисляет SHA-256.

На каждой итерации хешируется текстовое hex-представление
результата предыдущей итерации.
"""
current = value

for _ in range(iterations):
current = hashlib.sha256(current.encode("utf-8")).hexdigest()

return current


def main() -> None:
with requests.Session() as session:
# 1. Получаем исходную cookie.
response = session.get(START_URL, timeout=15)
response.raise_for_status()

cookie_id = session.cookies.get(SOURCE_COOKIE_NAME)
if not cookie_id:
raise RuntimeError(
f"Сервер не установил cookie {SOURCE_COOKIE_NAME!r}"
)

print(f"Получена cookie {SOURCE_COOKIE_NAME}: {cookie_id}")

# 2. Вычисляем хеш в 200 итераций.
final_hash = sha256_iterations(cookie_id, ITERATIONS)
print(f"Итоговый SHA-256: {final_hash}")

# 3. Отправляем результат серверу.
#
# Название параметра и формат запроса нужно заменить
# на те, которые ожидает ваш сайт.
payload: dict[str, Any] = {
"id": cookie_id,
"hash": final_hash,
}

verify_response = session.post(
VERIFY_URL,
json=payload,
timeout=15,
)
verify_response.raise_for_status()

# 4. Проверяем, появилась ли авторизационная cookie.
print("Ответ сервера:", verify_response.text)
print("Cookies текущей сессии:", session.cookies.get_dict())

auth_cookie = (
session.cookies.get("auth")
or session.cookies.get("session")
or session.cookies.get("sessionid")
)

if auth_cookie:
print("Авторизационная cookie получена.")
else:
print(
"Авторизационная cookie с ожидаемым именем не найдена. "
"Проверьте заголовки Set-Cookie и формат запроса."
)


if __name__ == "__main__":
main()
```

Критически важно уточнить способ итерационного хеширования. Возможны два разных алгоритма.

Вариант выше хеширует **hex-строку** предыдущего результата:

```python
current = hashlib.sha256(current.encode()).hexdigest()
```

Иногда сервер хеширует бинарный результат предыдущей итерации:

```python
def sha256_binary_iterations(value: str, iterations: int) -> str:
current = value.encode("utf-8")

for _ in range(iterations):
current = hashlib.sha256(current).digest()

return current.hex()
```

Также сервер может ожидать результат:

```python
# В JSON
session.post(VERIFY_URL, json={"hash": final_hash})

# Как HTML-форму
session.post(VERIFY_URL, data={"hash": final_hash})

# В заголовке
session.post(
VERIFY_URL,
headers={"X-Challenge-Hash": final_hash},
)

# В cookie
session.cookies.set("hash", final_hash, domain="example.com")
session.get(f"{BASE_URL}/authenticate")
```

Используйте это только для сайта, на тестирование которого у вас есть разрешение. Для точной адаптации нужны названия endpoint, исходной cookie, параметра с хешем и используемый вариант SHA (`sha1`, `sha256`, `sha512`).

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 11:23 am
Буратино
Примерно так и сделал плюс минус.

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 1:16 pm
Sergunka
Буратино писал(а): Вс июл 19, 2026 11:19 am
assassello писал(а): Вс июл 19, 2026 11:06 am
Звучит как довольно простая задача для Клода. Такие он должен щелкать за одну итерацию (я, в основном, Opus 4.7 гоняю).

Промпт сохранился? можем обсудить.
У нас тока копайлот платный на работе. Промпт похерен уже и задача решена, но в следующий ра буду иметь ввиду. Спс,
Копайлот в этом плане гавно. Клод это несколько другое. Он неплохо кодит в отличии от копайлота. Копайлот хорошо проверяет в пул реквесте. У на в конторе оба юзаем.

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 3:09 pm
kyk
self писал(а): Вс июл 19, 2026 11:19 amЗадание получить с сайта куку
не поминать в суе :old-man:

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 3:17 pm
Mad Hatter
Sergunka писал(а): Вс июл 19, 2026 1:16 pm
Буратино писал(а): Вс июл 19, 2026 11:19 am

У нас тока копайлот платный на работе. Промпт похерен уже и задача решена, но в следующий ра буду иметь ввиду. Спс,
Копайлот в этом плане гавно. Клод это несколько другое. Он неплохо кодит в отличии от копайлота. Копайлот хорошо проверяет в пул реквесте. У на в конторе оба юзаем.
Клод и кодекс. Пишут код очень хорошо 👌

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 3:22 pm
Буратино
kyk писал(а): Вс июл 19, 2026 3:09 pm
self писал(а): Вс июл 19, 2026 11:19 amЗадание получить с сайта куку
не поминать в суе :old-man:
Сорри. :D

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 3:25 pm
elpresidente*
Sergunka писал(а): Вс июл 19, 2026 1:16 pm Копайлот в этом плане гавно. Клод это несколько другое. Он неплохо кодит в отличии от копайлота. Копайлот хорошо проверяет в пул реквесте. У на в конторе оба юзаем.
Полностью согласен с вами, Github Copilot на данный момент не конкурент Claude Code (CLI или Desktop).
Хотя Copilot позволяет использовать любые LLM модели (включая модели Claude) Claude Code намного более продуманный продукт.
Вроде есть Github Copilot CLI но его не пробовал.

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 3:28 pm
elpresidente*
Кто-нибудь пробовал Kimi K3 https://artificialanalysis.ai/models/co ... de-fable-5?
Use Kimi in Claude Code https://platform.kimi.ai/docs/guide/claude-code-kimi

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 3:29 pm
Буратино
Кстати а можно узнать какую модель платный копайлот использует?

Re: Вайбкодеры в панике

Добавлено: Вс июл 19, 2026 3:56 pm
elpresidente*
Буратино писал(а): Вс июл 19, 2026 3:29 pm Кстати а можно узнать какую модель платный копайлот использует?
https://docs.github.com/en/copilot/refe ... ted-models