-
Notifications
You must be signed in to change notification settings - Fork 521
OpenCart FW1, FW2, RCE1 and RCE2 #199
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
FW2 added for OpenCart 3 |
Added RCE2 which works for 4.1.0.0+ |
Hello, First of all, thank you again for all your contributions to phpggc. We’re glad to see you so active on the project. However, I have a few questions/comments regarding this merge request: FW1 and RCE1During my tests, I wasn’t able to trigger this payload with a fresh installation of OpenCart across the different versions mentioned. In fact, it seems that the Could you provide more details about your attack scenarios using these gadgets? FW2The gadget has been tested and works as expected. However, you mentioned in the comments that a class change occurs starting from version 3.0.3.4. I believe it would be more relevant to have two separate chains in this kind of situation:
I'd be interested in hearing your opinion on this. RCE2The gadget has been tested and can be merged without any issue. Thanks again for your contribution. |
Thanks for the review; it'd be fine to split the FW into separate gadget chains; I wasn't sure how useful the one for really old versions would be.. but sometimes people don't update! I may not be able to do that myself for a little while, but am happy if anyone else wants to do it in the meantime. As for the autoloading of the db driver classes, I'm not sure why that wouldn't be working. Are you using a mysql-type database when you install? https://github.com/opencart/opencart/blob/master/upload/system/framework.php#L146 ...seems to confirm that the DB classes should autoload successfully (regardless of which class has been configured to be used for the db connection AFAICS). I've never had a problem with that, and I've seen various reports of researchers using gadget chains based on this destructor. I've mostly tested with 4.0.2.3 |
The autoloading of classes in OpenCart seems to be a but fiddly when it comes to case-sensitivity sometimes. As mentioned, I've never had a problem with the MySQLi class but doing some simple tests, it looks like only the lowercase variation of the
So maybe that's what's causing issues in your testing @whattheslime - can you try lowercasing (I am testing in ddev with a debian 12 web container, FWIW) |
Hi, Thank you for your quick response. After testing with the lowercase class name I’ll go ahead and merge your changes, then implement the modifications we discussed earlier. Thanks again for your help! |
No description provided.