Skip to content
This repository was archived by the owner on Sep 21, 2021. It is now read-only.

Fix sploitMixin bug that doesn’t properly close service handles. - #137

Open
Hallowizer wants to merge 1 commit into
reswitched:masterfrom
Hallowizer:patch-1
Open

Fix sploitMixin bug that doesn’t properly close service handles.#137
Hallowizer wants to merge 1 commit into
reswitched:masterfrom
Hallowizer:patch-1

Conversation

@Hallowizer

@Hallowizer Hallowizer commented Mar 1, 2021

Copy link
Copy Markdown

Currently, the for loop that closes service handles initializes a variable “shi” for the service handler index, and increments that variable. However, the actual check for finishing the loop is done using the older “si” variable that is set to the highest service handle.

This results in the service handles never being freed, as the condition is always false, unless the user added handles themself, in which case that for loop never exits, and the switch probably crashes eventually because an invalid handle gets freed.

NOTE: I do not have a Switch that is vulnerable to PegaSwitch or fusee-gelee, so I am unable to test this. Please test this code before merging it.

@Hallowizer

Copy link
Copy Markdown
Author

Found another bug;

this.inputObjectId.push(utils.trunc32(id));
this should be pushing to inputObjectIds, not inputObjectId.

@SciresM

SciresM commented Mar 23, 2021

Copy link
Copy Markdown
Contributor

Gonna be honest: nobody maintains or even uses pegaswitch any more.

The effort is certainly appreciated, but you should probably know that the odds of anyone actually testing any of this stuff to merge it are approximately zero.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants