├── .dockerignore ├── .github ├── media │ └── img │ │ ├── evilginx2-logo-512.png │ │ ├── evilginx2-title-black-512.png │ │ └── screen.png └── workflows │ ├── codeql-analysis.yml │ └── test.yml ├── .gitignore ├── .golangci.yml ├── CHANGELOG ├── Dockerfile ├── ISSUE_TEMPLATE.md ├── LICENSE ├── Makefile ├── README.md ├── core ├── banner.go ├── blacklist.go ├── certdb.go ├── config.go ├── help.go ├── http_proxy.go ├── http_server.go ├── nameserver.go ├── phishlet.go ├── session.go ├── shared.go ├── table.go ├── terminal.go └── utils.go ├── database ├── database.go └── db_session.go ├── go.mod ├── go.sum ├── goreleaser.yml ├── log └── log.go ├── main.go ├── main_test.go ├── parser └── parser.go ├── phishlets ├── airbnb.yaml ├── amazon.yaml ├── booking.yaml ├── citrix.yaml ├── coinbase.yaml ├── facebook.yaml ├── github.yaml ├── instagram.yaml ├── linkedin.yaml ├── o365.yaml ├── okta.yaml ├── onelogin.yaml ├── outlook.yaml ├── paypal.yaml ├── protonmail.yaml ├── reddit.yaml ├── tiktok.yaml ├── twitter-mobile.yaml ├── twitter.yaml └── wordpress.org.yaml └── templates └── download_example.html /.dockerignore: -------------------------------------------------------------------------------- 1 | Dockerfile 2 | Makefile 3 | README.md 4 | LICENSE 5 | media 6 | -------------------------------------------------------------------------------- /.github/media/img/evilginx2-logo-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hash3liZer/evilginx2/65d649f23ca6a042bd2a2a23e7727d049ff7ce17/.github/media/img/evilginx2-logo-512.png -------------------------------------------------------------------------------- /.github/media/img/evilginx2-title-black-512.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hash3liZer/evilginx2/65d649f23ca6a042bd2a2a23e7727d049ff7ce17/.github/media/img/evilginx2-title-black-512.png -------------------------------------------------------------------------------- /.github/media/img/screen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hash3liZer/evilginx2/65d649f23ca6a042bd2a2a23e7727d049ff7ce17/.github/media/img/screen.png -------------------------------------------------------------------------------- /.github/workflows/codeql-analysis.yml: -------------------------------------------------------------------------------- 1 | # For most projects, this workflow file will not need changing; you simply need 2 | # to commit it to your repository. 3 | # 4 | # You may wish to alter this file to override the set of languages analyzed, 5 | # or to provide custom queries or build logic. 6 | name: "CodeQL" 7 | 8 | on: 9 | push: 10 | branches: [master] 11 | pull_request: 12 | # The branches below must be a subset of the branches above 13 | branches: [master] 14 | schedule: 15 | - cron: '0 2 * * 2' 16 | 17 | jobs: 18 | analyze: 19 | name: Analyze 20 | runs-on: ubuntu-latest 21 | 22 | strategy: 23 | fail-fast: false 24 | matrix: 25 | # Override automatic language detection by changing the below list 26 | # Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python'] 27 | language: ['go'] 28 | # Learn more... 29 | # https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection 30 | 31 | steps: 32 | - name: Checkout repository 33 | uses: actions/checkout@v2 34 | with: 35 | # We must fetch at least the immediate parents so that if this is 36 | # a pull request then we can checkout the head. 37 | fetch-depth: 2 38 | 39 | # If this run was triggered by a pull request event, then checkout 40 | # the head of the pull request instead of the merge commit. 41 | - run: git checkout HEAD^2 42 | if: ${{ github.event_name == 'pull_request' }} 43 | 44 | # Initializes the CodeQL tools for scanning. 45 | - name: Initialize CodeQL 46 | uses: github/codeql-action/init@v1 47 | with: 48 | languages: ${{ matrix.language }} 49 | # If you wish to specify custom queries, you can do so here or in a config file. 50 | # By default, queries listed here will override any specified in a config file. 51 | # Prefix the list here with "+" to use these queries and those in the config file. 52 | # queries: ./path/to/local/query, your-org/your-repo/queries@main 53 | 54 | # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). 55 | # If this step fails, then you should remove it and run the build manually (see below) 56 | - name: Autobuild 57 | uses: github/codeql-action/autobuild@v1 58 | 59 | # ℹ️ Command-line programs to run using the OS shell. 60 | # 📚 https://git.io/JvXDl 61 | 62 | # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines 63 | # and modify them (or add more) to build your code if your project 64 | # uses a compiled language 65 | 66 | #- run: | 67 | # make bootstrap 68 | # make release 69 | 70 | - name: Perform CodeQL Analysis 71 | uses: github/codeql-action/analyze@v1 72 | -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- 1 | on: [push, pull_request] 2 | name: Pipeline 3 | jobs: 4 | test: 5 | name: Test 6 | runs-on: ubuntu-latest 7 | steps: 8 | - name: Install Go 9 | uses: actions/setup-go@v2 10 | - name: Checkout code 11 | uses: actions/checkout@v2 12 | - name: E2E Test 13 | run: sudo -E go test 14 | env: 15 | REDDITPASSWORD: ${{ secrets.REDDITPASSWORD }} 16 | golangci: 17 | name: Lint 18 | runs-on: ubuntu-latest 19 | steps: 20 | - uses: actions/checkout@v2 21 | - name: golangci-lint 22 | uses: golangci/golangci-lint-action@v2 23 | with: 24 | # Required: the version of golangci-lint is required and must be specified without patch version: we always use the latest patch version. 25 | version: v1.31 26 | goreleaser: 27 | name: Release 28 | if: startsWith(github.ref, 'refs/tags/v') 29 | needs: [test] 30 | runs-on: ubuntu-latest 31 | steps: 32 | - name: Checkout 33 | uses: actions/checkout@v2 34 | with: 35 | fetch-depth: 0 36 | - name: Set up Go 37 | uses: actions/setup-go@v2 38 | - name: Run GoReleaser 39 | uses: goreleaser/goreleaser-action@v2 40 | with: 41 | version: latest 42 | args: release --rm-dist 43 | env: 44 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | phishlets/test-* 2 | /*.exe 3 | /tmp_cfg 4 | /export.json 5 | -------------------------------------------------------------------------------- /.golangci.yml: -------------------------------------------------------------------------------- 1 | linters: 2 | disable: 3 | - errcheck 4 | 5 | issues: 6 | exclude-rules: 7 | - path: db_session\.go 8 | linters: 9 | - staticcheck 10 | text: "CreateIndex is deprecated" 11 | 12 | linters-settings: 13 | nolintlint: 14 | require-explanation: true 15 | require-specific: true -------------------------------------------------------------------------------- /CHANGELOG: -------------------------------------------------------------------------------- 1 | 2.4.0 2 | - Feature: Create and set up pre-phish HTML templates for your campaigns. Create your HTML file and place `{lure_url_html}` or `{lure_url_js}` in code to manage redirection to the phishing page with any form of user interaction. Command: `lures edit template