Как стать автором
Обновить

Комментарии 72

Интересно, повлечёт ли это за собой какие-то юридические проблемы для NVidia.

Большой респект за проведённое расследование, всегда было интересно, каким образом реализовано ограничение в клиентском приложении, реальность оказалась довольно прозаичной :)

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

С другой стороны, это еще раз показывает, насколько это еще сырая софтина. Технически она работает, но вот в плане безопасности - не удивлюсь, если ее взломают.

Я пару лет назад гонял к ним на собеседование, как раз вакансия была связана с тестированием GFN'а, так вот где-то половина вопросов была про всякие сглаживания, тесселяции и прочие подобные гафоновопросы спрашивали - ну совсем не в тему, как мне тогда показалось.

Что контент Nintendo делает на серверах geforce now - не понятно. Если вспомнить что Nvidia поставляет чипы для Nintendo Switch, то можно предположить что это какое-то tech demo с помощью которого они пытались договориться с Nintendo о том чтобы на geforce now были их игры.

По God of War все понятно - скорее всего реально планируется ПК порт так как разработчики делали неоднозначные намеки и издатель "PlayStation Mobile, Inc." как раз используется для выпуска ПК портов.

Но у меня есть одна претензия к тексту:

Нижесказанное приводится в контексте законов США.

Называть пользователей эмуляторов консолей пиратами - весьма спорное утверждение. На заре эмуляции компании много раз пытались судиться с разработчиками эмуляторов. В итоге, согласно закону, clean room эмуляторы разрешены если они не включают программное обеспечение (BIOS) консоли. Опять же согласно закону пользователь имеет право сдампить BIOS своей консоли и использовать его в эмуляторе. Все это подтверждено многочисленными судебными решениями.

Точно так же как и весьма спорное утверждение что у пользователей нет легального права делать бекапы своих купленных игр. Создание бекапов (1 копии точно) купленного программного обеспечения (включая игры) разрешено законом.

Эти утверждения я сделал на основе информации полученной тут https://en-americas-support.nintendo.com/app/answers/detail/a_id/55888/~/intellectual-property-%26-piracy-faq#s1q4

Где написано, что копирование игр Nintendo любым способом, является нарушением их прав.

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

Nintendo очень любит говорить что законы, разрешающие резервные копии, не распространяются на игры потому что *вставьте 20 причин*. Уже сколько лет прошло, но что-то в судебном порядке они это доказать не торопятся.

Но ладно, давайте перестрахуемся. Эмуляторы могут запускать игры с оригинальных дисков. При условии что мы сдампили системный софт и/или bios со своей консоли данный вариант абсолютно легален. Таким образом утверждение что Dolphin или другие эмуляторы создан для запуска пиратских копий абсолютно некорректно.

Очень надеюсь что это некорректное утверждение про нелегальность эмуляторов будет исправлено в тексте так же быстро как туда была добавлена ссылка на голословные заявления Nintendo о нелегальности бекапов игр.

Изменил формулировку, спасибо за замечание.

Если говорить об эмуляторе, то в США, насколько я помню (не очень внимательно слежу), регулярно возникают дела из категории "торренты - это пиратство", т.е. "инструмент позволяет нарушать наши права - надо бы его запретить". Чаще всё заканчивается как в прецеденте с пишущими (видео?)магнитофонами - т.к. инструмент допускает легальное использование, то мало ли что он еще позволяет - боритесь с нарушителями, а не с инструментом. Но могут быть и отклонения от этого.

Отсюда же и нюанс с дампом bios'а - bios тоже ПО, а потому распространять его вместе с эмулятором точно нельзя без разрешения правообладателя bios'а.

Но в США еще может сработать принцип "нет ущерба - нет последствий". Если у тебя есть честно купленная консоль и игра, то от того, что ты сам всё себе скопировал и запустил (но никому не распространял) - то и ущерба нет.

