Alllangs Source Code Obfuscation - Upload sh/pl/py/php/r,R/js/ps1/rb scripts
README
For a seamless obfuscation of your scripts, please abide by the following rules:
- Ensure all uploaded scripts are properly named:
- For example, all Python scripts submitted must have a .py extension:
- my_script.py
- Avoid spaces in the names of your scripts:
- my script.py
- Once your script has been dropped into the Upload area, it will be automatically obfuscated.
- After obfuscation completes, you will be redirected to the download page.
- The download page will have a separate "Zip Link" for the obfuscated version of each uploaded script.
- OR, you can just click on the "PACKAGED" link to get all freshly obfuscated scripts in one zip file.
How do I log in?
After payment has been completed and validated, an email will be dispatched to the email address associated with your payment account.
Please note the following:
- Login.page:
- OnDemand
- Your username will be the email address that is linked to your payment account
- Your password will be the #Trans.ID, which will be included in the confirmation email from paypal
- If you are unable to login after payment and account validation, please don't panic!
- Your account is automatically created after payment confirmation. The approval happens after that, and also after passing through a few user eligibility validations.
- What are User Eligibility Validations?
- User eligibility validations were designed to detect and refuse registration attempts from users with unscrupulous intentions.
- If we detect that a request originated from a profile such as this, payment is refunded immediately, and the registration attempt denied.
For monthly subscribers (not OnDemand):
In the space provided for Host List, specify the comma seperated list of hostnames(fqdns) you wish to grant access to your encrypted scripts. Note, the hostname(s) provided during encryption will be only hosts on which the encrypted script(s) can be run. The script(s) will not function on any other host!
For monthly subscribers (not OnDemand):
In the space provided, specify when you wish for your script to expire.
- 7d = 7 Days
- 2w = 2 Weeks
- 4mo = 4 Months
- 7000d = 19+ Years
- July-18-2022_15:00 = Specific date
Examples:
If no option is selected, the default option will be "off". Which means your script will not expire!
In the space provided for Function names, specify the comma seperated list of functions you wish to protect, if using RStudio/Rconsole.
Choose 'no' (recommended) to disable the ability to debug your encrypted script
This setting forces your protected script to validate itself with our servers before allowing users to run it.
- NOTE: If an attempt is made to run a satelite enabled obfuscated script on a host without internet connectivity, the script will abort.
There are many different types of security settings that can be applied to an obfuscated code.
The question is; who needs that?
- Those who wish to retain as much control as is possible of all critical scripts
- Those who wish to prevent unauthorized modification attempts to their published code
Why would anyone need tight control of their scripts?
- For security related reasons of course - that's obvious enough, right?
- Security through obfuscation?
- Absolutely!
- But they said 'security through obfuscation' should not be considered security - how do you reconcile that?
- 'They' said a lot of things...most of them factually incorrect
- 'They' said there's no way to prevent unauthorized modifications to your code once it is in someone else's possession
- The assumption being, if the user is on a system he has full admin rights on, he can do whatever he pleases.
- They said (and some of them actually believe) that an obfuscated script is only marginally (if at all) safer than its plain text version.
- The assumption here also is that any obfuscation (that anyone comes up with) is confined only to the scrambling of a few variables or text.
- That is a bad, woefully reckless assumption!
- Depending on the level of security desired by the script author, settings on an obfuscated script can involve:
- Enforced online sourcing of an obfuscated code
- Online sourcing authorization only for a select list of IPs
- Restrictions of hosts on which an obfuscated code can be executed
- Restrictions of user accounts permitted to run obfuscated scripts
- Prevent executions initiated through certain programs, utilities...
- Allow the executions of code only in specific time periods...
- ..... the list goes on...really!
- Suffice it to say that the worst move a hacker can make (if they get in your system), is to blindly run an obfuscated code authored by us.
- Because, whenever that script fails to run, we will NOT provide detailed reasons. We just gently alert the proper contacts.
- Everything that they said was impossible, we made possible. We proved them wrong.
- Remember to always ask yourself these simple questions:
- Is a castle with doors and windows more secure than a castle without?
- Are your treasures more secure when protected and disguised through elements of the environment, or are they better left out in the open?
- Monitoring & Analysis of Metrics
- Periods of Executions, Users, Hosts/IPs
- Know the different periods during which your scripts are being executed, from where, and by whom
- This feature becomes all the more crucial, when the scripts being obfuscated contain sensitive credentials
- If you need to hardcode passwords or api keys in a script, you will want to ensure you keep tabs on where your scripts are located and who is running them
- We come from a deep SRE background of 20+ years - thus, for us, observability is paramount to adequate code protection
- How does secure imports work?
- There are different types of import security...
- The particular one equipped with all OnDemand scripts is known as online sourcing...
- It means, each time your script is executed, an attempt must be made to remotely source an important component of that script, through our web services, otherwise the execution is aborted
- Yes, this means you can monitor how often your scripts are being sourced...and also obtain other publically available basic information about the source requestor.
- This is yet another opportunity to not only detect the whereabouts of your code, but to also build a unique profile for unidentifiable requestors
- Some users may be unidentifiable for legitimate reasons, but generally, most users who take repeated steps to conceal their identity are usually doing it for rapscallion reasons
- Online Sourcing - Requires a centralized privately reachable web service (note, for OnDemand scripts, we provide that web service)
- Obfuscated scripts that are considered highly sensitive and confidential, will need to remotely validate themselves through this service.
- Validation means that the usages (or executions) of your obfuscated scripts will only be authorized IF and only IF specific conditions can be confirmed
- If the preset conditions are not met, the user will be denied access to the services provided by your obfuscated code. And yes, all denials will be logged.
- With this option enabled, you now have the ability to answer previously unthinkable questions:
- Who is using my code?
- Where has my code been used?
- How often is my code being used?
- Has anyone attempted to hack my script?
- Are there any attempts to bypass the expiration dates of my scripts?
- Why am i seeing these strange usage patterns from UserH? Is it a problem with my code?
- Hmmm...why am I not seeing any activity from UserA?... He bought it but hasn't used it...hmmm
- When a user purchases an online-sourced obfuscated script from you, you should expect to see usage metrics from that user
- Lack of metrics could be the first indicator that a user is attempting to prod your script for vulnerabilities
- In that case, you can immediately, as an extra precaution, change all passwords or api keys that may have been hardcoded in that script
Obfuscation of a variety of scripts (sh,pl,py,rb,r/rmd,ps1,php,js)
- Prevent modifications to commercial scripts - Ensure no one, regardless of privilege, is allowed to make changes to an obfuscated code
- Retain the ability to sell or share scripts without the crippling fear of your intellectual property falling into the wrong hands
- Gathering usage metrics on sensitive code once it is shared with the external/outside world
- Regulate how long commercial scripts can be used - Define and enforce date locks or expiration dates
- Moderate the list of users who are authorized to run specific scripts
- Regulate where (on which systems) your obfuscated code is authorized for usage
- Safeguard confidential credentials stored within your scripts
- example1.py can be re-submitted multiple times
- example2.py can be re-submitted multiple times
- example3.py can be re-submitted multiple times
- example4.py can be re-submitted multiple times
- example5.py can be re-submitted multiple times
- example6.py can be re-submitted multiple times
- example7.py can be re-submitted multiple times
- example8.py can be re-submitted multiple times
- example9.py can be re-submitted multiple times
- example10.py can be re-submitted multiple times
- ....
- example11.py can be re-submitted multiple times
- example12.py can be re-submitted multiple times
- Contact us immediately and provide as much information as possible
- We will prioritize issues like this with the utmost urgency
- If we're unable to fix the problem to your satisfaction
- We will gladly issue you a refund!
Protect Code - Secure variable content, Hide Source Code
- Duplication Prevention
- This feature ensures the name you gave to your obfuscated script at the time of obfuscation is the same name it will be forever known by. If changed, script will abort.
- Expiration Date Control
- This feature ensures all obfuscated scripts expire within the time period mentioned in your payment details. The allowed time is of course verified and validated remotely with our servers. This means we will be notified of all unauthorized attempts to prolong the usage of the obfuscated code.
- Self-Defend/Self-Destruction
- This feature handles the process of terminating the execution of a protected script whenever it is under attack. We understand once an obfuscated script is sent out into the wild, anyone can try all sorts of hacks on it. And as such, we have built in some defensive capabilities in all obfuscated scripts to combat this very real possibility. If during execution of a protected script, we sense that it has been maliciously altered, we will cause the script to abort, and self destruct!
- The plain text version of the script (which you submitted) is buggy and does not work.
- If this is the case, you'll need to fix that first before re-submitting to the obfuscator.
- The obfuscated script was altered in one way or other..i.e. adding/removing text from it, script name was changed, script was put through a debugger
- If this is the case, you'll need to get the fresh copy of the obfuscated script from the zip file that it came in OR just undo the unauthorized changes.
- You're running the obfuscated script on a host on which you configured it not to run on.
- If this is the case, you'll get an error alerting you about the issue.
- You're attempting to import an obfuscated script from within a non-obfuscated plain text script
- If you obfuscated your script with the 'secureimport' setting enabled, then tried to 'include' or 'require' it from an unprotected script, you will be confronted with an error message.
- You're attempting to execute a satelite enabled obfuscated script on a host without internet connectivity
- Whenever a script is obfuscated with the satelite feature enabled, that means the author wants to retain tight control over the usage of the script
- And if this is the case here, the obfuscated script will fail to function, and might even self-destruct if it cannot remotely validate itself.
- We take the security of all scripts protected by us, very seriously.
- And as such, we consider the disclosure of sensitive security details as an unnecessary risky endeavor.
- Nevertheless, it is worth noting that, some of these private settings were developed specifically for clients with unique customization requests.
- Therefore, if you wish to have a particular setting customized to your liking or developed (if it doesnt already exist in our arsenal of features), let us know.
- For obvious security reasons, we have restricted the ability to import an obfuscated code from within a non-obfuscated plain text script.
- If you wish to import scripts from within other scripts, you'll need to ensure all associated scripts are obfuscated.
- If an attempt is made to import an obfuscated script from within a plain text script, the obfuscated code will fail to execute.
-
-
1/Day Access
$ 1.95- [Single script] Obfuscations
- Online Script Submissions
- Up to 1 unique Scripts
- Up to 15 total Re-Submissions
- Enforced Online Sourcing
- [oScripts requires internet connection]
- Works wherever prgm.language is installed!
- Debugging / Traceback Prevention
- Tamper Resistance Capability
- Guard against unauthorized modifications
- Duplication Prevention Feature
- [Script Name Preservation]
- Enforced Expiration Restrictions (1-Day)
-
-
-
-
2/Day Access
$ 2.95- [Single script] Obfuscations
- Online Script Submissions
- Up to 5 unique Scripts
- Up to 50 total Re-Submissions
- Enforced Online Sourcing
- [oScripts requires internet connection]
- Works wherever prgm.language is installed!
- Debugging / Traceback Prevention
- Tamper Resistance Capability
- Guard against unauthorized modifications
- Duplication Prevention Feature
- [Script Name Preservation]
- Enforced Expiration Restrictions (2-Days)
- [oScripts will expire after 48 hours]
-
-
-
-
3/Day Access
$ 4.95- [Single script] Obfuscations
- Online Script Submissions
- Up to 10 unique Scripts
- Up to 100 total Re-Submissions
- Enforced Online Sourcing
- [oScripts requires internet connection]
- Works wherever prgm.language is installed!
- Debugging / Traceback Prevention
- Tamper Resistance Capability
- Guard against unauthorized modifications
- Duplication Prevention Feature
- [Script Name Preservation]
- Enforced Expiration Restrictions (3-days)
- [oScripts will expire after 72 hours]
-
-