Сохранен 45
https://2ch.su/b/res/336754416.html
Добавлена поддержка Ежчана (ejchan.net, ejchan.site). Набегаем, тестируем архивацию, сообщаем о замеченных проблемах.
К сожалению, значительная часть сохранённых до 2024 г. изображений и видео была потеряна (подробности случившегося). Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

Делоем тредслоп игру вместе с анонием. https://play.threadslop.online Выбираем гейдизайнера тред.

 Аноним 20/09/26 Вск 16:18:09 #1 №336754416 
image.png
image.png
Делоем тредслоп игру вместе с анонием.

https://play.threadslop.online

Выбираем гейдизайнера тред.
- пишите свои хотелки
- ???
- профит
Аноним 20/09/26 Вск 16:29:07 #2 №336754700 
1. Зачем прыжок?
2. wasd управление хуйня. Давайте будем чесны.
Аноним 20/09/26 Вск 16:37:24 #3 №336754919 
>>336754700
1. Потому что прыгать - прикольно
2. Чем хуйня? Какие альтернативы?
Аноним 20/09/26 Вск 16:51:08 #4 №336755251 
бамп
Аноним OP 20/09/26 Вск 16:53:14 #5 №336755292 
Котоны, кто не зассал по ссылке зайти, как у вас фпс? Норм или лагает?
sage[mailto:sage] Аноним 20/09/26 Вск 16:54:38 #6 №336755339 
Сажа + репорт спамеру
Аноним 20/09/26 Вск 16:59:48 #7 №336755472 
>>336755292
Я зашол через мобилу, чат не видно
Аноним OP 20/09/26 Вск 17:09:01 #8 №336755738 
>>336755472
Обосрам-с. Щас попробуим починить.
Аноним OP 20/09/26 Вск 17:30:24 #9 №336756355 
Пук среньк
Аноним 20/09/26 Вск 17:43:09 #10 №336756750 
>>336754919
Обычное управление мышкой же. Тут нужно принять судьбоносное решние, игра про цифры или про реакцию. Если второе - то ок, васд управление подходит, но тогда можно и даже нужно не особо углубляться в цифры по шмоту и защите от атак, а просто закидывать мобой разноцветным говном.
Аноним OP 20/09/26 Вск 17:59:52 #11 №336757236 
>>336756750
Сейчас больше на реакцию кмк.
Аноним 20/09/26 Вск 18:32:56 #12 №336758144 
бамп
Аноним OP 20/09/26 Вск 18:34:18 #13 №336758187 
image.png
Аноним OP 20/09/26 Вск 19:45:25 #14 №336760108 
бамп
Аноним OP 20/09/26 Вск 19:52:08 #15 №336760311 
image.png
Каминг сун
Аноним 20/09/26 Вск 20:57:37 #16 №336761950 
Завтречка на завод
Аноним OP 20/09/26 Вск 21:09:23 #17 №336762254 
image.png
Не нужон нам ваш эрпогэ
Аноним OP 20/09/26 Вск 21:56:07 #18 №336763451 
image.png
>>336762254
Аноним 20/09/26 Вск 22:01:56 #19 №336763568 
>>336754416 (OP)
Почему оно такое серое и слопное. Даже с помощью нейросети можно для себя сделать идеальную игру из своих любимых художественных элементов.
Аноним 20/09/26 Вск 22:08:46 #20 №336763734 
>>336763568
что серое?
Аноним OP 20/09/26 Вск 22:19:49 #21 №336763997 
image.png
Продолжаем шатать новое окошко под шмотки.
Алсо теперь шмотки выпавшие рендерятся не как унылые платоничесие объемы, а как труселя.
Аноним 20/09/26 Вск 23:11:13 #22 №336765329 
Бамп
Аноним 20/09/26 Вск 23:15:36 #23 №336765441 
>>336754416 (OP)
Система а-жызни, чтобы игровой мир и все персонажи жили своей жизнью не зависимо смотрит на них игрок или нет
Аноним 20/09/26 Вск 23:16:38 #24 №336765458 
2ac3b04bcbd229edcb2ed93bedf94.jpeg
>>336754416 (OP)
Аноним 20/09/26 Вск 23:17:06 #25 №336765466 
степашка.png
>>336765458
Аноним 20/09/26 Вск 23:17:40 #26 №336765478 
>>336765458
BAZA
Аноним 20/09/26 Вск 23:56:48 #27 №336766334 
...
Аноним 21/09/26 Пнд 00:03:04 #28 №336766474 
F
Аноним 21/09/26 Пнд 00:05:35 #29 №336766514 
>>336754416 (OP)
Все хуйня. За злого играть можно? А за стражу дворца?
Аноним 21/09/26 Пнд 00:06:16 #30 №336766534 
>>336766514
Только грабить корованы
Аноним 21/09/26 Пнд 00:08:57 #31 №336766578 
>>336754416 (OP)
Добавь дракона многоуровнего, которого нужно рейдить
Аноним 21/09/26 Пнд 00:13:06 #32 №336766668 
image.png
не видно врагов на арене
Аноним 21/09/26 Пнд 00:21:24 #33 №336766843 
17888624326290436247.jpg
>>336754416 (OP)
С пивом потянет, честно сказать не ожидал такого качества. Если будешь плотно форсить свою хуйню, есть все шансы взлететь
Аноним 21/09/26 Пнд 00:25:26 #34 №336766928 
блять а чо оно фризит
Аноним 21/09/26 Пнд 00:35:48 #35 №336767137 
>>336754416 (OP)
Золотая паста пахнет типографской краской и чужой завистью, гарантирую как древний мудрец
Аноним 21/09/26 Пнд 00:54:13 #36 №336767515 
image.png
image.png
image.png
image.png
>>336754416 (OP)
Пик 1
Блять почини эту хуету, оранжевые вещи не включены и они не поднимаются или поднимаются, эта хуета не работает как надо

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