Но тут лучше бы спецы по американскому праву прокомментировали, т.к. что было когда-то для случая США верно - могло уже и поменяться, у них-то право прецедентное, т.е. закон может творить еще и суд, а не только законодательный орган.

Nintendo очень любит говорить что законы, разрешающие резервные копии, не распространяются на игры

Думаю, причина в том, что диски "защищены от копирования", в том числе от вроде бы законного создания резервной копии. И даже если эта защита чисто номинальная, любое действие по её обходу - нарушает DMCA.
А сделать закон, что изготовитель технических средств, мешающих законным правам покупателя, должен за свой счет обеспечивать покупателям реализацию этих прав (здесь: предоставить резервную копию легально купленной игры/фильма/музыки), нереально - за это депутатам никто не заплатит.

Ну вы же понимаете, что написать они могут что угодно. Но любая бумажка (страница в интернете) авторитетна ровно настолько, насколько соответствует более авторитетному источнику (в данном случае - закону).

Я не разбираюсь в законодательстве США, но если вы приведёте именно его в пример, то претензия будет и правда не состоятельна.

Да, я согласен с тем, что это может быть законно, и Nintendo выгодно так говорить.

Закон страны(не важно какой) выше любых законов организаций. Иначе они(бизнес) всё что угодно могли сами себе разрешить.
В РФ кстати так же копирование разрешено законом и игр он тоже касается(любого софта).

Ну не прямо уж так разрешено... Резервную копию создать можно, а вот копию для иных целей - отсылают к договору с правообладателем.

Статья 1280 [ГК РФ]. Право пользователя программы для ЭВМ и базы данных

1. Лицо, правомерно владеющее экземпляром программы для ЭВМ или экземпляром базы данных (пользователь), вправе без разрешения автора или иного правообладателя и без выплаты дополнительного вознаграждения:

1) осуществлять действия, необходимые для функционирования программы для ЭВМ или базы данных (в том числе в ходе использования в соответствии с их назначением), включая запись и хранение в памяти ЭВМ (одной ЭВМ или одного пользователя сети), внесение в программу для ЭВМ или базу данных изменений исключительно в целях их функционирования на технических средствах пользователя, исправление явных ошибок, если иное не предусмотрено договором с правообладателем;

2) изготовить копию программы для ЭВМ или базы данных при условии, что эта копия предназначена только для архивных целей или для замены правомерно приобретенного экземпляра в случаях, когда такой экземпляр утерян, уничтожен или стал непригоден для использования. При этом копия программы для ЭВМ или базы данных не может быть использована в иных целях, чем цели, указанные в подпункте 1 настоящего пункта, и должна быть уничтожена, если владение экземпляром таких программы или базы данных перестало быть правомерным.

Иные цели это уже так или иначе незаконное распространение. К нему закон большинства стран относится отрицательно.
Есть ещё законная возможность покопаться в коде, но она напрямую не относится ни к первому, ни ко второму.

"Иные цели" не надо домысливать, они тут же и определены - это всё, что не разрешено в предыдущем пункте, в котором есть приписка "если иное не предусмотрено договором с правообладателем", что позволяет понизить в договоре перечень прав пользователя по сравнению с указанным в законе.

Понимаю, конечно, что копирасты постарались, но тем не менее... В предыдущей редакции статьи было еще хуже - в 2008г. законодатели вообще забыли про то, что программу-то на компьютере пользователя надо как-то запускать.

>> внесение в программу для ЭВМ или базу данных изменений исключительно в целях их функционирования на технических средствах пользователя

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

Вот эта строка как раз и разрешает делать что либо угодно

А приписка "если иное не предусмотрено договором с правообладателем" позволяет ограничить это право в лицензионном договоре.

Если в лицензионном договоре об этом не "позаботились" - то у вас право есть, а если "иное" предусмотрели, то "ой"... Плюс еще есть ст.1299 ГК РФ про ТСЗАП, где говорится

