Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
This is a simple package built for Portobello Shop integrations, and now is available as ETL lib.
Can be used with several services, like:
Comming soon:
Use inheritance and rewrite the three abstract methods (even if you don't use it):
from etl_pbshop import ETL, Connectors
class MyETL(ETL):
def __init__(self):
self.config = MyConfiguration()
self.log = self.config.log
self.connector = Connectors(
config=self.config,
log=self.log,
services={'google': 'PROD', "salesforce": "PROD"}
)
def extract(self):
pass # extract the needed data using Connectors
def transform(self):
pass # do some transformations
def load(self):
pass # upload your transformations
On the main caller, you can simply:
if __name__ == '__main__':
etl = MyETL()
etl.config.start()
try:
etl.run()
exit(0)
except Exception as e:
etl.get_error(f"ERROR on main: {str(e)}")
raise e
finally:
etl.config.finish()
In another class, you can rewrite the ConfigModel class and input your values:
from etl_pbshop.config_model import ConfigModel
class MyConfiguration(ConfigModel):
def __init__(self):
super().__init__(__file__)
self.SQL_QUERIES = {
"produtos": "SELECT * FROM Products2"
}
self.INTEGRATION_SPREADSHEET_ID = '654asd5as1das5d165a4d68'
You can put your environment variables to use the Connectors class.
In a .env
file, set it in groups, like:
INTEGRACAO_ORACLE_ID_1=1
INTEGRACAO_ORACLE_TOKEN_VALUE_1=asd1234asd==
INTEGRACAO_ORACLE_TOKEN_URL_1=http://example.com/token
INTEGRACAO_ORACLE_METHOD_URL_1=http://example.com/method_to_post
INTEGRACAO_ORACLE_USER_1=asd..
INTEGRACAO_ORACLE_PASS_1=qwerty..
INTEGRACAO_ORACLE_ENVIRONMENT_1=DEV
INTEGRACAO_MICROVIX_ID_1=1
INTEGRACAO_MICROVIX_TOKEN_VALUE_1=1234-123-123-1234
INTEGRACAO_MICROVIX_METHOD_URL_1=https://webapi.microvix.com.br/1.0/api/method
INTEGRACAO_MICROVIX_USER_1=user
INTEGRACAO_MICROVIX_PASS_1=pass
INTEGRACAO_MICROVIX_ENVIRONMENT_1=PROD
INTEGRACAO_SALESFORCE_ID_1=1
INTEGRACAO_SALESFORCE_TOKEN_VALUE_1=qwerty
INTEGRACAO_SALESFORCE_METHOD_URL_1=https://login.salesforce.com/services/Soap/u/47.0
INTEGRACAO_SALESFORCE_USER_1=username@example.com
INTEGRACAO_SALESFORCE_PASS_1=myPass
INTEGRACAO_SALESFORCE_ENVIRONMENT_1=PROD
You only need to keep the pattern: INTEGRACAO_<service_name>_<key_name>_<group_id>
More info, please contact: daniel.camargo@portobelloshop.com.br
FAQs
Create your ETL integrations easy and quick!
We found that etl-pbshop demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.