Пик 2
Нахуй это говно нужно? засунь эту парашу в обычные события чтобы можно было отключить, вообще похуй чем караван занят, эта залупа просто закрывает часть экрана

Пик 3
Нахуй это говно нужно? Загромождает интерфейс, ПКМ снимает одежду этого достаточно.

Пик 4
Нахуя скилл три отдельным блоком и такой здоровый?


Я вроде и придираюсь, но я тебе пытаюсь дать честный фидбек, я своими ручками набил 90 лвл и выгасил 40к мобов
Аноним 21/09/26 Пнд 00:54:26 #37 №336767517 
>>336754416 (OP)
---
id: 1
title: Session fixation via the move URL-fragment parameter
host: .threadslop.online
severity: Medium
cwe: CWE-384
created: 2026-09-21
status: live
---

# Where found

Клиентское приложение (SPA на TanStack Start), обработчик фрагмента URL в бандле `/assets/routes-*.js`. Один и тот же бандл раздается на всех поддоменах зоны — `threadslop.online`, `www.threadslop.online`, `play.threadslop.online`, `test.threadslop.online`, — поэтому исправление общее для них.

# Summary

Единственный идентификатор доступа к учетной записи — токен `threadslop-token` (UUID в `localStorage`). Он один полностью определяет учетную запись: сервер доверяет ему без пароля и без иной проверки, а сам токен генерируется на клиенте (`crypto.randomUUID`) и передается в теле запросов к `/_serverFn/` и при подключении к игровому WebSocket.

При загрузке страницы приложение читает параметр `move` из фрагмента адреса (`location.hash`) и, если он соответствует форме UUID, молча перезаписывает `threadslop-token` этим значением. Прежний токен уходит в `threadslop-token-prev`, необязательный `nick` из фрагмента пишется в `threadslop-nickname`, после чего фрагмент удаляется из адресной строки через `history.replaceState`.

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

# Reproduction

`<attacker_token>` — токен учетной записи атакующего. Как получить: открыть `https://threadslop.online/` в браузере и взять значение `localStorage['threadslop-token']` (создается автоматически при первом заходе). Токен постоянный и не истекает.

1. От лица жертвы открыть `https://threadslop.online/` обычным образом. В `localStorage['threadslop-token']` появляется собственный токен жертвы.

2. Открыть присланную атакующим ссылку новым переходом (новая вкладка или переход с другой страницы):

```
https://threadslop.online/#move=<attacker_token>&nick=attacker
```

3. Осмотреть `localStorage` и адресную строку:

```
threadslop-token = <attacker_token>
threadslop-token-prev = <прежний токен жертвы>
threadslop-nickname = attacker
location.href = https://threadslop.online/
```