2. В отношении произведений не допускается:

1) осуществление без разрешения автора или иного правообладателя действий, направленных на то, чтобы устранить ограничения использования произведения, установленные путем применения технических средств защиты авторских прав;

2) изготовление, распространение, сдача в прокат, предоставление во временное безвозмездное пользование, импорт, реклама любой технологии, любого технического устройства или их компонентов, использование таких технических средств в целях получения прибыли либо оказание соответствующих услуг, если в результате таких действий становится невозможным использование технических средств защиты авторских прав либо эти технические средства не смогут обеспечить надлежащую защиту указанных прав.

Так что будет надеяться, что у нинденды ТСЗАП не предусмотрен...

Кстати, пп.2 п.2 ст.1299 - пожалуй будет "порезиновей" ст.273 УК РФ...

Это уже самодеятельность Nintendo. В американском законодательстве есть интересный прецедент Lewis Galoob Toys против Nintendo of America, который, фактически, дает любому обладателю легальной копии игры и игровой приставки право делать с приобретенным продуктом все, что угодно, пока это делается сугубо для личного пользования (то есть, и резервные копии создавать, и дамп BIOS, и даже модифицировать код игры), причем они на этом деле еще и потеряли более 15 миллионов долларов. Наверное, до сих пор забыть не могут.

Так то в Америке… В других юрисдикциях может и сработать ведь, вот на это и рассчитывают.

Да это может сработать даже в Америке, рядовой пользователь, который не особо интересуется вопросом, вряд ли полезет в дебри законодательства, ведь вот же, "заботливая Nintendo все разжевала простым языком, не будут же они вводить людей в заблуждение". Думаю, на то и рассчитано, не случайно же этот пассаж про якобы нелегальное копирование игр выложен в том числе в региональном разделе сайта для США.

Если что, в плейграунде есть справа вкладка "schema" со структурой api

А если загнать в GraphQL Voyager, то вообще наглядно получается.

Я все проделывал на старом интерфейсе, в котором этого не было. Следственно и статья о той версии.

С God of War есть вариант, когда просто играешь на «оригинальных» PS в облаке.

Это не объясняет почему там была секция Steam для этой игры с датой выхода TBD

А пираты тут при чём? Где доказательства, что это они, а не сама нвидиа там что-то тестирует.

Так вы пробовали эти игры запускать?

А так на 4pda был workaround как поиграть в игры, которых нет на GFN. Но там правда нужно было их сначала скачать и установить ...

По поводу Super Mario Bros. Wii может это как-то связано с сотрудничеством nvidia с нинтендо. На nvidia shield в китае можно запускать некоторые игры.

https://nintendo.fandom.com/wiki/Nvidia_Shield

Это очень интересно, но других игр из этого списка там нет. И плашку NVIDIA CONFIDENTIAL не объясняет.

Ну еще, теоретически, Nvidia могла получить персональное разрешение от правообладателя. Он на то и правообладатель, что делает что хочет, в т.ч. дозволяя Юпитеру то, что не дозволяет быку. А вот зачем и почему - действительно, фиг его знает...

на reddit помнится был топик о том что список игр GFN сильно зависит от страны что может обьяснить некоторые тайтлы.. но чтобы эмулятор.. вангую что это разработчики (или скорее админы) самой гейвидии игрались и тестировали да не спрятали хорошенько. хотя лично я надеюсь (хотя и особо не верю) что рано или поздно подобные сервисы повзолят поиграть во что угодно. есть у меня в стиме один тайтл, исключительно виндовый который прекрастно работает через proton но валит любую винду в синьку.. dark void емнип зовётся.. так вот чтобы поиграть в подобные поделия далеко не все захотят ставить себе линукс или хрюшку. с играми для плойки или ксбоха всё ещё сложнее, мало того что их надо купить отдельно так ещё найти место, порты в телевизоре, дополнительно иногда чистить и обслуживать. да и далеко не все согласятся пустить в свою сеть иксбокс, а поиграть на нём всё равно хотят

