Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aquiladev/remix-mythx-plugin
The plugin allows executing security check via MythX in Remix IDE
https://github.com/aquiladev/remix-mythx-plugin
ethereum mythx plugin remix security smart-contracts solidity
Last synced: 8 days ago
JSON representation
The plugin allows executing security check via MythX in Remix IDE
- Host: GitHub
- URL: https://github.com/aquiladev/remix-mythx-plugin
- Owner: aquiladev
- License: mit
- Created: 2019-05-17T08:56:49.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-02-03T02:51:45.000Z (almost 2 years ago)
- Last Synced: 2024-11-02T05:24:38.619Z (15 days ago)
- Topics: ethereum, mythx, plugin, remix, security, smart-contracts, solidity
- Language: JavaScript
- Homepage: http://remythx.xyz
- Size: 22 MB
- Stars: 16
- Watchers: 4
- Forks: 14
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Remix MythX plugin
![github pages](https://github.com/aquiladev/remix-mythx-plugin/workflows/github%20pages/badge.svg)
Performs Static and Dynamic Security Analysis using the MythX Cloud Service.
## Install plugin
In order to start using the plugin you need to activate it in plugin manager.![Plugin activation](assets/plugin_activation.png?raw=true "Plugin activation")
The plugin has dependency `Solidity Compiler` plugin, you need to activate in also.
## Credentials
![Plugin settings](assets/plugin_usage.png?raw=true "Plugin settings")You need to open the plugin and click on 'MythX Settings' button on the bottom of the plugin. There is a block with credentials on top of the plugin's Settings page. Those will be used for execution security analysis via MythX.
There are trial credentials by default. You can use those credentials to analyze your contracts, but the report will be restricted.You can create own account on [mythx.io](https://mythx.io/)
## Execution
1. Select smart contract in a `File explorer`
2. Compile the contract in `Solidity compiler` plugin
3. Open `MythX` plugin
4. Select needed contract
5. Click `Analize`, wait response## Report
![Plugin report](assets/plugin_report.png?raw=true "Plugin report")
When the report is received you will see a list of issues. You can click on an issue it will highlight the place of the issue in a code.# Troubleshooting
1. If you run the plugin locally on Chrome, you may face with a white screen issue. The issue happens when a plugin uses more than 10% of the allocated resources for a page. In such a way browser detect and prevent malicious behavior of non-origin content, which is rendered in iframe on the page. The browser stops rendering of the content and waits until the sub-frame process stops using so many resources.**Solutions:**
1. Make sure that you build the plugin for the production environment
2. Make sure that your React Chrome extension is disabled2. Brave browser error:
```Failed to read the 'localStorage' property from 'Window': Access is denied for this document.```
**Solution:**
Set `Cookies` setting to `Allow all cookies` on `chrome://settings/shields` page
# Deployment
## Install- Fork & clone https://github.com/ethereum/remix-plugins-directory.git
- `cd tools/ipfs-upload`
- `npm install`## When you want to update
- `node tools/ipfs-upload/bin/upload-remix-plugin ` : Upload to IPFS
**(Copy the Hash provided)**
- Update version & url of your profile under `/plugins/mythx/profile.json`
- Push (should trigger a Github Action that take the new value and update the `build/profile.json`
- Create a Pull Request and we approve it.