fix: use subprocess instead of os.system in make_content.py#3232
fix: use subprocess instead of os.system in make_content.py#3232orbisai0security wants to merge 1 commit into
Conversation
Automated security fix generated by Orbis Security AI
Authorizing OAuth appsYou can connect your GitHub identity to third-party applications using OAuth. When authorizing an OAuth app, you should ensure you trust the application, review who it's developed by, and review the kinds of information the application wants to access. When an OAuth app wants to identify you by your account on GitHub, you'll see a page with the app's developer contact information and a list of the specific data that's being requested. Tip You must verify your email address before you can authorize an OAuth app. OAuth app accessOAuth apps can have read or write access to your GitHub data.
Tip We recommend that you regularly review your authorized integrations. Remove any applications and tokens that haven't been used in a while. For more information, see Reviewing your authorized OAuth apps. About OAuth scopesScopes are named groups of permissions that an OAuth app can request to access both public and non-public data. When you want to use an OAuth app that integrates with GitHub, that app lets you know what type of access to your data will be required. If you grant access to the app, then the app will be able to perform actions on your behalf, such as reading or modifying data. For example, if you want to use an app that requests Note Currently, you can't scope source code access to read-only. A token has the same capabilities to access resources and perform actions on those resources that the owner of the token has, and is further limited by any scopes or permissions granted to the token. A token cannot grant additional access capabilities to a user. For example, an application can create an access token that is configured with an There is a limit of ten tokens that are issued per user/application/scope combination, and a rate limit of ten tokens created per hour. If an application creates more than ten tokens for the same user and the same scopes, the oldest tokens with the same user/application/scope combination are revoked. However, hitting the hourly rate limit will not revoke your oldest token. Instead, it will trigger a re-authorization prompt within the browser, asking the user to double check the permissions they're granting your app. This prompt is intended to give a break to any potential infinite loop the app is stuck in, since there's little to no reason for an app to request ten tokens from the user within an hour. Types of requested dataOAuth apps can request several types of data.
Requesting updated permissionsWhen OAuth apps request new access permissions, they will notify you of the differences between their current permissions and the new permissions. OAuth apps and organizationsWhen you authorize an OAuth app for your personal account, you'll also see how the authorization will affect each organization you're a member of.
If you belong to any organizations with SAML single sign-on (SSO) enabled, and you have created a linked identity for that organization by authenticating via SAML in the past, you must have an active SAML session for each organization each time you authorize an OAuth app. Note If you're encountering issues with an authorized OAuth app or GitHub App accessing an organization that is protected by SAML, you may need to revoke the app from your Authorized GitHub Apps or Authorized OAuth apps page, visit the organization to authenticate and establish an active SAML session, and then attempt to reauthorize the app by accessing it. Further reading |
Summary
Fix high severity security issue in
script/make_content/make_content.py.Vulnerability
V-001script/make_content/make_content.py:83Description: The make_content.py script directly assigns the raw sys.argv list to input_list at line 83 without any sanitization, type enforcement, or allowlist validation. These arguments are subsequently used in CLI operations at line 99. If any argument is passed to os.system(), subprocess with shell=True, or open() without path validation, an attacker with the ability to invoke the script can inject shell metacharacters to execute arbitrary operating system commands.
Changes
script/make_content/make_content.pyVerification
Automated security fix by OrbisAI Security