У них есть специальный емейл для репорта "проблем": psirt@nvidia.com

Когда нашел sandbox escape то мне на следующий день уже написали ответ.

Думаю модератор с пометкой "NVIDIA STAFF" должен знать об этом, и он вероятно направил меня туда где надо было: https://www.nvidia.com/en-us/geforce/forums/gfn-tech-support/46/452082/confidential
Скорее всего я не получил ответ, так как это для них не является уязвимостью.

driverfeedback@nvidia.com -> Driver Feedback, фидбек по драйверам, могу вам точно сказать что он ошибся и что к драйверам это ни имеет никакого отношения.

А вот на офф сайте можно найти "To report a potential security vulnerability in any NVIDIA product": https://www.nvidia.com/en-us/security/report-vulnerability/

Да, я понимаю, но можно сказать что это и к security vulnerability это не имеет отношения, так как все, что я описал не позволяет навредить серверам, ни получить доступ к личной информации, ни пиратить игры.

Т.е. по вашему публично выставленный graphql, в котором есть конфиденциальная информация которая там не должна быть не является "проблемой безопасности" ?

Если вы перевели "security vulnerability" как "проблема безопасности" то вероятно является. Но я прочитав, понимаю это как "уязвимость безопасности". И тут не вижу нигде уязвимостей.

PSIRT переводиться как Product Security Incident Response Team, так что проблемы с безопасностью нужно обсуждать с ними, это про graphql и конфиденциальную информацию.

Если вы же хотите им написать про пиратство и лицензии то там есть пункт ниже: "How do I report software piracy (copying, selling, or use of software that hasn't been properly licensed)?"

НЛО прилетело и опубликовало эту надпись здесь

К сожалению клиентское приложение не делает запросы для поиска игр на сервер, а загружает список всех игр и ищет уже локально. И список этот отдельный от списка для главного экрана. А когда я пытался оставить возможность поиска, приложение вылетало. Наверно это слишком много результатов для него. Вы можете достать список игр из GraphQL и поискать там.

Какие неподдерживаемые игры вам удалось запустить при их наличии?

Игра, которая запускалась из Steam в GFN четыре месяца назад, Gas Guzzlers Extreme там присутствует, но не запускается, а другие не пробовал.

а через браузерную версию работать будет

Пока нет, так как нужно улучшение прокси сервера. Возможно позже этим займусь.

Установил прокси, пашет.

Что ещё есть Ghost of Tsushima (PS exclusive), Horizon Forbidden West (даже ещё не вышла), Fallout 4, Cod, Red Dead Redemption 2, Crysis Remasterd, Resident Evil 7, BF1, BF4, Skyrim, GTA 5, GTA 4 Cemplete Edition...кч дофига чего что хотелось бы видеть на сервисе.

И все существующие лаунчеры для игр

При запуске пишет что "игры больше нет" так что точно не поиграешь

@IGHOR А можете сразу дамп этого списка из 18 тыс игр выложить? Чтобы посмотреть что там, пока не удалили, да и избавит от необходимости установки приложения.

Вам не надо устанавливать приложение, а можете следовать инструкциям в моем видео. Там вы сами получите все результаты.

Nitendo в Swtich использует же NVidia Tegra TX1 базируемый чип - девкит для которого так или иначе присутсвует у компании NVidia во многих экземплярах в целях тестирования - так что никому не надо там нелегально копировать игры с носителей - они у них и так есть именно с дев-китами.

upd: Ну и сама GFN тоже может на jetson/tegra крутиться внутренне для внутреннихцелей Нвидия - поэтому игры и в списке.

На девкитах не запускаются retail версии игр, насколько я знаю, там набор ключей другой. И не очень понятно почему NVIDIA будет тестировать нинтендовские приставки… Их дело сделать SoC, а помимо него там ещё много всего…