Токен перезаписан значением из ссылки, прежний сохранен в `threadslop-token-prev`, а параметра `move` в адресной строке уже нет.

Экран выбора персонажа при этом показывает персонажей атакующего, а не жертвы: браузер жертвы обращается к `/_serverFn/` с подставленным токеном и получает список персонажей атакующей учетной записи.

# Impact

Токен `threadslop-token` — полный и единственный ключ к учетной записи. Подменив его через ссылку, атакующий переводит жертву в свою учетную запись, ничем не выдавая подмену: подтверждения нет, фрагмент из адреса удаляется.

Последствия для жертвы и учетных записей:

- Дальнейшие действия жертвы — создание и прокачка персонажей, привязка почты при регистрации, покупки и пожертвования — совершаются в учетной записи атакующего, к которой он сохраняет полный доступ, поскольку знает токен.
- Собственная учетная запись жертвы вытесняется: прежний токен уходит в `threadslop-token-prev` и в интерфейсе не восстанавливается — жертва теряет доступ к своему прогрессу, не понимая причины.
- Атакующий, зная общий токен, в любой момент читает и изменяет состояние учетной записи, которой пользуется жертва.
Аноним 21/09/26 Пнд 00:58:47 #38 №336767583 
ЗОЛОТАЯ ПАСТА: аноны, склоните мониторы, проходит богатый человек, докладываю как духовный гусь
Аноним 21/09/26 Пнд 00:59:47 #39 №336767594 
ЗОЛОТАЯ ПАСТА: аноны, склоните мониторы, проходит богатый человек, докладываю как духовный гусь
Аноним 21/09/26 Пнд 01:13:47 #40 №336767813 
image.png
>>336754416 (OP)
Аноним 21/09/26 Пнд 01:14:41 #41 №336767831 
Кстати вы знали, что Буба лох?
Аноним 21/09/26 Пнд 01:36:35 #42 №336768232 
>>336754416 (OP)
✻ Confirmed: the server relays arbitrary client-pushed feed events verbatim — all 3 crafted payloads reached the victim, including a
spoofed SYSTEM actor, an injected URL, and a bogus event type with an HTML-looking payload. This is feed spoofing / content injection
into all players' feeds. Now the severity hinges on rendering (escaped text = Medium spoofing; HTML/link execution = High XSS). Let me
examine the feed renderer.
Аноним 21/09/26 Пнд 01:56:28 #43 №336768521 
>>336754416 (OP)
---
id: 2
title: Client-side denial of service via crafted feed WebSocket event
host: .threadslop.online
severity: Medium
cwe: CWE-20
created: 2026-09-21
status: live
evidence: feed-dos/crash-page.png
---

# Where found

Игровой сервер реального времени на WebSocket `wss://play.threadslop.online/gs` — обработка сообщений типа `feed`, которые сервер рассылает другим игрокам.

# Summary

Игровой сервер транслирует другим подключенным игрокам события ленты (`feed`), присланные клиентом, без проверки. Клиент отправляет кадр `{"t":"b","e":"feed","p":{...}}`, и объект `p` доходит до остальных игроков как есть — тип события и содержимое полностью под контролем отправителя.

Принимающий клиент строит строку ленты, вызывая шаблон по типу события: `feed[event.t](...)`. Набор типов фиксирован, отдельного значения по умолчанию нет; для неизвестного типа `feed[event.t]` равно `undefined`, и вызов завершается `TypeError` во время рендера. Исключение обрушивает все приложение: вместо игры отображается страница ошибки «This page didn't load».

# Reproduction

`<attacker_token>`, `<attacker_char_id>` — токен и идентификатор персонажа атакующего. Как получить: открыть `https://threadslop.online/`, создать персонажа кнопкой «+ НОВЫЙ ПЕРСОНАЖ»; `<attacker_token>` берется из `localStorage['threadslop-token']`, `<attacker_char_id>` — id этого персонажа. Регистрация не требуется, токен создается автоматически.

`v` — версия протокола, которую сервер сообщает в приветственном кадре `{"t":"srv","proto":160}` сразу после установления соединения; в кадр присоединения подставляется это значение.

1. Жертва открывает `https://threadslop.online/`, выбирает персонажа и нажимает «ИГРАТЬ» — загружается игра (виден холст и интерфейс).

2. Атакующий подключается к `wss://play.threadslop.online/gs` и отправляет кадр присоединения тем же персонажем; свежезашедшие игроки попадают в одну стартовую зону:

```
{"t":"auth","v":160,"cid":"<attacker_char_id>","dt":"<attacker_token>"}
```

3. Атакующий отправляет одно событие ленты с несуществующим типом:

```
{"t":"b","e":"feed","p":{"t":"zzcrash","a":"x"}}
```

Через мгновение игра жертвы падает: холст и интерфейс исчезают, на их месте — страница «This page didn't load / Something went wrong on our end» (`feed-dos/crash-page.png`). Возврат в игру возможен только перезагрузкой страницы, и следующее такое сообщение обрушивает клиент снова.

# Impact

Аноним — токен и персонаж создаются бесплатно, без регистрации — одним WebSocket-сообщением обрушивает клиент другого игрока, находящегося в игре и получающего рассылку ленты. Повторная отправка удерживает игрока в состоянии отказа: клиент падает при каждом таком сообщении, и играть невозможно, пока идет атака.
Аноним 21/09/26 Пнд 02:05:56 #44 №336768643 
>>336754416 (OP)
---
id: 3
title: Sender spoofing via the chat WebSocket event
host: play.threadslop.online
severity: Medium
cwe: CWE-345
created: 2026-09-21
status: live
evidence: chat-spoof/chat-spoof.png
---

# Where found

Игровой сервер реального времени на WebSocket `wss://play.threadslop.online/gs`, обработчик сообщений типа `chat`.

# Summary

Игровой сервер рассылает другим игрокам сообщения чата, присланные клиентом, не проверяя заявленного отправителя. Клиент отправляет кадр `{"t":"b","e":"chat","p":{"id":...,"nickname":...,"level":...,"text":...}}`, и сервер транслирует поля `id`, `nickname`, `level` и `text` остальным игрокам без изменений.

Принимающий клиент отображает сообщение под именем `nickname` из кадра, если `id` не соответствует игроку в списке присутствующих. Отправитель, таким образом, полностью задает отображаемое имя автора, его уровень и текст сообщения.

# Reproduction

`<attacker_token>`, `<attacker_char_id>` — токен и идентификатор персонажа атакующего. Как получить: открыть `https://threadslop.online/`, создать персонажа кнопкой «+ НОВЫЙ ПЕРСОНАЖ»; `<attacker_token>` берется из `localStorage['threadslop-token']`, `<attacker_char_id>` — id этого персонажа. Регистрация не требуется, токен создается автоматически.

1. Жертва (любой другой игрок) находится в игре, у нее открыт чат.

2. Атакующий подключается к `wss://play.threadslop.online/gs` и отправляет кадр присоединения. Здесь `v` — версия протокола из приветственного кадра `{"t":"srv","proto":160}`, приходящего сразу после соединения; на момент проверки — `160`:

```
{"t":"auth","v":160,"cid":"<attacker_char_id>","dt":"<attacker_token>"}
```

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

```
{"t":"b","e":"chat","p":{"id":"ffffffff-0000-0000-0000-000000000000","nickname":"АДМИН","level":99,"text":"раздаем голду на evil-phish.example.com"}}
```

В чате жертвы появляется строка `АДМИН [99]: раздаем голду на evil-phish.example.com` (`chat-spoof/chat-spoof.png`) — имя автора, уровень и текст полностью заданы атакующим.

# Impact

Любой аноним — токен и персонаж создаются бесплатно, без регистрации — рассылает другим игрокам сообщения чата под произвольным именем: чужим именем настоящего игрока или именем вроде «АДМИН»/«SYSTEM». Текст сообщения тоже задается атакующим.

Это позволяет выдавать себя за других игроков и за администрацию: вбрасывать в чат ложные «официальные» объявления с фишинговыми ссылками и приписывать конкретным игрокам сообщения, которых они не отправляли.
Аноним 21/09/26 Пнд 02:15:30 #45 №336768775 
>>336757236
Не слушай долбоёба, васд всегда был базой и будет.
Такие пидорасы как правило даже в игры не играют, зашли мышкой тыкнули и съебали, никакого внимания на игре.
Если прям дохуя кому надо будет, можно альтернативное движение сделать и продавать его как длс, чтобы пидорасы страдали.
comments powered by Disqus