Их дело - сделать экоситему(базовую OS и драйвера под видео минимум). И у НВидии потрясающий отдел тестирования (одна из лаб ранее даже в Мск была - может и есть) - и тестируют они совместимость со своим железом. Ранее вы могли у них найти PS3 игры (из-за их чипа в ней) - но это не значит, что они у кого-то что-то воровали.

Ну а про retail игры - она таковыми становятся только после того, как оттестированы - и номер версии, разумеется, совпадает.

Неужели я поиграю в Kerbal Space Program.

и завесишь весь топ 50 суперкомпьютеров?)

Удалось?

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

Прокси остается работать на macOS и Windows, в демонстрационных целях.

спасибо, попробую еще раз сегодня)

@IGHORможно текстовый запрос добавить в статью, интерфейс этот уже похоже убрали.

Это и была ссылка на текстовый запрос. Интерфейс появляется когда отправлять GET запрос, а текстовый ответ когда POST.

у меня в ответ появляется только ошибка

{"errors":[{"message":"Must provide query string.","locations":null,"path":null}]}

если просто открыть в браузере, это ж и есть GET

я поэтому и попросил тело запроса

А вы используйте ссылки из секции Ссылки в статье. Там все тело запроса указано в параметре query=

Уже исправили и так больше нельзя.

Пофиксили =) буквально на глазах один запрос отработал, а следующий уже пустой пришел)

Интерфейс убрали, но можно поиграться в гугле (как бы это не было странно).
https://webcache.googleusercontent.com/search?q=cache:https://games.geforce.com/graphql или например вот здесь: legacy.graphqlbin.com/new
Вверху вводим адрес точки: https://games.geforce.com/graphql
Дальше можно вставить такой запрос в левом поле и получить данные.
Запрос
{
apps(first: 10, vpcId: "NP-FRK-03", language: "ru_RU", ) {
numberReturned
pageInfo{
hasNextPage
endCursor
}
items {
id
title
shortDescription
longDescription
androidPackageName
apks {
type
version
url
}
appStore
contentRatings {
type
categoryKey
contentDescriptorKeys
interactiveElementKeys
}
developerName
displaysOwnRatingDuringGameplay
geForceUrl
genres
images {
ANSEL_360_IMAGES
FEATURE_IMAGE
GAME_BOX_ART
GAME_ICON
GAME_LOGO
HERO_IMAGE
KEY_ART
KEY_ICON
KEY_IMAGE
MARQUEE_HERO_IMAGE
SCREENSHOT_THUMB
SCREENSHOTS
TV_BANNER
VIDEO_TRAILER
}
keywords
maxLocalPlayers
maxOnlinePlayers
numberOfFakeControllers
nvidiaTech {
ANSEL
FREESTYLE
HDR
HIGHLIGHTS
NGX
}
osType
publisherName
shortName
sortName
storeIds {
store
id
}
streamingModes {
framesPerSecond
heightInPixels
widthInPixels
}
supportedLanguages {
language
interface
audio
subtitles
}
supportedControls
supportedGamePlayModes
type
cmsId
computedValues {
allKeywords
earliestReleaseDate
earliestStreetDate
}
variants {
appStore
id
publisherName
shortName
gfn {
status
releaseDate
isInLibrary
marketingDate
optimizationStatus
}
}
}
}
}


first: 10, можно убрать, а язык поменять, например на en_US
Правда они там уже почистили и теперь вместо 18 тысяч выдает всего 1043 записи.

Да! Прикольно, работает!)

Тут копирайтеры не могут определиться, автор украинский блогер или русский датамайнер

Уже украинский датамайнер

Превращение в украинского разработчика произошло успешно

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

Например такое? С помощью реверс инжиниринга я нашел ошибку в обработке запросов на Nvidia GeforceNOW сервере, и так получил все скрытые ответы из их базы.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Изменить настройки темы

Истории