├── .github ├── ISSUE_TEMPLATE │ └── bug_report.md └── workflows │ ├── build-debian.yml │ └── publish.yml ├── .gitignore ├── .idea ├── .gitignore ├── inspectionProfiles │ ├── Project_Default.xml │ └── profiles_settings.xml ├── misc.xml ├── modules.xml ├── okadminfinder.iml └── vcs.xml ├── LICENSE ├── README.md ├── main.py ├── okadminfinder ├── __init__.py ├── _utils.py ├── app.py ├── assets │ ├── admin-panel_links.yml │ └── user-agents.yml ├── cache.py ├── credit.py ├── errors_handler.py ├── exceptions.py ├── logging.py ├── network.py ├── process.py └── version.py ├── pyproject.toml └── tests ├── test_app.py ├── test_cache.py ├── test_credit.py ├── test_exceptions.py ├── test_network.py ├── test_process.py ├── test_utils.py └── test_version.py /.github/ISSUE_TEMPLATE/bug_report.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Bug report 3 | about: Create a report to help us improve 4 | title: '' 5 | labels: '' 6 | assignees: '' 7 | 8 | --- 9 | 10 | **Describe the bug** 11 | A clear and concise description of what the bug is. 12 | 13 | **Expected behavior** 14 | A clear and concise description of what you expected to happen. 15 | 16 | **Error Message** 17 | Full error message received 18 | 19 | **Desktop (please complete the following information):** 20 | - OS: [e.g. Ubuntu...] 21 | - Version [e.g. 18.04 ...] 22 | - Python version [e.g. 3.7.2 ...] 23 | 24 | **Additional context** 25 | Add any other context about the problem here. 26 | -------------------------------------------------------------------------------- /.github/workflows/build-debian.yml: -------------------------------------------------------------------------------- 1 | name: Build and Upload Debian Package 2 | 3 | on: 4 | push: 5 | tags: 6 | - '*' # This will trigger the workflow for any tag that starts with any character 7 | 8 | jobs: 9 | build: 10 | runs-on: ubuntu-latest 11 | 12 | steps: 13 | - name: Checkout repository 14 | uses: actions/checkout@v4 15 | 16 | - name: Set up Python 17 | uses: actions/setup-python@v5 18 | with: 19 | python-version: '3.11' 20 | 21 | - name: Install build dependencies 22 | run: | 23 | python3 -V 24 | curl -sSL https://install.python-poetry.org | python3 - 25 | export PATH=$HOME/.local/bin:$PATH 26 | sudo apt-get update 27 | sudo apt-get install -y build-essential debhelper dh-python python3-all pybuild-plugin-pyproject 28 | 29 | - name: Prepare orig.tar.gz 30 | run: | 31 | cd .. 32 | tar czf okadminfinder_${{ github.ref_name }}.orig.tar.gz okadminfinder 33 | ls -ll 34 | 35 | - name: Build Debian package 36 | run: | 37 | export PYTHON=python3 38 | dpkg-buildpackage -rfakeroot -uc -us 39 | 40 | - name: Copy Debian package to working directory 41 | run: | 42 | mkdir builds 43 | cp ../okadminfinder_* builds/ 44 | 45 | - name: List files in builds directory 46 | run: | 47 | ls -ll builds/ # Verify files are present 48 | 49 | - name: Release 50 | uses: softprops/action-gh-release@v2 51 | if: startsWith(github.ref, 'refs/tags/') 52 | with: 53 | files: | 54 | builds/okadminfinder_${{ github.ref_name }}-1_all.deb 55 | -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- 1 | name: Publish Poetry Package 2 | 3 | on: 4 | push: 5 | tags: 6 | - '*' 7 | 8 | jobs: 9 | build: 10 | runs-on: ubuntu-latest 11 | 12 | steps: 13 | - name: Checkout code 14 | uses: actions/checkout@v4 15 | 16 | - name: Set up Python 17 | uses: actions/setup-python@v5 18 | with: 19 | python-version: '3.11' # Adjust the Python version as needed 20 | 21 | - name: Install Poetry 22 | run: | 23 | curl -sSL https://install.python-poetry.org | python3 - 24 | export PATH=$HOME/.local/bin:$PATH 25 | 26 | - name: Install dependencies 27 | run: poetry install 28 | 29 | - name: Build package 30 | run: poetry build 31 | 32 | - name: Publish to PyPI 33 | env: 34 | POETRY_PYPI_TOKEN_PYPI: ${{ secrets.PYPI_TOKEN }} 35 | run: poetry publish --username __token__ --password $POETRY_PYPI_TOKEN_PYPI 36 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Byte-compiled / optimized / DLL files 2 | __pycache__/ 3 | *.py[cod] 4 | *$py.class 5 | 6 | # C extensions 7 | *.so 8 | 9 | # Distribution / packaging 10 | .Python 11 | build/ 12 | develop-eggs/ 13 | dist/ 14 | downloads/ 15 | eggs/ 16 | .eggs/ 17 | lib/ 18 | lib64/ 19 | parts/ 20 | sdist/ 21 | var/ 22 | wheels/ 23 | share/python-wheels/ 24 | *.egg-info/ 25 | .installed.cfg 26 | *.egg 27 | MANIFEST 28 | 29 | # PyInstaller 30 | # Usually these files are written by a python script from a template 31 | # before PyInstaller builds the exe, so as to inject date/other infos into it. 32 | *.manifest 33 | *.spec 34 | 35 | # Installer logs 36 | pip-log.txt 37 | pip-delete-this-directory.txt 38 | 39 | # Unit test / coverage reports 40 | htmlcov/ 41 | .tox/ 42 | .nox/ 43 | .coverage 44 | .coverage.* 45 | .cache 46 | nosetests.xml 47 | coverage.xml 48 | *.cover 49 | *.py,cover 50 | .hypothesis/ 51 | .pytest_cache/ 52 | cover/ 53 | 54 | # Translations 55 | *.mo 56 | *.pot 57 | 58 | # Django stuff: 59 | *.log 60 | local_settings.py 61 | db.sqlite3 62 | db.sqlite3-journal 63 | 64 | # Flask stuff: 65 | instance/ 66 | .webassets-cache 67 | 68 | # Scrapy stuff: 69 | .scrapy 70 | 71 | # Sphinx documentation 72 | docs/_build/ 73 | 74 | # PyBuilder 75 | .pybuilder/ 76 | target/ 77 | 78 | # Jupyter Notebook 79 | .ipynb_checkpoints 80 | 81 | # IPython 82 | profile_default/ 83 | ipython_config.py 84 | 85 | # pyenv 86 | # For a library or package, you might want to ignore these files since the code is 87 | # intended to run in multiple environments; otherwise, check them in: 88 | # .python-version 89 | 90 | # pipenv 91 | # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. 92 | # However, in case of collaboration, if having platform-specific dependencies or dependencies 93 | # having no cross-platform support, pipenv may install dependencies that don't work, or not 94 | # install all needed dependencies. 95 | #Pipfile.lock 96 | 97 | # UV 98 | # Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control. 99 | # This is especially recommended for binary packages to ensure reproducibility, and is more 100 | # commonly ignored for libraries. 101 | #uv.lock 102 | 103 | # poetry 104 | # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. 105 | # This is especially recommended for binary packages to ensure reproducibility, and is more 106 | # commonly ignored for libraries. 107 | # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control 108 | #poetry.lock 109 | 110 | # pdm 111 | # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. 112 | #pdm.lock 113 | # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it 114 | # in version control. 115 | # https://pdm.fming.dev/latest/usage/project/#working-with-version-control 116 | .pdm.toml 117 | .pdm-python 118 | .pdm-build/ 119 | 120 | # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm 121 | __pypackages__/ 122 | 123 | # Celery stuff 124 | celerybeat-schedule 125 | celerybeat.pid 126 | 127 | # SageMath parsed files 128 | *.sage.py 129 | 130 | # Environments 131 | .env 132 | .venv 133 | env/ 134 | venv/ 135 | ENV/ 136 | env.bak/ 137 | venv.bak/ 138 | 139 | # Spyder project settings 140 | .spyderproject 141 | .spyproject 142 | 143 | # Rope project settings 144 | .ropeproject 145 | 146 | # mkdocs documentation 147 | /site 148 | 149 | # mypy 150 | .mypy_cache/ 151 | .dmypy.json 152 | dmypy.json 153 | 154 | # Pyre type checker 155 | .pyre/ 156 | 157 | # pytype static type analyzer 158 | .pytype/ 159 | 160 | # Cython debug symbols 161 | cython_debug/ 162 | 163 | # PyCharm 164 | # JetBrains specific template is maintained in a separate JetBrains.gitignore that can 165 | # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore 166 | # and can be added to the global gitignore or merged into this file. For a more nuclear 167 | # option (not recommended) you can uncomment the following to ignore the entire idea folder. 168 | #.idea/ 169 | 170 | # PyPI configuration file 171 | .pypirc 172 | -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | # Editor-based HTTP Client requests 5 | /httpRequests/ 6 | # Datasource local storage ignored files 7 | /dataSources/ 8 | /dataSources.local.xml 9 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/Project_Default.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 50 | -------------------------------------------------------------------------------- /.idea/inspectionProfiles/profiles_settings.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 6 | -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | -------------------------------------------------------------------------------- /.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /.idea/okadminfinder.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 12 | -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017-2025 mIcHyAmRaNe 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ![](https://gist.githubusercontent.com/mIcHyAmRaNe/0b370c808bd1a600778f6a3875e5a732/raw/35f2803c176eeb27d4eea5eac88087b0d78f0ecc/okadminfinder3-.png) 2 | ![GitHub License](https://img.shields.io/github/license/michyamrane/okadminfinder?style=for-the-badge&logo=github&color=dodgerblue) 3 | ![Static Badge](https://img.shields.io/badge/platform-linux%20%7C%20win%20%7C%20osx-lightgrey?style=for-the-badge&color=slategray) 4 | ![GitHub Repo stars](https://img.shields.io/github/stars/michyamrane/okadminfinder?style=for-the-badge&logo=github&logoColor=black&labelColor=snow&color=slategray) 5 | ![Pepy Total Downloads](https://img.shields.io/pepy/dt/okadminfinder?style=for-the-badge&logo=pypi&logoColor=snow&color=dodgerblue) 6 | 7 | ## Overview 8 | 9 | OKadminFinder is a powerful, open-source tool designed to help administrators and penetration testers discover admin panels, directories, subdomains of a website and even some webshells.\ 10 | Built with Python 3.x, OKadminFinder offers a robust set of features to ensure effective and secure scanning. 11 | 12 | ## Features 13 | 14 | - [x] Multi-Platform Support: Works on Windows, Linux, and macOS. 15 | - [x] Easy Installation and Updates: Simple commands to install, update, and remove the tool. 16 | - [x] Extensive Admin Panel Database: Over 1600 potential admin panels. 17 | - [x] Command-Line Interface: Works with parameters for flexible usage. 18 | - [x] Target URL: Specify the target URL for scanning. 19 | - [x] URLs File: Specify a file containing a list of URLs to scan. 20 | - [x] Random User Agents: Helps avoid detection by using random user agents. 21 | - [x] Proxy Support: Supports HTTP/HTTPS proxies. 22 | - [x] Socks4/5 & Tor: Enhanced anonymity with Socks4/5 and Tor support. 23 | - [x] Custom Wordlists: Use your own wordlists for more targeted scanning. 24 | - [x] DNS Mode: Use DNS mode for wordlist scanning. 25 | - [x] Subdomain Discovery: Equivalent to fuzz.URL for finding subdomains. 26 | - [x] Fuzzing Mode: Use fuzzing mode for more dynamic URL testing. 27 | - [x] File Extensions: Search for specific file extensions. 28 | - [x] Status Codes: Specify valid HTTP status codes or ranges. 29 | - [x] Custom Cookies: Set custom cookies for requests. 30 | - [x] Support for Authentication: Use custom username and password for secure access during scans. 31 | - [x] Output File: Save results to an output file. 32 | - [x] Cache Management: Clear and disable the cache for fresh scans. 33 | - [x] Timeout Settings: Customize timeout settings for requests. 34 | - [x] Connection Pools: Adjust the number of connection pools for better performance. 35 | - [x] Threading: Control the number of threads for concurrent processing. 36 | - [x] Retry Mechanism: Set the number of retries for failed requests. 37 | - [x] Delay Customization: Fine-tune delay between requests to control response times. 38 | - [x] Debug Mode: Detailed logging for debugging purposes. 39 | 40 | * ## Requirements 41 | 42 | ![Python](https://img.shields.io/badge/Python-3-dodgerblue?style=for-the-badge&logo=python&logoColor=yellow) 43 | ![Dependencies](https://img.shields.io/badge/Dependencies-typer%20%7C%20rich%20%7C%20urllib3-dodgerblue?style=for-the-badge&logo=python&logoColor=white) 44 | ![Dev Dependencies](https://img.shields.io/badge/Dev%20Dependencies-pytest%20%7C%20ruff-forestgreen?style=for-the-badge&logo=pytest&logoColor=white) 45 | 46 | * #### Linux 47 | 48 | ```bash 49 | ❯ sudo apt install tor 50 | ❯ sudo service tor start 51 | ``` 52 | 53 | * #### Windows 54 | 55 | Download [tor windows expert bundle](https://www.torproject.org/download/tor/) 56 | 57 | * ## Installation 58 | 59 | * #### PyPi 60 | 61 | ```bash 62 | # Install 63 | ❯ pip install okadminfinder 64 | # Update 65 | ❯ pip install --upgrade okadminfinder 66 | # Remove 67 | ❯ pip uninstall okadminfinder 68 | ``` 69 | 70 | * #### Git Clone 71 | 72 | ```bash 73 | # Download and Usage 74 | ❯ git clone https://github.com/mIcHyAmRaNe/okadminfinder.git 75 | ❯ cd okadminfinder 76 | ❯ pip3 install -r requirements.txt 77 | ❯ chmod +x okadminfinder.py 78 | ❯ ./okadminfinder.py -h 79 | ``` 80 | 81 | ## Preview 82 | 83 |
84 | 85 | Watch the video 86 | 87 |
88 | 89 | 90 | ## Usage 91 | 92 | * ### Basic Usage 93 | 94 | ```bash 95 | # Scanning a Single URL 96 | ❯ okadminfinder --url https://example.com 97 | 98 | # Scanning Multiple URLs from a File 99 | ❯ okadminfinder --urls-file urls.txt 100 | 101 | # Using a Custom Wordlist 102 | ❯ okadminfinder --url https://example.com --wordlist custom_wordlist.txt 103 | 104 | # Using Random User Agents 105 | ❯ okadminfinder --url https://example.com --random-agent 106 | 107 | # Using a Proxy 108 | ❯ okadminfinder --url https://example.com --proxy 127.0.0.1:8080 109 | 110 | # Using Tor for Anonymity 111 | ❯ okadminfinder --url https://example.com --tor 112 | ``` 113 | > [!IMPORTANT] 114 | > Parameter Conflicts:\ 115 | > Proxy and Tor: You cannot use both a proxy and Tor at the same time.\ 116 | > DNS Mode and Fuzzing Mode: You cannot use both DNS mode and fuzzing mode at the same time.\ 117 | > Files Option and Non-Fuzzing Mode: The --files option can only be used with the fuzzing mode.\ 118 | > URL and URLs File: You cannot provide both a single URL and a file containing multiple URLs at the same time. 119 | 120 | * ### Advanced Usage 121 | 122 | For more advanced usage examples and detailed documentation, an Advanced Wiki is under construction. 123 | 124 | ## Developer Section 125 | 126 | * #### PyPi 127 | 128 | ```bash 129 | # Install Poetry 130 | curl -sSL https://install.python-poetry.org | python3 - 131 | 132 | # Clone the repo 133 | git clone https://github.com/mIcHyAmRaNe/okadminfinder.git 134 | 135 | # Build the project 136 | poetry build 137 | 138 | # Publish the package 139 | poetry publish 140 | ``` 141 | 142 | * #### Debian (planned) 143 | 144 | ```bash 145 | # Install Poetry 146 | curl -sSL https://install.python-poetry.org | python3 - 147 | 148 | # Install build requirements 149 | sudo apt install debhelper dh-python python3-setuptools python3-all pybuild-plugin-pyproject 150 | 151 | # Clone the repo 152 | git clone https://github.com/mIcHyAmRaNe/okadminfinder.git 153 | 154 | # Create the source tarball 155 | tar czf okadminfinder_{version}.orig.tar.gz okadminfinder 156 | 157 | # Get inside the project folder 158 | cd okadminfinder 159 | 160 | # Build the deb package 161 | dpkg-buildpackage -rfakeroot -uc -us 162 | 163 | # Notes: 164 | # Steps from Python to Debian. 165 | # Install Stdeb 166 | pip install stdeb 167 | # Debianize Python package creating debian folder 168 | python3 setup.py --command-packages=stdeb.command debianize 169 | # we edit rules, control files, we create changelog, man pages... 170 | # Build deb package 171 | dpkg-buildpackage -rfakeroot -uc -us 172 | # before building a new version, make sure to clean it first 173 | ``` 174 | ## YouTube Videos 175 | 176 | - [OKadminFinder 2.0: Take Control of Your Admin Panel Discovery!](https://youtu.be/vU5R9OoMqFc?si=oXCJv77PbZwL4IEI) 177 | 178 | ## Disclaimer 179 | 180 | > [!IMPORTANT] 181 | > OKadminFinder is intended for educational purposes and authorized penetration testing only.\ 182 | > Usage of OKadminFinder for attacking targets without prior mutual consent is illegal. It is the end user's responsibility to obey all applicable local, state, and federal laws. Developers assume no liability and are not responsible for any misuse or damage caused by this program. 183 | 184 | ## License 185 | 186 | This project is licensed under the MIT License. See the LICENSE file for details. 187 | 188 | ## Donate 189 | 190 | > [!NOTE] 191 | > If you find OKadminFinder useful and would like to support its development, you can donate to the following address:\ 192 | > **Bitcoin Address:** `1LZiNVRZupWNbB9bEPxsiwoC5AGPAuFCjp` \ 193 | > Your support is greatly appreciated ♥️ 194 | 195 | -------------------------------------------------------------------------------- /main.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # -*- coding: utf-8 -*- 3 | 4 | from okadminfinder.app import run 5 | 6 | 7 | def main() -> object: 8 | """ 9 | :rtype: object 10 | """ 11 | try: 12 | return run() 13 | except KeyboardInterrupt: 14 | print("\n:boom: [bold red]Process interrupted by user[/bold red] :boom:") 15 | return 16 | 17 | 18 | if __name__ == "__main__": 19 | main() 20 | -------------------------------------------------------------------------------- /okadminfinder/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mIcHyAmRaNe/okadminfinder/a1656819cc44805be2d3479ea2cf6d2ee762acc2/okadminfinder/__init__.py -------------------------------------------------------------------------------- /okadminfinder/_utils.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # -*- coding: utf-8 -*- 3 | 4 | from importlib.resources import open_text 5 | from random import choice 6 | from urllib.parse import urlsplit 7 | 8 | from yaml import safe_load 9 | 10 | from okadminfinder.exceptions import ( 11 | FuzzURLFormatError, 12 | URLFormatError, 13 | UserAgentFileError, 14 | ) 15 | 16 | 17 | class UserAgent: 18 | """ 19 | Manage user-agents 20 | """ 21 | 22 | def __init__( 23 | self, 24 | ua_file: str = r"user-agents.yml", 25 | ): 26 | """ 27 | Initialize the UserAgent class with a file containing user-agents. 28 | :param ua_file: Path to the user-agents YAML file. 29 | """ 30 | try: 31 | with open_text("okadminfinder.assets", ua_file, encoding="utf-8") as file: 32 | self.user_agents = safe_load(file) 33 | except FileNotFoundError as e: 34 | raise UserAgentFileError(ua_file) from e 35 | 36 | def get_user_agent(self) -> str: 37 | """ 38 | Return a random user-agent from the loaded user-agents. 39 | :return: A random user-agent string. 40 | """ 41 | rua = choice(self.user_agents) 42 | return rua.rstrip() 43 | 44 | 45 | class URLCreator: 46 | """ 47 | Manage and verify URLs of admin panel 48 | """ 49 | 50 | def __init__( 51 | self, 52 | wordlist: str, 53 | dns: bool, 54 | fuzz: bool, 55 | files: str, 56 | apl_file: str = r"admin-panel_links.yml", 57 | ): 58 | """ 59 | Initialize the URLCreator class with a file containing admin panel links. 60 | :param apl_file: Path to the admin panel links YAML file. 61 | """ 62 | self.paths = None 63 | self.dns = dns 64 | self.fuzz = fuzz 65 | self.files = files.split(",") if files else [] 66 | if wordlist: 67 | self.load_wordlist(wordlist) 68 | else: 69 | self.load_default_links(apl_file) 70 | 71 | def load_wordlist(self, wordlist: str): 72 | try: 73 | with open(wordlist, "r", encoding="utf-8") as file: 74 | self.paths = [ 75 | line.strip() for line in file if not line.strip().startswith("#") 76 | ] 77 | except FileNotFoundError as e: 78 | raise URLFormatError(wordlist) from e 79 | 80 | def load_default_links(self, apl_file: str): 81 | try: 82 | with open_text("okadminfinder.assets", apl_file, encoding="utf-8") as file: 83 | self.paths = safe_load(file) 84 | except FileNotFoundError as e: 85 | raise URLFormatError(apl_file) from e 86 | 87 | @staticmethod 88 | def create_url(base_url: str, path: str, dns: bool = False) -> str: 89 | """ 90 | Generate a URL using base URL + a path. 91 | :param base_url: The base URL. 92 | :param path: The path to append to the base URL. 93 | :param dns: Whether to use DNS mode. 94 | :return: The constructed URL. 95 | """ 96 | # Validate and parse the base URL 97 | try: 98 | if not base_url.startswith(("http://", "https://")): 99 | raise URLFormatError(base_url) 100 | 101 | scheme, netloc, _, _, _ = urlsplit(base_url) 102 | except Exception: 103 | raise URLFormatError(base_url) 104 | 105 | # Handle case where the host starts with 'www.' 106 | host = netloc.split(":")[0] # Extract the hostname 107 | if host.startswith("www."): 108 | host = host.replace("www.", "") 109 | 110 | # Extract the port if present 111 | port = netloc.split(":")[1] if ":" in netloc else "" 112 | 113 | # Reconstruct the full netloc (host + optional port) 114 | full_netloc = f"{host}:{port}" if port else host 115 | 116 | if dns: 117 | return f"{scheme}://{path}.{full_netloc}" 118 | else: 119 | return f"{scheme}://{path.format(full_netloc)}" 120 | 121 | def create_urls(self, base_url: str) -> list[str]: 122 | """ 123 | Generate a list of URLs from paths. 124 | :param base_url: The base URL. 125 | :return: A list of constructed URLs. 126 | """ 127 | if self.fuzz: 128 | # Remove {} placeholders from the default dictionary entries 129 | cleaned_paths = [ 130 | path.replace("{}.", "").replace(".{}", "").replace("{}/", "") 131 | for path in self.paths 132 | ] 133 | if base_url.endswith("FUZZ"): 134 | base_url = base_url.replace("FUZZ", "{}") 135 | urls = [base_url.format(path) for path in cleaned_paths] 136 | if self.files: 137 | extended_urls = [] 138 | for url in urls: 139 | extended_urls.append(url) # Add the directory URL 140 | for file_ext in self.files: 141 | extended_urls.append(f"{url}.{file_ext}") 142 | return extended_urls 143 | return urls 144 | else: 145 | raise FuzzURLFormatError() 146 | elif self.dns: 147 | return [self.create_url(base_url, path, self.dns) for path in self.paths] 148 | else: 149 | return [self.create_url(base_url, path) for path in self.paths] 150 | -------------------------------------------------------------------------------- /okadminfinder/app.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # -*- coding: utf-8 -*- 3 | 4 | from rich import print 5 | from typer import Abort, Option, Typer 6 | 7 | from okadminfinder.credit import Credit 8 | from okadminfinder.errors_handler import custom_error_handler, detect_options_from_typer 9 | from okadminfinder.logging import LoggingConfig 10 | from okadminfinder.process import Process 11 | 12 | app = Typer(help="Admin panel finder application.", no_args_is_help=True) 13 | 14 | credit = Credit() 15 | 16 | 17 | @app.command() 18 | def main( 19 | url: str = Option( 20 | None, 21 | "--url", 22 | "-u", 23 | help="Target URL (e.g. http://example.com or 'https://example.com')", 24 | ), 25 | urls_file: str = Option( 26 | None, 27 | "--urls-file", 28 | "-U", 29 | help="File containing a list of URLs to scan", 30 | ), 31 | random_agent: bool = Option( 32 | False, "--random-agent", "-r", help="Use random user agent" 33 | ), 34 | proxy: str = Option( 35 | None, "--proxy", "-p", help="Proxy address (e.g. '127.0.0.1:8080')" 36 | ), 37 | tor: bool = Option(False, "--tor", "-t", help="Use Tor anonymity network"), 38 | wordlist: str = Option( 39 | None, "--wordlist", "-w", help="Path to the custom wordlist file" 40 | ), 41 | dns: bool = Option(False, "--dns", "-d", help="Use DNS mode for wordlist"), 42 | fuzz: bool = Option( 43 | False, 44 | "--fuzz", 45 | "-F", 46 | help="Use fuzzing mode (e.g. '-u https://example.com/road/to/FUZZ')", 47 | ), 48 | files: str = Option( 49 | None, "--files", "-f", help="File extensions to search for (e.g. 'php,txt,js')" 50 | ), 51 | status_codes: str = Option( 52 | "200,301,401,500", 53 | "--status-codes", 54 | "-s", 55 | help="Comma-separated list of valid HTTP status codes or ranges (e.g. '200,301,401' or '200-399,501')", 56 | ), 57 | cookie: str = Option( 58 | None, 59 | "--cookie", 60 | "-C", 61 | help="Set custom cookies (e.g. 'session=f3efe9db; id=30')", 62 | ), 63 | username: str = Option( 64 | None, "--username", "-I", help="Identifier for authentication" 65 | ), 66 | password: str = Option( 67 | None, "--password", "-P", help="Password for authentication" 68 | ), 69 | output: str = Option( 70 | None, "--output", "-o", help="Output file path (e.g. 'output.txt')" 71 | ), 72 | clear_cache: bool = Option( 73 | False, "--clear-cache", "-c", help="Clear and disable the cache" 74 | ), 75 | timeout: int = Option(10, "--timeout", "-T", help="Timeout in seconds"), 76 | num_pools: int = Option( 77 | 50, "--num-pools", "-k", help="Number of connection pools to use" 78 | ), 79 | threads: int = Option(16, "--threads", "-j", help="Number of threads and maxsize"), 80 | retry: int = Option(0, "--retry", "-R", help="Number of retries"), 81 | delay: float = Option( 82 | 0.0, "--delay", "-l", help="Delay (latency) in seconds between requests" 83 | ), 84 | debug: bool = Option(False, "--debug", "-D", help="Enable debug logging"), 85 | ): 86 | # Validate URL and file options 87 | if not url and not urls_file: 88 | custom_error_handler( 89 | app, "Missing option '--url' / '-u' or '--urls-file' / '-U'." 90 | ) 91 | if url and urls_file: 92 | custom_error_handler( 93 | app, "You cannot provide both --url (-u) and --urls-file (-U)." 94 | ) 95 | 96 | try: 97 | process = Process( 98 | random_agent=random_agent, 99 | proxy_url=proxy, 100 | use_tor=tor, 101 | wordlist=wordlist, 102 | dns=dns, 103 | fuzz=fuzz or (url and "FUZZ" in url), 104 | files=files, 105 | status_codes=status_codes, 106 | cookie=cookie, 107 | username=username, 108 | password=password, 109 | output_path=output, 110 | clear_cache=clear_cache, 111 | timeout=timeout, 112 | num_pools=num_pools, 113 | num_threads=threads, 114 | num_retry=retry, 115 | delay=delay, 116 | ) 117 | 118 | # configure logging based on debug flag 119 | LoggingConfig.configure_logging(debug) 120 | 121 | # run process_urls 122 | process.process_urls(url, urls_file) 123 | 124 | except Exception as e: 125 | if debug: 126 | raise e 127 | else: 128 | print(f"\n :x: [bold red]Error: {e}[/bold red]") 129 | Abort() 130 | 131 | 132 | def run(): 133 | try: 134 | with credit.set_credit(): 135 | detect_options_from_typer(app) 136 | app() 137 | except KeyboardInterrupt: 138 | print("\n:boom: [bold red]Process interrupted by user[/bold red] :boom:") 139 | Abort() 140 | -------------------------------------------------------------------------------- /okadminfinder/assets/admin-panel_links.yml: -------------------------------------------------------------------------------- 1 | - "{}/robots.txt" 2 | - "{}/.htaccess" 3 | - "{}/config.php" 4 | - "{}/.env" 5 | - "{}/.git/" 6 | - "{}/backup/" 7 | - "{}/db_backup/" 8 | - "{}/adminbackups/" 9 | - "admin.{}" 10 | - "login.{}" 11 | - "login1.{}" 12 | - "panel.{}" 13 | - "admin1.{}" 14 | - "admin2.{}" 15 | - "admin3.{}" 16 | - "admin4.{}" 17 | - "moderator.{}" 18 | - "webadmin.{}" 19 | - "user.{}" 20 | - "{}/admin" 21 | - "{}/admin.asp" 22 | - "{}/admin/admin.asp" 23 | - "{}/admin.aspx" 24 | - "{}/admin/admin.aspx" 25 | - "{}/admin.php" 26 | - "{}/administrator" 27 | - "{}/login.php" 28 | - "{}/user" 29 | - "{}/usuarios" 30 | - "{}/usuario" 31 | - "{}/cpanel" 32 | - "{}/phpmyadmin" 33 | - "{}/dashboard" 34 | - "{}/cms" 35 | - "{}/users" 36 | - "{}/wp-login.php" 37 | - "{}/admin/login" 38 | - "{}/auth/login" 39 | - "{}/moderator" 40 | - "{}/webadmin" 41 | - "{}/webmaster" 42 | - "{}/adminarea" 43 | - "{}/bb-admin" 44 | - "{}/wp-admin" 45 | - "{}/wp-login" 46 | - "{}/wp-admin.php" 47 | - "{}/userlogin" 48 | - "{}/logins" 49 | - "{}/login.html" 50 | - "{}/adminLogin" 51 | - "{}/admin_area" 52 | - "{}/panel-administracion" 53 | - "{}/instadmin" 54 | - "{}/memberadmin" 55 | - "{}/administratorlogin" 56 | - "{}/panel" 57 | - "{}/forum/admin" 58 | - "{}/adm" 59 | - "{}/cp" 60 | - "{}/vue-element-admin" 61 | - "{}/vue-admin-template" 62 | - "{}/admin-dashboard" 63 | - "{}/admincontrol" 64 | - "{}/cms-admin" 65 | - "{}/manage" 66 | - "{}/site-admin" 67 | - "{}/portal-admin" 68 | - "{}/manage-panel" 69 | - "{}/admin-tools" 70 | - "{}/admin-config" 71 | - "{}/config" 72 | - "{}/control-panel" 73 | - "{}/site-settings" 74 | - "{}/settings" 75 | - "{}/admin-center" 76 | - "{}/admin-access-panel" 77 | - "{}/super-admin" 78 | - "{}/auth-admin" 79 | - "{}/login-admin" 80 | - "{}/admin-tools-panel" 81 | - "{}/webmaster-login" 82 | - "{}/backend-admin" 83 | - "{}/site-admin-control" 84 | - "{}/user-control" 85 | - "{}/management-area" 86 | - "{}/cms-control" 87 | - "{}/mod-login" 88 | - "{}/access-control" 89 | - "{}/security-panel" 90 | - "{}/system-settings" 91 | - "{}/root-access" 92 | - "{}/developer" 93 | - "{}/dev-admin" 94 | - "{}/adminhub" 95 | - "{}/root-control" 96 | - "{}/dashboard-admin" 97 | - "{}/support-admin" 98 | - "{}/helpdesk" 99 | - "{}/adminhelp" 100 | - "{}/adminentry" 101 | - "{}/site-control-panel" 102 | - "{}/control-admin" 103 | - "{}/admin-panel" 104 | - "{}/admin-area" 105 | - "{}/admin-control" 106 | - "{}/admin-settings" 107 | - "{}/configuration" 108 | - "{}/user-admin" 109 | - "{}/user-panel" 110 | - "{}/root" 111 | - "{}/root-login" 112 | - "{}/developer-panel" 113 | - "{}/dev-tools" 114 | - "{}/superadmin" 115 | - "{}/superadmin-panel" 116 | - "{}/support-login" 117 | - "{}/operations" 118 | - "{}/secure" 119 | - "{}/security" 120 | - "{}/system-control" 121 | - "{}/admin-portal" 122 | - "{}/site-control" 123 | - "{}/backend-tools" 124 | - "{}/admin-access" 125 | - "{}/admin-options" 126 | - "{}/admin-entry" 127 | - "{}/cpanel-login" 128 | - "{}/cpanel-access" 129 | - "{}/auth-tools" 130 | - "{}/authentication" 131 | - "{}/admin-privileges" 132 | - "{}/operator" 133 | - "{}/operator-login" 134 | - "{}/data-center" 135 | - "{}/data-center-login" 136 | - "{}/cloud-admin" 137 | - "{}/cloud-control" 138 | - "{}/cloud-settings" 139 | - "{}/cloud-panel" 140 | - "{}/root-panel" 141 | - "{}/admin-login-panel" 142 | - "{}/admin-configure" 143 | - "{}/entry-admin" 144 | - "{}/access-admin" 145 | - "{}/advanced-admin" 146 | - "{}/admin-advanced" 147 | - "{}/enterprise-admin" 148 | - "{}/global-admin" 149 | - "{}/region-admin" 150 | - "{}/local-admin" 151 | - "{}/control-center" 152 | - "{}/server-login" 153 | - "{}/secure-control" 154 | - "{}/secure-settings" 155 | - "{}/admin-secure" 156 | - "{}/secure-admin" 157 | - "{}/management-tools" 158 | - "{}/entry-point" 159 | - "{}/admin-point" 160 | - "{}/support-point" 161 | - "{}/backend-login" 162 | - "{}/site-backend" 163 | - "{}/user-access" 164 | - "{}/user-auth" 165 | - "{}/auth-login" 166 | - "{}/secure-login" 167 | - "{}/super-access" 168 | - "{}/super-panel" 169 | - "{}/enterprise-control" 170 | - "{}/operations-control" 171 | - "{}/superuser-login" 172 | - "{}/master-panel" 173 | - "{}/advanced-login" 174 | - "{}/custom-login" 175 | - "{}/cms-panel" 176 | - "{}/cms-dashboard" 177 | - "{}/system-portal" 178 | - "{}/it-admin" 179 | - "{}/it-management" 180 | - "{}/configurator" 181 | - "{}/dashboard-login" 182 | - "{}/enterprise-panel" 183 | - "{}/system-operator" 184 | - "{}/operator-admin" 185 | - "{}/data-control" 186 | - "{}/data-admin" 187 | - "{}/adminsys" 188 | - "{}/supervisor" 189 | - "{}/supervisor-tools" 190 | - "{}/custom-admin" 191 | - "{}/config-login" 192 | - "auth.{}" 193 | - "dashboard-admin.{}" 194 | - "configurator.{}" 195 | - "superuser.{}" 196 | - "custompanel.{}" 197 | - "enterprise.{}" 198 | - "administrator.{}" 199 | - "{}/tools" 200 | - "{}/tools-panel" 201 | - "{}/admin-console" 202 | - "{}/admincp" 203 | - "{}/admintools" 204 | - "{}/root-tools" 205 | - "{}/panel-root" 206 | - "{}/admin-site" 207 | - "{}/root-tools-panel" 208 | - "{}/admin-helper" 209 | - "{}/superuser" 210 | - "{}/master-login" 211 | - "{}/backend" 212 | - "{}/staff-login" 213 | - "{}/staff-admin" 214 | - "{}/employee-admin" 215 | - "{}/team-admin" 216 | - "{}/loginpanel" 217 | - "{}/root-loginpanel" 218 | - "{}/server-admin" 219 | - "{}/server-access" 220 | - "{}/host-admin" 221 | - "{}/host-login" 222 | - "{}/login-staff" 223 | - "{}/webtools" 224 | - "{}/tools-login" 225 | - "{}/superadminpanel" 226 | - "{}/loginpage" 227 | - "{}/webmaster-tools" 228 | - "{}/moderator-tools" 229 | - "{}/security-admin" 230 | - "{}/sysadmin" 231 | - "{}/system-admin" 232 | - "{}/system-login" 233 | - "{}/config-panel" 234 | - "{}/user-tools" 235 | - "{}/user-management" 236 | - "{}/access-management" 237 | - "{}/privileged-login" 238 | - "{}/privileged-access" 239 | - "{}/admin-only" 240 | - "{}/adminportal" 241 | - "{}/rootportal" 242 | - "{}/accessportal" 243 | - "{}/admin-control-center" 244 | - "{}/main-admin" 245 | - "{}/main-login" 246 | - "{}/main-control" 247 | - "{}/admins/" 248 | - "{}/adminlogin/" 249 | - "{}/administrator/" 250 | - "{}/login/" 251 | - "{}/cpanel/" 252 | - "{}/manage/" 253 | - "{}/loginpanel/" 254 | - "{}/moderator/" 255 | - "{}/root/" 256 | - "{}/super/" 257 | - "{}/access/" 258 | - "{}/entry/" 259 | - "cms.{}" 260 | - "manage.{}" 261 | - "dashboard.{}" 262 | - "portal.{}" 263 | - "settings.{}" 264 | - "config.{}" 265 | - "control.{}" 266 | - "backend.{}" 267 | - "support.{}" 268 | - "helpdesk.{}" 269 | - "developer.{}" 270 | - "dev.{}" 271 | - "team.{}" 272 | - "staff.{}" 273 | - "security.{}" 274 | - "root.{}" 275 | - "master.{}" 276 | - "adminpanel.{}" 277 | - "sitecontrol.{}" 278 | - "accesscontrol.{}" 279 | - "sysadmin.{}" 280 | - "webmaster.{}" 281 | - "tools.{}" 282 | - "operations.{}" 283 | - "privileged.{}" 284 | - "management.{}" 285 | - "host.{}" 286 | - "server.{}" 287 | - "adminarea.{}" 288 | - "controlpanel.{}" 289 | - "{}/admin/cp.php" 290 | - "{}/cp.php" 291 | - "{}/admin/account.php" 292 | - "{}/admin/index.php" 293 | - "{}/admin/login.php" 294 | - "{}/admin/admin.php" 295 | - "{}/admin_area/admin.php" 296 | - "{}/admin_area/login.php" 297 | - "{}/siteadmin/login.php" 298 | - "{}/siteadmin/index.php" 299 | - "{}/siteadmin/login.html" 300 | - "{}/admin/account.html" 301 | - "{}/admin/index.html" 302 | - "{}/admin/login.html" 303 | - "{}/admin/admin.html" 304 | - "{}/admin_area/index.php" 305 | - "{}/dashboard.html" 306 | - "{}/dashboard.php" 307 | - "{}/bb-admin/index.php" 308 | - "{}/bb-admin/login.php" 309 | - "{}/bb-admin/admin.php" 310 | - "{}/admin/home.php" 311 | - "{}/admin_area/login.html" 312 | - "{}/admin_area/index.html" 313 | - "{}/admin/controlpanel.php" 314 | - "{}/admincp/index.asp" 315 | - "{}/admincp/login.asp" 316 | - "{}/admincp/index.html" 317 | - "{}/adminpanel.html" 318 | - "{}/webadmin.html" 319 | - "{}/webadmin/index.html" 320 | - "{}/webadmin/admin.html" 321 | - "{}/webadmin/login.html" 322 | - "{}/admin/admin_login.html" 323 | - "{}/admin_login.html" 324 | - "{}/panel-administracion/login.html" 325 | - "{}/administrator/index.php" 326 | - "{}/administrator/login.php" 327 | - "{}/nsw/admin/login.php" 328 | - "{}/webadmin/login.php" 329 | - "{}/admin/admin_login.php" 330 | - "{}/admin_login.php" 331 | - "{}/administrator/account.php" 332 | - "{}/administrator.php" 333 | - "{}/admin_area/admin.html" 334 | - "{}/pages/admin" 335 | - "{}/pages/admin/admin-login.php" 336 | - "{}/admin/admin-login.php" 337 | - "{}/admin-login.php" 338 | - "{}/members" 339 | - "{}/bb-admin/index.html" 340 | - "{}/bb-admin/login.html" 341 | - "{}/acceso.php" 342 | - "{}/bb-admin/admin.html" 343 | - "{}/admin/home.html" 344 | - "{}/modelsearch/login.php" 345 | - "{}/moderator.php" 346 | - "{}/moderator/login.php" 347 | - "{}/moderator/admin.php" 348 | - "{}/account.php" 349 | - "{}/pages/admin/admin-login.html" 350 | - "{}/admin/admin-login.html" 351 | - "{}/admin-login.html" 352 | - "{}/controlpanel.php" 353 | - "{}/admincontrol.php" 354 | - "{}/admin/adminLogin.html" 355 | - "{}/adminLogin.html" 356 | - "{}/home.html" 357 | - "{}/rcjakar/admin/login.php" 358 | - "{}/adminarea/index.html" 359 | - "{}/adminarea/admin.html" 360 | - "{}/webadmin.php" 361 | - "{}/webadmin/index.php" 362 | - "{}/webadmin/admin.php" 363 | - "{}/admin/controlpanel.html" 364 | - "{}/admin.html" 365 | - "{}/admin/cp.html" 366 | - "{}/cp.html" 367 | - "{}/adminpanel.php" 368 | - "{}/moderator.html" 369 | - "{}/administrator/index.html" 370 | - "{}/administrator/login.html" 371 | - "{}/user.html" 372 | - "{}/administrator/account.html" 373 | - "{}/administrator.html" 374 | - "{}/modelsearch/login.html" 375 | - "{}/moderator/login.html" 376 | - "{}/adminarea/login.html" 377 | - "{}/panel-administracion/index.html" 378 | - "{}/panel-administracion/admin.html" 379 | - "{}/modelsearch/index.html" 380 | - "{}/modelsearch/admin.html" 381 | - "{}/admincontrol/login.html" 382 | - "{}/adm/index.html" 383 | - "{}/adm.html" 384 | - "{}/moderator/admin.html" 385 | - "{}/user.php" 386 | - "{}/account.html" 387 | - "{}/controlpanel.html" 388 | - "{}/admincontrol.html" 389 | - "{}/panel-administracion/login.php" 390 | - "{}/adminLogin.php" 391 | - "{}/admin/adminLogin.php" 392 | - "{}/home.php" 393 | - "{}/adminarea/index.php" 394 | - "{}/adminarea/admin.php" 395 | - "{}/adminarea/login.php" 396 | - "{}/panel-administracion/index.php" 397 | - "{}/panel-administracion/admin.php" 398 | - "{}/modelsearch/index.php" 399 | - "{}/modelsearch/admin.php" 400 | - "{}/admincontrol/login.php" 401 | - "{}/adm/admloginuser.php" 402 | - "{}/admloginuser.php" 403 | - "{}/admin2.php" 404 | - "{}/admin2/login.php" 405 | - "{}/admin2/index.php" 406 | - "{}/usuarios/login.php" 407 | - "{}/adm/index.php" 408 | - "{}/adm.php" 409 | - "{}/affiliate.php" 410 | - "{}/adm_auth.php" 411 | - "{}/memberadmin.php" 412 | - "{}/administratorlogin.php" 413 | - "{}/administration" 414 | - "{}/mag/admin" 415 | - "{}/joomla/administrator" 416 | - "{}/manager" 417 | - "{}/adminpanel" 418 | - "{}/controlpanel" 419 | - "{}/logon" 420 | - "{}/auth" 421 | - "{}/apanel" 422 | - "{}/a" 423 | - "{}/app" 424 | - "{}/acart" 425 | - "{}/access" 426 | - "{}/account" 427 | - "{}/achievo" 428 | - "{}/address" 429 | - "{}/admins" 430 | - "{}/0admin" 431 | - "{}/admin1" 432 | - "{}/admin2" 433 | - "{}/admin3" 434 | - "{}/admin4" 435 | - "{}/admin5" 436 | - "{}/_adm_" 437 | - "{}/_admin_" 438 | - "{}/_administrator_" 439 | - "{}/_adm" 440 | - "{}/_admin" 441 | - "{}/achtung" 442 | - "{}/_administrator" 443 | - "{}/AdminWeb" 444 | - "{}/administration.php" 445 | - "{}/links/login.php" 446 | - "{}/cms/_admin/logon.php" 447 | - "{}/typo3" 448 | - "{}/tienda/admin" 449 | - "{}/pma" 450 | - "{}/cms/login" 451 | - "{}/access.php" 452 | - "{}/sysadm.php" 453 | - "{}/adm2" 454 | - "{}/include/admin.php" 455 | - "{}/admin/moderator.php" 456 | - "{}/interactive/admin.php" 457 | - "{}/edit.php" 458 | - "{}/siteadmin" 459 | - "{}/hcaadmin.php" 460 | - "{}/svn" 461 | - "{}/blog/wp-login.php" 462 | - "{}/admin/log.php" 463 | - "{}/login/login.php" 464 | - "{}/adminka.php" 465 | - "{}/wholesale-login.php" 466 | - "{}/authorize.php" 467 | - "{}/editor" 468 | - "{}/base/admin" 469 | - "{}/includes/login.php" 470 | - "{}/site_admin/login.php" 471 | - "{}/statredir" 472 | - "{}/lists/admin" 473 | - "{}/sec/login.php" 474 | - "{}/bitrix/admin" 475 | - "{}/admin_tool" 476 | - "{}/cabinet" 477 | - "{}/klarnetCMS" 478 | - "{}/debug/rus/autorisation" 479 | - "{}/cms/admin" 480 | - "{}/Admin/private" 481 | - "{}/site/admin" 482 | - "{}/admen" 483 | - "{}/admin2/index" 484 | - "{}/db/admin.php" 485 | - "{}/admin/adm.php" 486 | - "{}/admin/admin" 487 | - "{}/manager/ispmgr" 488 | - "{}/login.aspx" 489 | - "{}/admin/login.asp" 490 | - "{}/admin/login.aspx" 491 | - "{}/moderator/admin.asp" 492 | - "{}/webadmin.asp" 493 | - "{}/webadmin/admin.asp" 494 | - "{}/author/Admin.aspx" 495 | - "{}/admin/userAdmin.aspx" 496 | - "{}/dbadmin" 497 | - "{}/AdministratorS/Admin.aspx" 498 | - "{}/admin/secure/admin.aspx" 499 | - "{}/bb-admin/admin.asp" 500 | - "{}/processlogin.php" 501 | - "{}/0manager" 502 | - "{}/acceso.asp" 503 | - "{}/acceso.aspx" 504 | - "{}/account.asp" 505 | - "{}/account.aspx" 506 | - "{}/wp-login.asp" 507 | - "{}/wp-login.aspx" 508 | - "{}/admin_login" 509 | - "{}/admin-login" 510 | - "{}/modelsearch" 511 | - "{}/nsw" 512 | - "{}/rcjakar" 513 | - "{}/private.php" 514 | - "{}/_vti_pvt" 515 | - "{}/_private" 516 | - "{}/admin1.php" 517 | - "{}/admin2.html" 518 | - "{}/yonetim.php" 519 | - "{}/yonetim.html" 520 | - "{}/yonetici.php" 521 | - "{}/yonetici.html" 522 | - "{}/admin1.asp" 523 | - "{}/admin2.asp" 524 | - "{}/yonetim.asp" 525 | - "{}/yonetici.asp" 526 | - "{}/admin/index.asp" 527 | - "{}/admin/home.asp" 528 | - "{}/admin/controlpanel.asp" 529 | - "{}/sysadmin.php" 530 | - "{}/sysadmin.html" 531 | - "{}/ur-admin.asp" 532 | - "{}/ur-admin.php" 533 | - "{}/ur-admin.html" 534 | - "{}/ur-admin" 535 | - "{}/administr8.php" 536 | - "{}/administr8.html" 537 | - "{}/administr8" 538 | - "{}/admin/acceso.php" 539 | - "{}/admin/acceso.asp" 540 | - "{}/admin/acceso.aspx" 541 | - "{}/admin_area/acceso.php" 542 | - "{}/admin_area/acceso.asp" 543 | - "{}/admin_area/acceso.aspx" 544 | - "{}/adminarea/acceso.php" 545 | - "{}/adminarea/acceso.asp" 546 | - "{}/adminarea/acceso.aspx" 547 | - "{}/admincontrol/acceso.php" 548 | - "{}/admincontrol/acceso.asp" 549 | - "{}/admincontrol/acceso.aspx" 550 | - "{}/admincpacceso.php" 551 | - "{}/admincpacceso.asp" 552 | - "{}/admincpacceso.aspx" 553 | - "{}/administrator/acceso.php" 554 | - "{}/administrator/acceso.asp" 555 | - "{}/administrator/acceso.aspx" 556 | - "{}/admin_login/acceso.php" 557 | - "{}/admin_login/acceso.asp" 558 | - "{}/admin_login/acceso.aspx" 559 | - "{}/adminlogin/acceso.php" 560 | - "{}/adminlogin/acceso.asp" 561 | - "{}/adminlogin/acceso.aspx" 562 | - "{}/webadmin/wp-login.php" 563 | - "{}/webadmin/wp-login.asp" 564 | - "{}/webadmin/wp-login.aspx" 565 | - "{}/usuario/wp-login.php" 566 | - "{}/usuario/wp-login.asp" 567 | - "{}/usuario/wp-login.aspx" 568 | - "{}/admin/webadmin.asp" 569 | - "{}/admin/webadmin.aspx" 570 | - "{}/admin/webadmin.php" 571 | - "{}/webadmin/user.php" 572 | - "{}/webadmin/user.asp" 573 | - "{}/webadmin/user.aspx" 574 | - "{}/bb-admin/user.php" 575 | - "{}/bb-admin/user.asp" 576 | - "{}/bb-admin/user.aspx" 577 | - "{}/controlpanel/user.php" 578 | - "{}/controlpanel/user.asp" 579 | - "{}/controlpanel/user.aspx" 580 | - "{}/admin-login/user.php" 581 | - "{}/admin-login/user.asp" 582 | - "{}/admin-login/user.aspx" 583 | - "{}/administrator/user.php" 584 | - "{}/administrator/user.asp" 585 | - "{}/administrator/user.aspx" 586 | - "{}/admin/user.php" 587 | - "{}/adm/user.php" 588 | - "{}/pages/moderator.php" 589 | - "{}/webadmin/moderator.php" 590 | - "{}/users/moderator.php" 591 | - "{}/usuario/user.php" 592 | - "{}/usuario/user.asp" 593 | - "{}/usuario/user.aspx" 594 | - "{}/alogin.aspx" 595 | - "{}/mysql" 596 | - "{}/myadmin" 597 | - "{}/sqlmanager" 598 | - "{}/mysqlmanager" 599 | - "{}/p/m/a" 600 | - "{}/phpmanager" 601 | - "{}/php-myadmin" 602 | - "{}/phpmy-admin" 603 | - "{}/sqlweb" 604 | - "{}/websql" 605 | - "{}/webdb" 606 | - "{}/mysqladmin" 607 | - "{}/mysql-admin" 608 | - "{}/phpmyadmin2" 609 | - "{}/phpMyAdmin-2" 610 | - "{}/php-my-admin" 611 | - "{}/phpMyAdmin-2.2.3" 612 | - "{}/phpMyAdmin-2.2.6" 613 | - "{}/phpMyAdmin-2.5.1" 614 | - "{}/phpMyAdmin-2.5.4" 615 | - "{}/phpMyAdmin-2.5.5-rc1" 616 | - "{}/phpMyAdmin-2.5.5-rc2" 617 | - "{}/phpMyAdmin-2.5.5" 618 | - "{}/phpMyAdmin-2.5.5-pl1" 619 | - "{}/phpMyAdmin-2.5.6-rc1" 620 | - "{}/phpMyAdmin-2.5.6-rc2" 621 | - "{}/phpMyAdmin-2.5.6" 622 | - "{}/phpMyAdmin-2.5.7" 623 | - "{}/phpMyAdmin-2.5.7-pl1" 624 | - "{}/phpMyAdmin-2.6.0-alpha" 625 | - "{}/phpMyAdmin-2.6.0-alpha2" 626 | - "{}/phpMyAdmin-2.6.0-beta1" 627 | - "{}/phpMyAdmin-2.6.0-beta2" 628 | - "{}/phpMyAdmin-2.6.0-rc1" 629 | - "{}/phpMyAdmin-2.6.0-rc2" 630 | - "{}/phpMyAdmin-2.6.0-rc3" 631 | - "{}/phpMyAdmin-2.6.0" 632 | - "{}/phpMyAdmin-2.6.0-pl1" 633 | - "{}/phpMyAdmin-2.6.0-pl2" 634 | - "{}/phpMyAdmin-2.6.0-pl3" 635 | - "{}/phpMyAdmin-2.6.1-rc1" 636 | - "{}/phpMyAdmin-2.6.1-rc2" 637 | - "{}/phpMyAdmin-2.6.1" 638 | - "{}/phpMyAdmin-2.6.1-pl1" 639 | - "{}/phpMyAdmin-2.6.1-pl2" 640 | - "{}/phpMyAdmin-2.6.1-pl3" 641 | - "{}/phpMyAdmin-2.6.2-rc1" 642 | - "{}/phpMyAdmin-2.6.2-beta1" 643 | - "{}/phpMyAdmin-2.6.2" 644 | - "{}/phpMyAdmin-2.6.2-pl1" 645 | - "{}/phpMyAdmin-2.6.3" 646 | - "{}/phpMyAdmin-2.6.3-rc1" 647 | - "{}/phpMyAdmin-2.6.3-pl1" 648 | - "{}/phpMyAdmin-2.6.4-rc1" 649 | - "{}/phpMyAdmin-2.6.4-pl1" 650 | - "{}/phpMyAdmin-2.6.4-pl2" 651 | - "{}/phpMyAdmin-2.6.4-pl3" 652 | - "{}/phpMyAdmin-2.6.4-pl4" 653 | - "{}/phpMyAdmin-2.6.4" 654 | - "{}/phpMyAdmin-2.7.0-beta1" 655 | - "{}/phpMyAdmin-2.7.0-rc1" 656 | - "{}/phpMyAdmin-2.7.0-pl1" 657 | - "{}/phpMyAdmin-2.7.0-pl2" 658 | - "{}/phpMyAdmin-2.7.0" 659 | - "{}/phpMyAdmin-2.8.0-beta1" 660 | - "{}/phpMyAdmin-2.8.0-rc2" 661 | - "{}/phpMyAdmin-2.8.0" 662 | - "{}/phpMyAdmin-2.8.0.1" 663 | - "{}/phpMyAdmin-2.8.0.2" 664 | - "{}/phpMyAdmin-2.8.0.3" 665 | - "{}/phpMyAdmin-2.8.0.4" 666 | - "{}/phpMyAdmin-2.8.1-rc1" 667 | - "{}/phpMyAdmin-2.8.1" 668 | - "{}/phpMyAdmin-2.8.2" 669 | - "{}/pma2005" 670 | - "{}/administratie" 671 | - "{}/admins.php" 672 | - "{}/useradmin" 673 | - "{}/sysadmins" 674 | - "{}/system-administration" 675 | - "{}/administrators" 676 | - "{}/pgadmin" 677 | - "{}/directadmin" 678 | - "{}/sql-admin" 679 | - "{}/newsadmin" 680 | - "{}/adminpro" 681 | - "{}/staradmin" 682 | - "{}/ServerAdministrator" 683 | - "{}/administer" 684 | - "{}/LiveUser_Admin" 685 | - "{}/sys-admin" 686 | - "{}/autologin" 687 | - "{}/microadmin" 688 | - "{}/monitoringswab" 689 | - "{}/support_login" 690 | - "{}/memlogin" 691 | - "{}/login-redirect" 692 | - "{}/sub-login" 693 | - "{}/login1" 694 | - "{}/dir-login" 695 | - "{}/login_db" 696 | - "{}/xlogin" 697 | - "{}/smblogin" 698 | - "{}/customer_login" 699 | - "{}/acct_login" 700 | - "{}/bigadmin" 701 | - "{}/project-admins" 702 | - "{}/phppgadmin" 703 | - "{}/pureadmin" 704 | - "{}/bbadmin" 705 | - "{}/administratoraccounts" 706 | - "{}/server" 707 | - "{}/database_administration" 708 | - "{}/power_user" 709 | - "{}/system_administration" 710 | - "{}/adminitem" 711 | - "{}/sysadm" 712 | - "{}/control" 713 | - "{}/accounts" 714 | - "{}/management" 715 | - "{}/phpSQLiteAdmin" 716 | - "{}/showlogin" 717 | - "{}/0admin/login.asp" 718 | - "{}/0manager/admin.asp" 719 | - "{}/admin/sendfile.asp" 720 | - "{}/admin/sndfile.asp" 721 | - "{}/admin/upfile.asp" 722 | - "{}/admin/upload.asp" 723 | - "{}/admin/uploadfaceok.asp" 724 | - "{}/admin/uploads.asp" 725 | - "{}/admin/uppic.asp" 726 | - "{}/adminadmin" 727 | - "{}/adminindex" 728 | - "{}/count_admin" 729 | - "{}/default_admin" 730 | - "{}/index/admin" 731 | - "{}/acesso" 732 | - "{}/adimin" 733 | - "{}/adiministrador" 734 | - "{}/adm/admin" 735 | - "{}/admin4_account" 736 | - "{}/admin4_colon" 737 | - "{}/admin/adm" 738 | - "{}/administracao" 739 | - "{}/banneradmin" 740 | - "{}/blogindex" 741 | - "{}/cadmins" 742 | - "{}/ccp14admin" 743 | - "{}/cmsadmin" 744 | - "{}/controle" 745 | - "{}/cpanel_file" 746 | - "{}/donos" 747 | - "{}/edit" 748 | - "{}/entrar" 749 | - "{}/entrar.html" 750 | - "{}/entrar.php" 751 | - "{}/ezsqliteadmin" 752 | - "{}/formslogin" 753 | - "{}/funcoes" 754 | - "{}/globes_admin" 755 | - "{}/hpwebjetadmin" 756 | - "{}/Indy_admin" 757 | - "{}/irc-macadmin" 758 | - "{}/key" 759 | - "{}/logar" 760 | - "{}/login" 761 | - "{}/loginflat" 762 | - "{}/login-us" 763 | - "{}/loginuser" 764 | - "{}/loginusuarios" 765 | - "{}/logo_sysadmin" 766 | - "{}/logout" 767 | - "{}/Lotus_Domino_Admin" 768 | - "{}/macadmin" 769 | - "{}/manuallogin" 770 | - "{}/membros" 771 | - "{}/meta_login" 772 | - "{}/navSiteAdmin" 773 | - "{}/net" 774 | - "{}/not" 775 | - "{}/openvpnadmin" 776 | - "{}/painel" 777 | - "{}/paineldecontrole" 778 | - "{}/pc" 779 | - "{}/pdc" 780 | - "{}/php" 781 | - "{}/phpldapadmin" 782 | - "{}/platz_login" 783 | - "{}/radmind" 784 | - "{}/radmind-1" 785 | - "{}/rcLogin" 786 | - "{}/saff" 787 | - "{}/senha" 788 | - "{}/senhas" 789 | - "{}/server_admin_small" 790 | - "{}/sff" 791 | - "{}/simpleLogin" 792 | - "{}/sistema" 793 | - "{}/sshadmin" 794 | - "{}/ss_vms_admin_sm" 795 | - "{}/SysAdmin2" 796 | - "{}/utility_login" 797 | - "{}/vadmind" 798 | - "{}/vmailadmin" 799 | - "{}/wizmysqladmin" 800 | - "{}/ccms" 801 | - "{}/ccms/login.php" 802 | - "{}/ccms/index.php" 803 | - "{}/0admin/" 804 | - "{}/0manager/" 805 | - "{}/Admin/" 806 | - "{}/Admin/private/" 807 | - "{}/AdminTools/" 808 | - "{}/AdminWeb/" 809 | - "{}/AdministratorS/Admin.aspx/" 810 | - "{}/Database_Administration/" 811 | - "{}/Indy_admin/" 812 | - "{}/LiveUser_Admin/" 813 | - "{}/Lotus_Domino_Admin/" 814 | - "{}/PSUser/" 815 | - "{}/Server.php" 816 | - "{}/Server/" 817 | - "{}/ServerAdministrator/" 818 | - "{}/Super-Admin/" 819 | - "{}/SysAdmin2/" 820 | - "{}/SysAdmin/" 821 | - "{}/UserLogin/" 822 | - "{}/_adm/" 823 | - "{}/_adm_/" 824 | - "{}/_admin/" 825 | - "{}/_admin_/" 826 | - "{}/_administrator/" 827 | - "{}/_administrator_/" 828 | - "{}/_private/" 829 | - "{}/_vti_pvt/" 830 | - "{}/a/" 831 | - "{}/aadmin/" 832 | - "{}/acart/" 833 | - "{}/acceso.asp/" 834 | - "{}/acceso.aspx/" 835 | - "{}/account.asp/" 836 | - "{}/account.aspx/" 837 | - "{}/account/" 838 | - "{}/accounts.php" 839 | - "{}/accounts/" 840 | - "{}/acct_login/" 841 | - "{}/acesso/" 842 | - "{}/achievo/" 843 | - "{}/achtung/" 844 | - "{}/address/" 845 | - "{}/adimin/" 846 | - "{}/adiministrador/" 847 | - "{}/adm2/" 848 | - "{}/adm/" 849 | - "{}/adm/admin/" 850 | - "{}/admen/" 851 | - "{}/admin1.htm" 852 | - "{}/admin1.html" 853 | - "{}/admin1/" 854 | - "{}/admin2/" 855 | - "{}/admin2/index/" 856 | - "{}/admin3/" 857 | - "{}/admin4/" 858 | - "{}/admin4_account/" 859 | - "{}/admin4_colon/" 860 | - "{}/admin5/" 861 | - "{}/admin-login/" 862 | - "{}/admin.asp/" 863 | - "{}/admin.aspx/" 864 | - "{}/admin.htm" 865 | - "{}/admin.php/" 866 | - "{}/admin/acceso.asp/" 867 | - "{}/admin/acceso.aspx/" 868 | - "{}/admin/acceso.php/" 869 | - "{}/admin/adm/" 870 | - "{}/admin/admin.asp/" 871 | - "{}/admin/admin.aspx/" 872 | - "{}/admin/admin/" 873 | - "{}/admin/adminLogin.htm" 874 | - "{}/admin/controlpanel.htm" 875 | - "{}/admin/login.aspx/" 876 | - "{}/admin/login.htm" 877 | - "{}/admin/secure/admin.aspx/" 878 | - "{}/admin/userAdmin.aspx/" 879 | - "{}/admin/webadmin.asp/" 880 | - "{}/admin/webadmin.aspx/" 881 | - "{}/admin/webadmin.php/" 882 | - "{}/admin_area.php" 883 | - "{}/admin_area/" 884 | - "{}/admin_area/acceso.asp/" 885 | - "{}/admin_area/acceso.aspx/" 886 | - "{}/admin_area/acceso.php/" 887 | - "{}/admin_login/" 888 | - "{}/admin_login/acceso.asp/" 889 | - "{}/admin_login/acceso.aspx/" 890 | - "{}/admin_login/acceso.php/" 891 | - "{}/admin_tool/" 892 | - "{}/adminadmin/" 893 | - "{}/adminarea/" 894 | - "{}/adminarea/acceso.asp/" 895 | - "{}/adminarea/acceso.aspx/" 896 | - "{}/adminarea/acceso.php/" 897 | - "{}/admincontrol/" 898 | - "{}/admincontrol/acceso.asp/" 899 | - "{}/admincontrol/acceso.aspx/" 900 | - "{}/admincontrol/acceso.php/" 901 | - "{}/admincp/" 902 | - "{}/admincp/login.php" 903 | - "{}/admincpacceso.asp/" 904 | - "{}/admincpacceso.aspx/" 905 | - "{}/admincpacceso.php/" 906 | - "{}/adminindex/" 907 | - "{}/administer/" 908 | - "{}/administr8/" 909 | - "{}/administracao/" 910 | - "{}/administrador/" 911 | - "{}/administrar/" 912 | - "{}/administratie/" 913 | - "{}/administration/" 914 | - "{}/administrator/acceso.asp/" 915 | - "{}/administrator/acceso.aspx/" 916 | - "{}/administrator/acceso.php/" 917 | - "{}/administratoraccounts/" 918 | - "{}/administratorlogin/" 919 | - "{}/administrators.php" 920 | - "{}/administrators/" 921 | - "{}/administrivia/" 922 | - "{}/adminitem.php" 923 | - "{}/adminitem/" 924 | - "{}/adminitems.php" 925 | - "{}/adminitems/" 926 | - "{}/adminlogin/acceso.asp/" 927 | - "{}/adminlogin/acceso.aspx/" 928 | - "{}/adminlogin/acceso.php/" 929 | - "{}/adminpanel/" 930 | - "{}/adminpro/" 931 | - "{}/adminsite/" 932 | - "{}/apanel/" 933 | - "{}/auth.php" 934 | - "{}/auth/" 935 | - "{}/auth/login/" 936 | - "{}/authadmin.php" 937 | - "{}/authenticate.php" 938 | - "{}/authentication.php" 939 | - "{}/author/Admin.aspx/" 940 | - "{}/authuser.php" 941 | - "{}/autologin.php" 942 | - "{}/autologin/" 943 | - "{}/backend-admin/" 944 | - "{}/backend/" 945 | - "{}/banneradmin/" 946 | - "{}/base/admin/" 947 | - "{}/bb-admin/" 948 | - "{}/bb-admin/admin.asp/" 949 | - "{}/bbadmin/" 950 | - "{}/bigadmin/" 951 | - "{}/bitrix/admin/" 952 | - "{}/blogindex/" 953 | - "{}/cabinet/" 954 | - "{}/cadmins/" 955 | - "{}/ccms/" 956 | - "{}/ccp14admin/" 957 | - "{}/cgi-bin/loginphp" 958 | - "{}/check.php" 959 | - "{}/checkadmin.php" 960 | - "{}/checklogin.php" 961 | - "{}/checkuser.php" 962 | - "{}/cms/" 963 | - "{}/cms/admin/" 964 | - "{}/cms/login/" 965 | - "{}/cmsadmin.php" 966 | - "{}/cmsadmin/" 967 | - "{}/config/" 968 | - "{}/control.php" 969 | - "{}/control/" 970 | - "{}/controle/" 971 | - "{}/controlpanel/" 972 | - "{}/count_admin/" 973 | - "{}/cp/" 974 | - "{}/cpanel_file/" 975 | - "{}/customer_login/" 976 | - "{}/dbadmin/" 977 | - "{}/debug/rus/autorisation/" 978 | - "{}/dir-login/" 979 | - "{}/directadmin/" 980 | - "{}/donos/" 981 | - "{}/edit/" 982 | - "{}/editor/" 983 | - "{}/entrar/" 984 | - "{}/ezsqliteadmin/" 985 | - "{}/fileadmin.php" 986 | - "{}/fileadmin/" 987 | - "{}/formslogin/" 988 | - "{}/forum/admin/" 989 | - "{}/funcoes/" 990 | - "{}/fw-panel" 991 | - "{}/globes_admin/" 992 | - "{}/hpwebjetadmin/" 993 | - "{}/instadmin/" 994 | - "{}/instranet/" 995 | - "{}/irc-macadmin/" 996 | - "{}/isadmin.php" 997 | - "{}/joomla/administrator/" 998 | - "{}/key/" 999 | - "{}/klarnetCMS/" 1000 | - "{}/kpanel/" 1001 | - "{}/letmein.php" 1002 | - "{}/letmein/" 1003 | - "{}/lists/admin/" 1004 | - "{}/log-in.php" 1005 | - "{}/log-in/" 1006 | - "{}/log_in.php" 1007 | - "{}/log_in/" 1008 | - "{}/logar/" 1009 | - "{}/login1/" 1010 | - "{}/login1php" 1011 | - "{}/login-redirect/" 1012 | - "{}/login-us/" 1013 | - "{}/login.aspx/" 1014 | - "{}/login.htm" 1015 | - "{}/login_admin/" 1016 | - "{}/login_adminphp" 1017 | - "{}/login_db/" 1018 | - "{}/login_out/" 1019 | - "{}/login_outphp" 1020 | - "{}/login_userphp" 1021 | - "{}/loginerror/" 1022 | - "{}/loginflat/" 1023 | - "{}/loginok/" 1024 | - "{}/loginphp" 1025 | - "{}/logins/" 1026 | - "{}/loginsave/" 1027 | - "{}/loginsuper/" 1028 | - "{}/loginsuperphp" 1029 | - "{}/loginuser/" 1030 | - "{}/loginusuarios/" 1031 | - "{}/logo_sysadmin/" 1032 | - "{}/logon/" 1033 | - "{}/logout/" 1034 | - "{}/logoutphp" 1035 | - "{}/macadmin/" 1036 | - "{}/mag/admin/" 1037 | - "{}/manage.php" 1038 | - "{}/management.php" 1039 | - "{}/management/" 1040 | - "{}/manager.php" 1041 | - "{}/manager/" 1042 | - "{}/manager/ispmgr/" 1043 | - "{}/manuallogin/" 1044 | - "{}/member.php" 1045 | - "{}/member/" 1046 | - "{}/memberadmin/" 1047 | - "{}/members.php" 1048 | - "{}/members/" 1049 | - "{}/membros/" 1050 | - "{}/memlogin/" 1051 | - "{}/meta_login/" 1052 | - "{}/modelsearch/" 1053 | - "{}/moderator/admin.asp/" 1054 | - "{}/modules/admin/" 1055 | - "{}/myadmin/" 1056 | - "{}/mysql-admin/" 1057 | - "{}/mysql/" 1058 | - "{}/mysqladmin/" 1059 | - "{}/mysqlmanager/" 1060 | - "{}/navSiteAdmin/" 1061 | - "{}/nedmin/production/index.php" 1062 | - "{}/nedmin/production/login.php" 1063 | - "{}/net/" 1064 | - "{}/newsadmin/" 1065 | - "{}/not/" 1066 | - "{}/nsw/" 1067 | - "{}/openvpnadmin/" 1068 | - "{}/p/m/a/" 1069 | - "{}/pages/admin/" 1070 | - "{}/painel/" 1071 | - "{}/paineldecontrole/" 1072 | - "{}/panel-administracion/" 1073 | - "{}/panel.php" 1074 | - "{}/panel/" 1075 | - "{}/pc/" 1076 | - "{}/pdc/" 1077 | - "{}/pgadmin/" 1078 | - "{}/php-my-admin/" 1079 | - "{}/php-myadmin/" 1080 | - "{}/php/" 1081 | - "{}/phpMyAdmin-2.2.3/" 1082 | - "{}/phpMyAdmin-2.2.6/" 1083 | - "{}/phpMyAdmin-2.5.1/" 1084 | - "{}/phpMyAdmin-2.5.4/" 1085 | - "{}/phpMyAdmin-2.5.5-pl1/" 1086 | - "{}/phpMyAdmin-2.5.5-rc1/" 1087 | - "{}/phpMyAdmin-2.5.5-rc2/" 1088 | - "{}/phpMyAdmin-2.5.5/" 1089 | - "{}/phpMyAdmin-2.5.6-rc1/" 1090 | - "{}/phpMyAdmin-2.5.6-rc2/" 1091 | - "{}/phpMyAdmin-2.5.6/" 1092 | - "{}/phpMyAdmin-2.5.7-pl1/" 1093 | - "{}/phpMyAdmin-2.5.7/" 1094 | - "{}/phpMyAdmin-2.6.0-alpha2/" 1095 | - "{}/phpMyAdmin-2.6.0-alpha/" 1096 | - "{}/phpMyAdmin-2.6.0-beta1/" 1097 | - "{}/phpMyAdmin-2.6.0-beta2/" 1098 | - "{}/phpMyAdmin-2.6.0-pl1/" 1099 | - "{}/phpMyAdmin-2.6.0-pl2/" 1100 | - "{}/phpMyAdmin-2.6.0-pl3/" 1101 | - "{}/phpMyAdmin-2.6.0-rc1/" 1102 | - "{}/phpMyAdmin-2.6.0-rc2/" 1103 | - "{}/phpMyAdmin-2.6.0-rc3/" 1104 | - "{}/phpMyAdmin-2.6.0/" 1105 | - "{}/phpMyAdmin-2.6.1-pl1/" 1106 | - "{}/phpMyAdmin-2.6.1-pl2/" 1107 | - "{}/phpMyAdmin-2.6.1-pl3/" 1108 | - "{}/phpMyAdmin-2.6.1-rc1/" 1109 | - "{}/phpMyAdmin-2.6.1-rc2/" 1110 | - "{}/phpMyAdmin-2.6.1/" 1111 | - "{}/phpMyAdmin-2.6.2-beta1/" 1112 | - "{}/phpMyAdmin-2.6.2-pl1/" 1113 | - "{}/phpMyAdmin-2.6.2-rc1/" 1114 | - "{}/phpMyAdmin-2.6.2/" 1115 | - "{}/phpMyAdmin-2.6.3-pl1/" 1116 | - "{}/phpMyAdmin-2.6.3-rc1/" 1117 | - "{}/phpMyAdmin-2.6.3/" 1118 | - "{}/phpMyAdmin-2.6.4-pl1/" 1119 | - "{}/phpMyAdmin-2.6.4-pl2/" 1120 | - "{}/phpMyAdmin-2.6.4-pl3/" 1121 | - "{}/phpMyAdmin-2.6.4-pl4/" 1122 | - "{}/phpMyAdmin-2.6.4-rc1/" 1123 | - "{}/phpMyAdmin-2.6.4/" 1124 | - "{}/phpMyAdmin-2.7.0-beta1/" 1125 | - "{}/phpMyAdmin-2.7.0-pl1/" 1126 | - "{}/phpMyAdmin-2.7.0-pl2/" 1127 | - "{}/phpMyAdmin-2.7.0-rc1/" 1128 | - "{}/phpMyAdmin-2.7.0/" 1129 | - "{}/phpMyAdmin-2.8.0-beta1/" 1130 | - "{}/phpMyAdmin-2.8.0-rc2/" 1131 | - "{}/phpMyAdmin-2.8.0.1/" 1132 | - "{}/phpMyAdmin-2.8.0.2/" 1133 | - "{}/phpMyAdmin-2.8.0.3/" 1134 | - "{}/phpMyAdmin-2.8.0.4/" 1135 | - "{}/phpMyAdmin-2.8.0/" 1136 | - "{}/phpMyAdmin-2.8.1-rc1/" 1137 | - "{}/phpMyAdmin-2.8.1/" 1138 | - "{}/phpMyAdmin-2.8.2/" 1139 | - "{}/phpMyAdmin-2/" 1140 | - "{}/phpMyAdmin/" 1141 | - "{}/phpSQLiteAdmin/" 1142 | - "{}/phpldapadmin/" 1143 | - "{}/phpmanager/" 1144 | - "{}/phpmy-admin/" 1145 | - "{}/phpmyadmin2/" 1146 | - "{}/phppgadmin/" 1147 | - "{}/platz_login/" 1148 | - "{}/pma2005/" 1149 | - "{}/pma/" 1150 | - "{}/power_user/" 1151 | - "{}/private.php/" 1152 | - "{}/processlogin.php/" 1153 | - "{}/project-admins/" 1154 | - "{}/pureadmin/" 1155 | - "{}/radmind-1/" 1156 | - "{}/radmind/" 1157 | - "{}/rcLogin/" 1158 | - "{}/rcjakar/" 1159 | - "{}/registration/" 1160 | - "{}/relogin.htm" 1161 | - "{}/relogin.html" 1162 | - "{}/relogin.php" 1163 | - "{}/saff/" 1164 | - "{}/secret/" 1165 | - "{}/secrets/" 1166 | - "{}/secure/" 1167 | - "{}/security/" 1168 | - "{}/senha/" 1169 | - "{}/senhas/" 1170 | - "{}/server_admin_small/" 1171 | - "{}/sff/" 1172 | - "{}/showlogin/" 1173 | - "{}/sign-in.php" 1174 | - "{}/sign-in/" 1175 | - "{}/sign_in.php" 1176 | - "{}/sign_in/" 1177 | - "{}/signin.php" 1178 | - "{}/signin/" 1179 | - "{}/simpleLogin/" 1180 | - "{}/sistema/" 1181 | - "{}/site/admin/" 1182 | - "{}/siteadmin.php" 1183 | - "{}/siteadmin/" 1184 | - "{}/smblogin/" 1185 | - "{}/sql-admin/" 1186 | - "{}/sqlmanager/" 1187 | - "{}/sqlweb/" 1188 | - "{}/ss_vms_admin_sm/" 1189 | - "{}/sshadmin/" 1190 | - "{}/staradmin/" 1191 | - "{}/statredir/" 1192 | - "{}/sub-login/" 1193 | - "{}/super1/" 1194 | - "{}/super1php" 1195 | - "{}/super_indexphp" 1196 | - "{}/super_loginphp" 1197 | - "{}/superman/" 1198 | - "{}/supermanagerphp" 1199 | - "{}/supermanphp" 1200 | - "{}/superphp" 1201 | - "{}/superuser.php" 1202 | - "{}/superuser/" 1203 | - "{}/superuserphp" 1204 | - "{}/supervise/" 1205 | - "{}/supervise/Loginphp" 1206 | - "{}/supervisor/" 1207 | - "{}/support_login/" 1208 | - "{}/svn/" 1209 | - "{}/sys-admin/" 1210 | - "{}/sysadm/" 1211 | - "{}/sysadmins/" 1212 | - "{}/system-administration/" 1213 | - "{}/system_administration/" 1214 | - "{}/typo3/" 1215 | - "{}/ur-admin/" 1216 | - "{}/user/" 1217 | - "{}/user/admin.php" 1218 | - "{}/useradmin/" 1219 | - "{}/userlogin.php" 1220 | - "{}/users.php" 1221 | - "{}/users/" 1222 | - "{}/users/admin.php" 1223 | - "{}/usr/" 1224 | - "{}/usuario/" 1225 | - "{}/usuario/user.asp/" 1226 | - "{}/usuario/user.aspx/" 1227 | - "{}/usuario/user.php/" 1228 | - "{}/usuario/wp-login.asp/" 1229 | - "{}/usuario/wp-login.aspx/" 1230 | - "{}/usuario/wp-login.php/" 1231 | - "{}/usuarios/" 1232 | - "{}/utility_login/" 1233 | - "{}/uvpanel/" 1234 | - "{}/vadmind/" 1235 | - "{}/vmailadmin/" 1236 | - "{}/vorod.php" 1237 | - "{}/vorod/" 1238 | - "{}/vorud.php" 1239 | - "{}/vorud/" 1240 | - "{}/webadmin.asp/" 1241 | - "{}/webadmin/" 1242 | - "{}/webadmin/admin.asp/" 1243 | - "{}/webadmin/user.asp/" 1244 | - "{}/webadmin/user.aspx/" 1245 | - "{}/webadmin/user.php/" 1246 | - "{}/webadmin/wp-login.asp/" 1247 | - "{}/webadmin/wp-login.aspx/" 1248 | - "{}/webadmin/wp-login.php/" 1249 | - "{}/webdb/" 1250 | - "{}/webmaster.php" 1251 | - "{}/webmaster/" 1252 | - "{}/websql/" 1253 | - "{}/wizmysqladmin/" 1254 | - "{}/wp-admin/" 1255 | - "{}/wp-login.asp/" 1256 | - "{}/wp-login.aspx/" 1257 | - "{}/wp-login.php/" 1258 | - "{}/wp-login/" 1259 | - "{}/xlogin/" 1260 | - "{}/wp-content/plugins/" 1261 | - "{}/wp-includes/" 1262 | - "{}/user/login/" 1263 | - "{}/admin/login/" 1264 | - "{}/user/reset/" 1265 | - "{}/admin/settings/" 1266 | - "{}/adminer/" 1267 | - "{}/phpmyadmin/sql.php" 1268 | - "{}/phpmyadmin-2.5/" 1269 | - "{}/filemanager/" 1270 | - "{}/fileexplorer/" 1271 | - "{}/uploadfile/" 1272 | - "{}/uploadpanel/" 1273 | - "{}/uploadadmin/" 1274 | - "{}/uploadarea/" 1275 | - "{}/webshell.php" 1276 | - "{}/backdoor.php" 1277 | - "{}/r57.php" 1278 | - "{}/c99.php" 1279 | - "{}/cmd.php" 1280 | - "{}/upload.php" 1281 | - "{}/shell.php" 1282 | - "{}/p0wned.php" 1283 | - "{}/phpshell.php" 1284 | - "{}/exec.php" 1285 | - "{}/shell_backdoor.php" 1286 | - "{}/exploit.php" 1287 | - "{}/exploit/upload.php" 1288 | - "{}/remoteexploit.php" 1289 | - "{}/shell-exploit.php" 1290 | - "{}/reverse-shell.php" 1291 | - "{}/payload.php" 1292 | - "{}/pwned.php" 1293 | - "{}/rootkit.php" 1294 | - "{}/login_redirect.php" 1295 | - "{}/authent.php" 1296 | - "{}/loginadmin/" 1297 | - "{}/panel-login.php" 1298 | - "{}/shell.php?cmd=" 1299 | - "{}/backdoor.php?exec=" 1300 | - "{}/upload.php?file=" 1301 | - "{}/execshell.php?run=" 1302 | - "{}/webshell.php?cmd=" 1303 | - "{}/hidden-backdoor.php?command=" 1304 | - "{}/admin/proxy/" 1305 | - "{}/admin/caching/" 1306 | - "{}/admin/cache/" 1307 | - "{}/adminpanel/proxy/" 1308 | - "{}/proxyadmin/" 1309 | - "{}/hiddenadmin/" 1310 | - "{}/plesk/" 1311 | - "{}/vesta/" 1312 | - "{}/ispconfig/" 1313 | - "{}/webmin/" 1314 | - "{}/virtualmin/" 1315 | - "{}/kloxo/" 1316 | - "{}/webuzo/" 1317 | - "{}/system/admin/" 1318 | - "{}/support/admin/" 1319 | - "{}/helpdesk/" 1320 | - "{}/cmd.jsp" 1321 | - "{}/shell.jsp" 1322 | - "{}/shell.aspx" 1323 | - "{}/backdoor.jsp" 1324 | - "{}/c99shell.php" 1325 | - "{}/r57shell.php" 1326 | - "{}/backdoor.cgi" 1327 | - "{}/shell.cgi" 1328 | - "{}/cmd.cgi" 1329 | - "{}/webshell.cgi" 1330 | - "{}/uploadshell.php" 1331 | - "{}/bash.php" 1332 | - "{}/shell.asp" 1333 | - "{}/sh.php" 1334 | - "{}/sh3ll.php" 1335 | - "{}/webshell.aspx" 1336 | - "{}/uploadfile.php" 1337 | - "{}/phpshell.jsp" 1338 | - "{}/cmd-backdoor.php" 1339 | - "{}/cmd-backdoor.jsp" 1340 | - "{}/backdoorfile.php" 1341 | - "{}/shell-auth.php" 1342 | - "{}/adminshell.php" 1343 | - "{}/shell_terminal.php" 1344 | - "{}/ajaxshell.php" 1345 | - "{}/terminal.php" 1346 | - "{}/backdooradmin.php" 1347 | - "{}/shellupload.php" 1348 | - "{}/shell-backdoor.php" 1349 | - "{}/superadmin.php" 1350 | - "{}/useradmin.php" 1351 | - "{}/root-access.php" 1352 | - "{}/root-shell.php" 1353 | - "{}/php-shell.php" 1354 | - "{}/fileexplorer.php" 1355 | - "{}/filemanager.php" 1356 | - "{}/cmdshell.php" 1357 | - "{}/cmdshell.jsp" 1358 | - "{}/system-shell.php" 1359 | - "{}/phpmyadmin-shell.php" 1360 | - "{}/database-shell.php" 1361 | - "{}/exec-code.php" 1362 | - "{}/webshell-php.php" 1363 | - "{}/sh-webshell.php" 1364 | - "{}/cmd-webshell.php" 1365 | - "{}/webadmin-backdoor.php" 1366 | - "{}/filemanager-shell.php" 1367 | - "{}/web-shell.php" 1368 | - "{}/sh3ll.jsp" 1369 | - "{}/sp_shell.php" 1370 | - "{}/backdoor-sp.php" 1371 | - "{}/upload-backdoor.php" 1372 | - "{}/shell-exec.php" 1373 | - "{}/hacked.php" 1374 | - "{}/system-exec.php" 1375 | - "{}/adminwebshell.php" 1376 | - "{}/adminwebshell.jsp" 1377 | - "{}/adminexec.php" 1378 | - "{}/superuser-shell.php" 1379 | - "{}/hidden-backdoor.php" 1380 | - "{}/root-webshell.php" 1381 | - "{}/cmd_exec.php" 1382 | - "{}/file-shell.php" 1383 | - "{}/mysql-shell.php" 1384 | - "{}/php-shell.jsp" 1385 | - "{}/webshell-login.php" 1386 | - "{}/shell_authentication.php" 1387 | - "{}/superadmin-shell.php" 1388 | - "{}/sql-shell.php" 1389 | - "{}/sqli-shell.php" 1390 | - "{}/panel-backdoor.php" 1391 | - "{}/console-backdoor.php" 1392 | - "{}/console-shell.php" 1393 | - "{}/sp0wned.php" 1394 | - "{}/php-webshell.jsp" 1395 | - "{}/webshell-uploader.php" 1396 | - "{}/system-backdoor.php" 1397 | - "{}/web-backdoor.php" 1398 | - "{}/system-exploit.php" 1399 | - "{}/sh-backdoor.php" 1400 | - "{}/proxy-shell.php" 1401 | - "{}/web-backdoor.jsp" 1402 | - "{}/fileshell.php" 1403 | - "{}/fileshell.jsp" 1404 | - "{}/debugger.php" 1405 | - "{}/debugger.jsp" 1406 | - "{}/backdoor_exec.php" 1407 | - "{}/uploadbackdoor.php" 1408 | - "{}/upload-backdoor.jsp" 1409 | - "{}/r57-backdoor.php" 1410 | - "{}/c99-backdoor.php" 1411 | - "{}/php-backdoor.jsp" 1412 | - "{}/c99shell.jsp" 1413 | - "{}/panel-admin.php" 1414 | - "{}/web-admin.php" 1415 | - "{}/php-my-admin.php" 1416 | - "{}/db-shell.php" 1417 | - "{}/db-backdoor.php" 1418 | - "{}/cpanel-backdoor.php" 1419 | - "{}/cpanel-backdoor.jsp" 1420 | - "{}/hackshell.php" 1421 | - "{}/remotetool.php" 1422 | - "{}/server-shell.php" 1423 | - "{}/access-shell.php" 1424 | - "{}/root-shell.jsp" 1425 | - "{}/admin-tools.php" 1426 | - "{}/remote-access.php" 1427 | - "{}/cpanel-admin.php" 1428 | - "{}/cpanel-admin.jsp" 1429 | - "{}/web-file-manager.php" 1430 | - "{}/exec-backdoor.php" 1431 | - "{}/admin-backdoor.jsp" 1432 | - "{}/sh3ll-backdoor.php" 1433 | - "{}/exploit-shell.php" 1434 | - "{}/ajax-backdoor.php" 1435 | - "{}/php-remote-shell.php" 1436 | - "{}/remote-shell.php" 1437 | - "{}/phpmyadmin-backdoor.php" 1438 | - "{}/hackershell.php" 1439 | - "{}/web-shellback.php" 1440 | - "{}/debug-backdoor.php" 1441 | - "{}/exec-remote.php" 1442 | - "{}/cmd-exploit.php" 1443 | - "{}/upload-shell.php" 1444 | - "{}/uploadshell.jsp" 1445 | - "{}/backdoor-upload.php" 1446 | - "{}/terminal-backdoor.php" 1447 | - "{}/ssh-backdoor.php" 1448 | - "{}/fileupload-backdoor.php" 1449 | - "{}/access-sudo.php" 1450 | - "{}/root-access.jsp" 1451 | - "{}/root-exploit.php" 1452 | - "{}/backdoor-exploit.php" 1453 | - "{}/user-shell.php" 1454 | - "{}/shell" 1455 | - "{}/cmd.aspx" 1456 | - "{}/webshell.jsp" 1457 | - "{}/shell.html" 1458 | - "{}/shell.htm" 1459 | - "{}/backdoor" 1460 | - "{}/backdoor.aspx" 1461 | - "{}/r57.jsp" 1462 | - "{}/c99.jsp" 1463 | - "{}/reverse.php" 1464 | - "{}/reverse" 1465 | - "{}/p0wned.jsp" 1466 | - "{}/admin_shell.php" 1467 | - "{}/execute.php" 1468 | - "{}/uploader.php" 1469 | - "{}/uploader" 1470 | - "{}/exec.jsp" 1471 | - "{}/php-backdoor.php" 1472 | - "{}/webshell-backdoor.php" 1473 | - "{}/upload_backdoor.php" 1474 | - "{}/shell_admin.php" 1475 | - "{}/shell_upload.php" 1476 | - "{}/remote.php" 1477 | - "{}/hack.php" 1478 | - "{}/cmd_hack.php" 1479 | - "{}/hack.jsp" 1480 | - "{}/hack_shell.php" 1481 | - "{}/webshell-backdoor.jsp" 1482 | - "{}/mywebshell.php" 1483 | - "{}/mywebshell.jsp" 1484 | - "{}/uploadwebshell.php" 1485 | - "{}/shell_exec.php" 1486 | - "{}/l337.php" 1487 | - "{}/jsp_shell.php" 1488 | - "{}/terminal.jsp" 1489 | - "{}/webterminal.php" 1490 | - "{}/web-terminal.php" 1491 | - "{}/webshell_upload.php" 1492 | - "{}/shell-code.php" 1493 | - "{}/cmd-code.php" 1494 | - "{}/fileupload.php" 1495 | - "{}/fileexplorer.jsp" 1496 | - "{}/filemanager.jsp" 1497 | - "{}/secure-backdoor.php" 1498 | - "{}/securedshell.php" 1499 | - "{}/php-webshell.php" 1500 | - "{}/php-web-shell.php" 1501 | - "{}/command-exec.php" 1502 | - "{}/cmd-exec.php" 1503 | - "{}/admin-backdoor.php" 1504 | - "{}/admin-shell.jsp" 1505 | - "{}/webshell_admin.php" 1506 | - "{}/cmdpanel.php" 1507 | - "{}/superuser-backdoor.php" 1508 | - "{}/web-admin-backdoor.php" 1509 | - "{}/fileupload_shell.php" 1510 | - "{}/server-exec.php" 1511 | - "{}/upload-shell.jsp" 1512 | - "{}/cmd-hack.jsp" 1513 | - "{}/admin/tools/" 1514 | - "{}/adminpanel/login/" 1515 | - "{}/admin/config/" 1516 | - "{}/admin/cpanel/" 1517 | - "{}/adminconsole/" 1518 | - "{}/admin/auth/" 1519 | - "{}/systempanel/" 1520 | - "{}/adminstatus/" 1521 | - "{}/adminview/" 1522 | - "{}/adminupdate/" 1523 | - "{}/admindashboard/" 1524 | - "{}/adminareas/" 1525 | - "{}/dashboard/" 1526 | - "{}/serveradmin/" 1527 | - "{}/portaladmin/" 1528 | - "{}/cloudadmin/" 1529 | - "{}/admincenter/" 1530 | - "{}/adminzone/" 1531 | - "{}/admin-panel/" 1532 | - "{}/systemcontrol/" 1533 | - "{}/webadminpanel/" 1534 | - "{}/adminpanelv2/" 1535 | - "{}/serverconsole/" 1536 | - "{}/managepanel/" 1537 | - "{}/adminconfig/" 1538 | - "{}/adminaction/" 1539 | - "{}/useraccount/" 1540 | - "{}/systemadmin/" 1541 | - "{}/adminstats/" 1542 | - "{}/adminpage/" 1543 | - "{}/siteadmin/login/" 1544 | - "{}/accesscontrol/" 1545 | - "{}/adminwebshell/" 1546 | - "{}/webshelladmin/" 1547 | - "{}/backdoorlogin/" 1548 | - "{}/adminpanel/auth/" 1549 | - "{}/userpanel/" 1550 | - "{}/configuracion/" 1551 | - "{}/iniciar-sesion/" 1552 | - "{}/login_user/" 1553 | - "{}/wp-content/" 1554 | - "{}/plugins/" 1555 | - "{}/admin-tools/" 1556 | - "{}/panel-de-control/" 1557 | - "{}/es/admin/" 1558 | - "{}/adminstrar/" 1559 | - "{}/seguridad/" 1560 | - "{}/back-end/" 1561 | - "{}/authentification/" 1562 | - "{}/connexion/" 1563 | - "{}/paneladmin/" 1564 | - "{}/administração/" 1565 | - "{}/connexion-utilisateur/" 1566 | - "{}/connexion-admin/" 1567 | - "{}/adminpannel/" 1568 | - "{}/admingrupo/" 1569 | - "{}/superadmin/" 1570 | - "{}/secureadmin/" 1571 | - "{}/administrateur/" 1572 | - "{}/admin-area/" 1573 | - "{}/control-panel/" 1574 | - "{}/interfaceadmin/" 1575 | - "{}/admininterface/" 1576 | - "{}/managersystem/" 1577 | - "{}/paneldecontrol/" 1578 | - "{}/gestion/" 1579 | - "{}/adminroot/" 1580 | - "{}/adminbackdoor/" 1581 | - "{}/admin_panel/" 1582 | - "{}/superpanel/" 1583 | - "{}/administradorlogin/" 1584 | - "{}/cloudpanel/" 1585 | - "{}/paneladministrator/" 1586 | - "{}/paneles/" 1587 | - "{}/superadmin/login/" 1588 | - "{}/su-login/" 1589 | - "{}/admin/authentication/" 1590 | - "{}/adminpannel-login/" 1591 | - "{}/administratorpanel/" 1592 | - "{}/panel-de-gestion/" 1593 | - "{}/tpanel/" 1594 | - "{}/backoffice/" 1595 | - "{}/admin_backups/" 1596 | - "{}/back-end/admin/" 1597 | - "{}/adminpath/" 1598 | - "{}/administrator-login/" 1599 | - "{}/manage-admin/" 1600 | - "{}/backdoor-admin/" 1601 | - "{}/backdoor/admin/" 1602 | - "{}/admin_path/" 1603 | - "{}/admincontrolpanel/" 1604 | - "{}/system_admin/" 1605 | - "{}/admin_entrar/" 1606 | - "{}/admin_dashboard/" 1607 | - "{}/webshell/" 1608 | - "{}/panel_webadmin/" 1609 | - "{}/admin_management/" 1610 | - "{}/backdoorconsole/" 1611 | - "{}/manage_panel/" 1612 | - "{}/accessadmin/" 1613 | - "{}/login01/" 1614 | - "{}/adminlogin01/" 1615 | - "{}/admin_backdoor/" 1616 | - "{}/securepanel/" 1617 | - "{}/adminpanel_secure/" 1618 | - "{}/webbackdoor/" 1619 | - "{}/admin-dashboard/" 1620 | - "{}/login/admindashboard/" 1621 | - "{}/admin_only/" 1622 | - "{}/admin-login.asp/" 1623 | - "{}/admin-2/" 1624 | - "{}/securitypanel/" 1625 | - "{}/entrar-sistema/" 1626 | - "{}/benutzer/login/" 1627 | - "{}/adminpanel_de/" 1628 | - "{}/loginadmin_de/" 1629 | - "{}/log_in_admin/" 1630 | - "{}/administration_fr/" 1631 | - "{}/panel-admin/" 1632 | - "{}/connexionadmin/" 1633 | - "{}/admin-login-fr/" 1634 | - "{}/adminpannel-fr/" 1635 | - "{}/panel-gestion/" 1636 | - "{}/panel-control/" 1637 | - "{}/panelcontrol/" 1638 | - "{}/gestionadmin/" 1639 | - "{}/iniciar-sesion-admin/" 1640 | - "{}/admin-login-es/" 1641 | - "{}/adminsecure/" 1642 | - "{}/loginadmin-pt/" 1643 | - "{}/adminstrador/" 1644 | - "{}/paneladministrativo/" 1645 | - "{}/admin-log/" 1646 | - "{}/loginadmin-it/" 1647 | - "{}/adminlogin-it/" 1648 | - "{}/adminpanel-it/" 1649 | - "{}/gestioneadmin/" 1650 | - "{}/paneladministration/" 1651 | - "{}/login-administrator/" 1652 | - "{}/administrare/" 1653 | - "{}/utilisateur-admin/" 1654 | - "{}/adminconnection/" 1655 | - "{}/beheer-login/" 1656 | - "{}/beheerder-panel/" 1657 | - "{}/systembeheer/" 1658 | - "{}/loginadminnl/" 1659 | - "{}/beheerpanel/" 1660 | - "{}/adminarea-pl/" 1661 | - "{}/logowanie-admin/" 1662 | - "{}/administracja/" 1663 | - "{}/login-pf/" 1664 | - "{}/admin-login-se/" 1665 | - "{}/adminpanel-fi/" 1666 | - "{}/admin-login-no/" 1667 | - "{}/admin-panel-pl/" -------------------------------------------------------------------------------- /okadminfinder/assets/user-agents.yml: -------------------------------------------------------------------------------- 1 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10; rv:33.0) Gecko/20100101 Firefox/33.0" 2 | - "Mozilla/5.0 (X11; Linux i586; rv:31.0) Gecko/20100101 Firefox/31.0" 3 | - "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20130401 Firefox/31.0" 4 | - "Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0" 5 | - "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:29.0) Gecko/20120101 Firefox/29.0" 6 | - "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/29.0" 7 | - "Mozilla/5.0 (X11; OpenBSD amd64; rv:28.0) Gecko/20100101 Firefox/28.0" 8 | - "Mozilla/5.0 (X11; Linux x86_64; rv:28.0) Gecko/20100101 Firefox/28.0" 9 | - "Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20121202 Firefox/17.0 Iceweasel/17.0.1" 10 | - "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1250.0 Iron/22.0.2150.0 Safari/537.4" 11 | - "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/537.4 (KHTML, like Gecko) Chrome/22.0.1250.0 Iron/22.0.2150.0 Safari/537.4" 12 | - "Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/533.1 (KHTML, like Gecko) Maxthon/3.0.8.2 Safari/533.1" 13 | - "Mozilla/5.0 (Windows; U; Windows NT 6.1; rv:2.2) Gecko/20110201" 14 | - "Opera/9.80 (X11; Linux i686; Ubuntu/14.10) Presto/2.12.388 Version/12.16" 15 | - "Opera/9.80 (Windows NT 6.0) Presto/2.12.388 Version/12.14" 16 | - "Mozilla/5.0 (Windows NT 6.0; rv:2.0) Gecko/20100101 Firefox/4.0 Opera 12.14" 17 | - "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0) Opera 12.14" 18 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_3) AppleWebKit/537.75.14 (KHTML, like Gecko) Version/7.0.3 Safari/7046A194A" 19 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/537.13+ (KHTML, like Gecko) Version/5.1.7 Safari/534.57.2" 20 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/534.55.3 (KHTML, like Gecko) Version/5.1.3 Safari/534.53.10" 21 | - "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_8; de-at) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1" 22 | - "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; da-dk) AppleWebKit/533.21.1 (KHTML, like Gecko) Version/5.0.5 Safari/533.21.1" 23 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 24 | - "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 25 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 26 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36" 27 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Safari/604.1.38" 28 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36" 29 | - "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36" 30 | - "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:55.0) Gecko/20100101 Firefox/55.0" 31 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36 Edge/15.15063" 32 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Safari/604.1.38" 33 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0" 34 | - "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 35 | - "Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko" 36 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 37 | - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 38 | - "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:56.0) Gecko/20100101 Firefox/56.0" 39 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 40 | - "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 41 | - "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:55.0) Gecko/20100101 Firefox/55.0" 42 | - "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:56.0) Gecko/20100101 Firefox/56.0" 43 | - "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:55.0) Gecko/20100101 Firefox/55.0" 44 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/603.3.8 (KHTML, like Gecko) Version/10.1.2 Safari/603.3.8" 45 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:55.0) Gecko/20100101 Firefox/55.0" 46 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0" 47 | - "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko" 48 | - "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:56.0) Gecko/20100101 Firefox/56.0" 49 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:56.0) Gecko/20100101 Firefox/56.0" 50 | - "Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0" 51 | - "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0" 52 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36" 53 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.91 Safari/537.36" 54 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Safari/604.1.38" 55 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 56 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 57 | - "Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36" 58 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0" 59 | - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.91 Safari/537.36" 60 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.79 Safari/537.36 Edge/14.14393" 61 | - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36" 62 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/600.5.17 (KHTML, like Gecko) Version/8.0.5 Safari/600.5.17" 63 | - "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:55.0) Gecko/20100101 Firefox/55.0" 64 | - "Mozilla/5.0 (X11; Linux x86_64; rv:55.0) Gecko/20100101 Firefox/55.0" 65 | - "Mozilla/5.0 (Windows NT 6.1; Trident/7.0; rv:11.0) like Gecko" 66 | - "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 67 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/603.3.8 (KHTML, like Gecko) Version/10.1.2 Safari/603.3.8" 68 | - "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0; Trident/5.0)" 69 | - "Mozilla/5.0 (Windows NT 6.1; rv:56.0) Gecko/20100101 Firefox/56.0" 70 | - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/61.0.3163.79 Chrome/61.0.3163.79 Safari/537.36" 71 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/603.2.4 (KHTML, like Gecko) Version/10.1.1 Safari/603.2.4" 72 | - "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0" 73 | - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.79 Safari/537.36" 74 | - "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; Trident/5.0)" 75 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36" 76 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.79 Safari/537.36" 77 | - "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.91 Safari/537.36" 78 | - "Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36" 79 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:56.0) Gecko/20100101 Firefox/56.0" 80 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36" 81 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.91 Safari/537.36" 82 | - "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0" 83 | - "Mozilla/5.0 (Windows NT 6.1; rv:55.0) Gecko/20100101 Firefox/55.0" 84 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:55.0) Gecko/20100101 Firefox/55.0" 85 | - "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 86 | - "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36" 87 | - "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:37.0) Gecko/20100101 Firefox/37.0" 88 | - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/61.0.3163.100 Chrome/61.0.3163.100 Safari/537.36" 89 | - "Mozilla/5.0 (iPad; CPU OS 10_3_3 like Mac OS X) AppleWebKit/603.3.8 (KHTML, like Gecko) Version/10.0 Mobile/14G60 Safari/602.1" 90 | - "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36" 91 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:56.0) Gecko/20100101 Firefox/56.0" 92 | - "Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; Touch; rv:11.0) like Gecko" 93 | - "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:56.0) Gecko/20100101 Firefox/56.0" 94 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36" 95 | - "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36" 96 | - "Mozilla/5.0 (Windows NT 6.3; WOW64; rv:55.0) Gecko/20100101 Firefox/55.0" 97 | - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36" 98 | - "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:52.0) Gecko/20100101 Firefox/52.0" 99 | - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.78 Safari/537.36" 100 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.113 Safari/537.36" 101 | - "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:50.0) Gecko/20100101 Firefox/50.0" 102 | - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36" 103 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36 OPR/48.0.2685.39" 104 | - "Mozilla/5.0 (Windows NT 6.1; rv:52.0) Gecko/20100101 Firefox/52.0" 105 | - "Mozilla/5.0 (X11; Linux x86_64; rv:57.0) Gecko/20100101 Firefox/57.0" 106 | - "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:54.0) Gecko/20100101 Firefox/54.0" 107 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36 OPR/48.0.2685.35" 108 | - "Mozilla/5.0 (Windows NT 5.1; rv:52.0) Gecko/20100101 Firefox/52.0" 109 | - "Mozilla/5.0 (Windows NT 6.3; WOW64; Trident/7.0; rv:11.0) like Gecko" 110 | - "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36" 111 | - "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.118 Safari/537.36" 112 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 113 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/60.0.3112.90 Safari/537.36" 114 | - "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0" 115 | - "Mozilla/5.0 (X11; Linux x86_64; rv:56.0) Gecko/20100101 Firefox/56.0" 116 | - "Mozilla/5.0 (Windows NT 10.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36" 117 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36" 118 | - "Mozilla/5.0 (X11; Linux x86_64; rv:93.0) Gecko/20100101 Firefox/93.0" 119 | - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/14.1.1 Safari/605.1.15" 120 | - "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.85 Safari/537.36 Edg/90.0.818.46" 121 | - "Mozilla/5.0 (X11; CrOS x86_64 13982.82.0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.157 Safari/537.36" -------------------------------------------------------------------------------- /okadminfinder/cache.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # -*- coding: utf-8 -*- 3 | 4 | import os 5 | from functools import wraps 6 | 7 | import diskcache as dc 8 | 9 | # Initialize the cache 10 | if os.name == "nt": # Windows 11 | temp_dir = os.getenv("TEMP") 12 | else: # Unix-like systems 13 | temp_dir = "/tmp" 14 | 15 | # Create the cache in the appropriate temporary directory 16 | cache = dc.Cache(os.path.join(temp_dir, "okadminfinder_cache")) 17 | cache_enabled = True # Default state: cache is enabled 18 | 19 | 20 | def invalidate_all_cache(): 21 | """ 22 | Invalidate all cache entries 23 | """ 24 | cache.clear() 25 | 26 | 27 | def disable_cache(): 28 | """ 29 | Disable the cache 30 | """ 31 | global cache_enabled 32 | cache_enabled = False 33 | 34 | 35 | def is_cache_enabled() -> bool: 36 | """ 37 | Check if cache is enabled 38 | """ 39 | return cache_enabled 40 | 41 | 42 | def memoize_if_cache_enabled(func): 43 | """ 44 | Memoization decorator that respects the cache enabled state 45 | """ 46 | 47 | @wraps(func) 48 | def wrapper(*args, **kwargs): 49 | if is_cache_enabled(): 50 | # Exclude the 'self' object from the cache key 51 | cache_key = (func.__name__, args[1:], kwargs) 52 | if cache_key in cache: 53 | return cache[cache_key] 54 | result = func(*args, **kwargs) 55 | cache[cache_key] = result 56 | return result 57 | else: 58 | return func(*args, **kwargs) 59 | 60 | return wrapper 61 | -------------------------------------------------------------------------------- /okadminfinder/credit.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # -*- coding: utf-8 -*- 3 | 4 | from contextlib import contextmanager 5 | 6 | from rich.align import Align 7 | from rich.color import Color 8 | from rich.console import Console 9 | from rich.text import Text 10 | 11 | from okadminfinder.version import __creator__, __maintainer__, __version__ 12 | 13 | 14 | class Credit: 15 | @staticmethod 16 | def _apply_gradient(text, start_color, end_color): 17 | """ 18 | Apply a gradient to the given text. 19 | 20 | Args: 21 | text (str): The text to style. 22 | start_color (str): Starting color in hex format (e.g., "#ff0000"). 23 | end_color (str): Ending color in hex format (e.g., "#0000ff"). 24 | """ 25 | start = Color.parse(start_color).triplet 26 | end = Color.parse(end_color).triplet 27 | gradient = [ 28 | ( 29 | int(start[0] + (end[0] - start[0]) * i / len(text)), 30 | int(start[1] + (end[1] - start[1]) * i / len(text)), 31 | int(start[2] + (end[2] - start[2]) * i / len(text)), 32 | ) 33 | for i in range(len(text)) 34 | ] 35 | 36 | styled_text = Text() 37 | for char, color in zip(text, gradient): 38 | styled_text.append(char, style=f"rgb({color[0]},{color[1]},{color[2]})") 39 | return styled_text 40 | 41 | @contextmanager 42 | def set_credit(self): 43 | try: 44 | console = Console() 45 | credit_text = r""" 46 | ╔──────────────────────────────────────────────────────────────╗ 47 | │ ___ _ __ _ _ ___ _ _ │ 48 | │ / _ \| |/ /__ _ __| |_ __ (_)_ _ | __(_)_ _ __| |___ _ _ │ 49 | │ | (_) | ' str: 107 | credentials = f"{self.username}:{self.password}" 108 | return base64.b64encode(credentials.encode()).decode() 109 | 110 | def set_timeout(self): 111 | return Timeout(total=self.timeout) 112 | 113 | def retry_strategy(self): 114 | return Retry( 115 | total=self.num_retry, 116 | backoff_factor=1, 117 | status_forcelist=[429, 500, 502, 503, 504], 118 | allowed_methods=["HEAD", "GET", "OPTIONS"], 119 | ) 120 | 121 | def create_http_manager(self): 122 | """ 123 | Create an HTTP manager (either ProxyManager, SOCKSProxyManager, or PoolManager) based on proxy settings. 124 | :return: An instance of urllib3.ProxyManager, urllib3.contrib.socks.SOCKSProxyManager, or urllib3.PoolManager. 125 | """ 126 | if self.proxy_url: 127 | proxy_type, proxy_ip_port = self.parse_proxy_url(self.proxy_url) 128 | if proxy_type in ["socks4a", "socks5h"]: 129 | return SOCKSProxyManager( 130 | proxy_url=self.proxy_url, 131 | headers=self.headers, 132 | timeout=self.set_timeout(), 133 | num_pools=self.num_pools, 134 | retries=self.retry_strategy(), 135 | maxsize=self.threads, 136 | block=True, 137 | ) 138 | elif proxy_type in ["socks4", "socks5"]: 139 | proxy_type = self.transform_socks_type(proxy_type) 140 | transformed_proxy_url = f"{proxy_type}://{proxy_ip_port}" 141 | return SOCKSProxyManager( 142 | proxy_url=transformed_proxy_url, 143 | headers=self.headers, 144 | timeout=self.set_timeout(), 145 | num_pools=self.num_pools, 146 | retries=self.retry_strategy(), 147 | maxsize=self.threads, 148 | block=True, 149 | ) 150 | elif proxy_type in ["http", "https"]: 151 | return ProxyManager( 152 | proxy_url=self.proxy_url, 153 | proxy_headers=self.get_proxy_headers(), 154 | headers=self.headers, 155 | timeout=self.set_timeout(), 156 | num_pools=self.num_pools, 157 | retries=self.retry_strategy(), 158 | maxsize=self.threads, 159 | block=True, 160 | ) 161 | else: 162 | raise ProxyTypeError(proxy_type) 163 | else: 164 | return PoolManager( 165 | headers=self.headers, 166 | timeout=self.set_timeout(), 167 | num_pools=self.num_pools, 168 | retries=self.retry_strategy(), 169 | maxsize=self.threads, 170 | block=True, 171 | ) 172 | 173 | @staticmethod 174 | def parse_proxy_url(proxy_url: str): 175 | """ 176 | Parse the proxy URL to extract the scheme and IP:port. 177 | :param proxy_url: The proxy URL. 178 | :return: A tuple containing the proxy type and IP:port. 179 | """ 180 | parsed_url = urlparse(proxy_url) 181 | if not parsed_url.scheme or not parsed_url.netloc: 182 | raise ProxyURLFormatError(proxy_url) 183 | return parsed_url.scheme, parsed_url.netloc 184 | 185 | @staticmethod 186 | def transform_socks_type(proxy_type: str): 187 | """ 188 | Transform socks4 to socks4a and socks5 to socks5h. 189 | :param proxy_type: The proxy type. 190 | :return: The transformed proxy type. 191 | """ 192 | if proxy_type == "socks4": 193 | return "socks4a" 194 | elif proxy_type == "socks5": 195 | return "socks5h" 196 | return proxy_type 197 | 198 | @staticmethod 199 | def get_proxy_headers(): 200 | """ 201 | Get the proxy headers for HTTP requests. 202 | :return: A dictionary of proxy headers. 203 | """ 204 | return {"Proxy-Authorization": "Basic base64encodedcredentials"} 205 | 206 | @staticmethod 207 | def parse_status_codes(status_codes_str: str) -> set: 208 | valid_status_codes = set() 209 | for part in status_codes_str.split(","): 210 | if "-" in part: 211 | start, end = map(int, part.split("-")) 212 | valid_status_codes.update(range(start, end + 1)) 213 | else: 214 | valid_status_codes.add(int(part)) 215 | return valid_status_codes 216 | 217 | def request(self, method: str, url: str, **kwargs): 218 | """ 219 | Make an HTTP request using the appropriate manager. 220 | :param method: The HTTP method (e.g., 'GET', 'POST'). 221 | :param url: The URL to request. 222 | :param kwargs: Additional keyword arguments for the request. 223 | :return: The HTTP response. 224 | """ 225 | return self.http_manager.request(method, url, **kwargs) 226 | 227 | @memoize_if_cache_enabled 228 | def check_url(self, url: str) -> bool: 229 | """ 230 | Check the availability of a URL. 231 | :param url: The URL to check. 232 | :return: True if the URL is available, False otherwise. 233 | """ 234 | try: 235 | if self.delay > 0: 236 | sleep(self.delay) 237 | resp = self.request("GET", url) 238 | # print(f"[{resp.status}] {url}") 239 | if resp.status in self.status_codes: 240 | return True 241 | except ( 242 | ConnectTimeoutError, 243 | MaxRetryError, 244 | HTTPError, 245 | ProxyError, 246 | ): 247 | return False 248 | 249 | def check_urls(self, paths: list) -> list: 250 | """ 251 | Check the availability of a list of URLs with multithreading and a progress bar. 252 | :param paths: The list of URLs to check. 253 | :return: A list of available URLs. 254 | """ 255 | 256 | # Initialize the progress bar 257 | progress = Progress() 258 | task = progress.add_task(" [cyan]Checking URLs...", total=len(paths)) 259 | try: 260 | with Live(progress, auto_refresh=True, refresh_per_second=10) as live: 261 | # Submit all tasks to the executor 262 | futures = { 263 | self.executor.submit(self.check_url, path): path for path in paths 264 | } 265 | 266 | # Process tasks as they are completed 267 | for future in as_completed(futures): 268 | path = futures[future] 269 | if future.result(): # Check if the URL is valid 270 | self.available_urls.add(path) 271 | 272 | # Update the progress bar 273 | progress.update(task, advance=1) 274 | 275 | # Dynamically update the live display 276 | if self.available_urls: 277 | found_urls_display = "\n".join(self.available_urls) 278 | live.update( 279 | Group( 280 | progress, 281 | Panel( 282 | found_urls_display, 283 | box=ROUNDED, 284 | title="[bold chartreuse3]Found URLs[/bold chartreuse3]", 285 | subtitle="[dark_sea_green4]Thank you for using okadminfinder![/dark_sea_green4]", 286 | expand=False, 287 | highlight=True, 288 | border_style="dark_green", 289 | padding=(0, 10), 290 | ), 291 | ) 292 | ) 293 | if self.output_path: 294 | self.save_results(list(self.available_urls), self.output_path) 295 | except KeyboardInterrupt: 296 | # Handle user interruption gracefully 297 | for future in futures: 298 | future.cancel() 299 | self.executor.shutdown(wait=False) 300 | progress.stop() 301 | print("\n:boom: [bold red]Process interrupted by user[/bold red] :boom:") 302 | 303 | return list(self.available_urls) 304 | 305 | @staticmethod 306 | def save_results(urls: list, output_path: str): 307 | """ 308 | Save the list of URLs to a file. 309 | :param urls: The list of URLs to save. 310 | :param output_path: The path to the output file. 311 | """ 312 | with open(output_path, "w") as f: 313 | for url in urls: 314 | f.write(url + "\n") 315 | print( 316 | f":boom: [bold yellow]Results written to {output_path}[/bold yellow] :boom:" 317 | ) 318 | -------------------------------------------------------------------------------- /okadminfinder/process.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # -*- coding: utf-8 -*- 3 | 4 | from okadminfinder._utils import URLCreator 5 | from okadminfinder.exceptions import ( 6 | DNSWithoutWordlistError, 7 | FilesWithoutFuzzError, 8 | FuzzAndDNSConflictError, 9 | ProxyTorError, 10 | URLFormatError, 11 | ) 12 | from okadminfinder.network import NetworkManager 13 | 14 | 15 | class Process: 16 | def __init__( 17 | self, 18 | random_agent: bool, 19 | cookie: str, 20 | username: str, 21 | password: str, 22 | proxy_url: str, 23 | use_tor: bool, 24 | wordlist: str, 25 | dns: bool, 26 | fuzz: bool, 27 | files: str, 28 | status_codes: str, 29 | output_path: str, 30 | clear_cache: bool, 31 | timeout: int, 32 | num_pools: int, 33 | num_threads: int, 34 | num_retry: int, 35 | delay: float, 36 | ): 37 | """ 38 | Initialize the Process class with optional proxy settings. 39 | :param proxy_url: The proxy URL. 40 | :param proxy_type: The type of proxy (e.g., 'http'). 41 | :param num_pools: The number of connection pools. 42 | """ 43 | if proxy_url and use_tor: 44 | raise ProxyTorError() 45 | 46 | if use_tor: 47 | proxy_url = "socks5h://127.0.0.1:9050" 48 | 49 | if dns and not wordlist: 50 | raise DNSWithoutWordlistError() 51 | 52 | if fuzz and dns: 53 | raise FuzzAndDNSConflictError() 54 | 55 | if files and not fuzz: 56 | raise FilesWithoutFuzzError() 57 | 58 | self.url_creator = URLCreator( 59 | wordlist=wordlist, dns=dns, fuzz=fuzz, files=files 60 | ) 61 | self.network_manager = NetworkManager( 62 | proxy_url, 63 | random_agent, 64 | cookie, 65 | username, 66 | password, 67 | status_codes, 68 | output_path, 69 | clear_cache, 70 | timeout, 71 | num_pools, 72 | num_threads, 73 | num_retry, 74 | delay, 75 | ) 76 | 77 | @staticmethod 78 | def read_file(file_path: str) -> list: 79 | """ 80 | Read a file containing a list of URLs. 81 | :param file_path: The path to the file containing URLs. 82 | :return: A list of URLs. 83 | """ 84 | try: 85 | with open(file_path, "r") as file: 86 | urls = [line.strip() for line in file if line.strip()] 87 | return urls 88 | except FileNotFoundError: 89 | raise URLFormatError(file_path) 90 | except Exception as e: 91 | raise e 92 | 93 | def process_url(self, links: list) -> list: 94 | """ 95 | Check the availability of a list of URLs. 96 | :param links: The list of URLs to check. 97 | :return: A list of available URLs. 98 | """ 99 | try: 100 | return self.network_manager.check_urls(links) 101 | except KeyboardInterrupt: 102 | raise 103 | 104 | def process_urls(self, url: str, urls_file: str) -> None: 105 | """ 106 | Process a single URL or a file containing a list of URLs. 107 | :param url: The single URL. 108 | :param urls_file: The path to the file containing URLs. 109 | :return: A list of available URLs. 110 | """ 111 | links = [] 112 | if urls_file: 113 | urls = self.read_file(urls_file) 114 | else: 115 | urls = [url] 116 | 117 | available_urls = [] 118 | for base_url in urls: 119 | links.extend(self.url_creator.create_urls(base_url)) 120 | 121 | return available_urls.extend(self.process_url(links)) 122 | -------------------------------------------------------------------------------- /okadminfinder/version.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python3 2 | # -*- coding: utf-8 -*- 3 | 4 | __version__ = "2.0.0" 5 | __creator__ = "O.Koleda" 6 | __maintainer__ = "mIcHyAmRaNe" 7 | -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- 1 | [build-system] 2 | requires = ["setuptools>=42", "wheel"] 3 | build-backend = "setuptools.build_meta" 4 | 5 | [project] 6 | name = "okadminfinder" 7 | version = "2.0.0" 8 | description = "OKadminFinder: open-source tool designed to help administrators and penetration testers discover admin panels, directories, and subdomains of a website." 9 | readme = "README.md" 10 | requires-python = ">=3.7" 11 | license = {text = "MIT"} 12 | keywords = ["admin panel", "admin", "panel", "finder", "directory", "fuzz", "subdomain", "security", "pentest", "okadminfinder", "web"] 13 | authors = [ 14 | {name = "mIcHyAmRaNe", email = "6m63er17c@mozmail.com"} 15 | ] 16 | maintainers = [ 17 | {name = "mIcHyAmRaNe", email = "6m63er17c@mozmail.com"} 18 | ] 19 | classifiers = [ 20 | "Programming Language :: Python :: 3", 21 | "Programming Language :: Python :: 3.7", 22 | "Programming Language :: Python :: 3.8", 23 | "Programming Language :: Python :: 3.9", 24 | "Programming Language :: Python :: 3.10", 25 | "Programming Language :: Python :: 3.11", 26 | "Programming Language :: Python :: 3.12", 27 | "Programming Language :: Python :: 3.13", 28 | "License :: OSI Approved :: MIT License", 29 | "Operating System :: OS Independent", 30 | ] 31 | dependencies = [ 32 | "typer>=0.15.1", 33 | "rich>=13.9.4 ", 34 | "urllib3[socks]>=2.3.0", 35 | "pyyaml>=6.0.2", 36 | "diskcache>=5.6.3", 37 | ] 38 | 39 | [project.urls] 40 | "Homepage" = "https://github.com/mIcHyAmRaNe/okadminfinder" 41 | "Repository" = "https://github.com/mIcHyAmRaNe/okadminfinder" 42 | "Bug Tracker" = "https://github.com/mIcHyAmRaNe/okadminfinder/issues" 43 | 44 | [project.scripts] 45 | okadminfinder = "okadminfinder.app:run" 46 | 47 | [project.optional-dependencies] 48 | dev = [ 49 | "pytest>=8.3.4", 50 | "ruff>=0.8.5", 51 | ] 52 | 53 | [tool.setuptools.package-data] 54 | "okadminfinder.assets" = ["*.yml"] 55 | 56 | [tool.pytest.ini_options] 57 | testpaths = [ 58 | "tests", 59 | ] -------------------------------------------------------------------------------- /tests/test_app.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | from unittest.mock import patch 3 | 4 | from okadminfinder.app import main, run 5 | 6 | 7 | class TestApp(unittest.TestCase): 8 | @patch("okadminfinder.app.app") 9 | def test_run(self, mock_app): 10 | run() 11 | mock_app.assert_called_once() 12 | 13 | @patch("okadminfinder.app.Process") 14 | @patch("okadminfinder.app.Typer") 15 | def test_main(self, mock_typer, mock_process): 16 | # Mock the Typer options to avoid actual command-line parsing 17 | mock_typer.return_value.parse_args.return_value = { 18 | "url": "http://example.com", 19 | "random_agent": False, 20 | "proxy": None, 21 | "tor": False, 22 | "wordlist": None, 23 | "dns": False, 24 | "fuzz": False, 25 | "output": None, 26 | "clear_cache": False, 27 | "timeout": 10, 28 | "num_pools": 50, 29 | "threads": 16, 30 | "retry": 0, 31 | "debug": False, 32 | } 33 | main() 34 | mock_process.assert_called_once() 35 | 36 | 37 | if __name__ == "__main__": 38 | unittest.main() 39 | -------------------------------------------------------------------------------- /tests/test_cache.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | 3 | from okadminfinder import ( 4 | disable_cache, 5 | invalidate_all_cache, 6 | is_cache_enabled, 7 | memoize_if_cache_enabled, 8 | ) 9 | 10 | 11 | class TestCache(unittest.TestCase): 12 | def test_invalidate_all_cache(self): 13 | invalidate_all_cache() 14 | self.assertTrue(True) # Just to ensure the function runs without errors 15 | 16 | def test_disable_cache(self): 17 | disable_cache() 18 | self.assertFalse(is_cache_enabled()) 19 | 20 | def test_memoize_if_cache_enabled(self): 21 | @memoize_if_cache_enabled 22 | def dummy_function(x): 23 | return x * 2 24 | 25 | self.assertEqual(dummy_function(5), 10) 26 | 27 | 28 | if __name__ == "__main__": 29 | unittest.main() 30 | -------------------------------------------------------------------------------- /tests/test_credit.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | 3 | from okadminfinder.credit import Credit 4 | 5 | 6 | class TestCredit(unittest.TestCase): 7 | def test_set_credit(self): 8 | credit = Credit() 9 | with credit.set_credit(): 10 | self.assertTrue( 11 | True 12 | ) # Just to ensure the context manager runs without errors 13 | 14 | 15 | if __name__ == "__main__": 16 | unittest.main() 17 | -------------------------------------------------------------------------------- /tests/test_exceptions.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | 3 | from okadminfinder.exceptions import ( 4 | AppError, 5 | DNSWithoutWordlistError, 6 | FuzzAndDNSConflictError, 7 | ProxyTorError, 8 | ProxyTypeError, 9 | ProxyURLFormatError, 10 | RequestError, 11 | URLFormatError, 12 | UserAgentFileError, 13 | ) 14 | 15 | 16 | class TestExceptions(unittest.TestCase): 17 | def test_app_error(self): 18 | with self.assertRaises(AppError): 19 | raise AppError("Test error") 20 | 21 | def test_user_agent_file_error(self): 22 | with self.assertRaises(UserAgentFileError): 23 | raise UserAgentFileError("test_file") 24 | 25 | def test_proxy_tor_error(self): 26 | with self.assertRaises(ProxyTorError): 27 | raise ProxyTorError() 28 | 29 | def test_url_format_error(self): 30 | with self.assertRaises(URLFormatError): 31 | raise URLFormatError("http://invalid_url") 32 | 33 | def test_proxy_url_format_error(self): 34 | with self.assertRaises(ProxyURLFormatError): 35 | raise ProxyURLFormatError("invalid_proxy") 36 | 37 | def test_proxy_type_error(self): 38 | with self.assertRaises(ProxyTypeError): 39 | raise ProxyTypeError("invalid_type") 40 | 41 | def test_request_error(self): 42 | with self.assertRaises(RequestError): 43 | raise RequestError("Request failed") 44 | 45 | def test_dns_without_wordlist_error(self): 46 | with self.assertRaises(DNSWithoutWordlistError): 47 | raise DNSWithoutWordlistError() 48 | 49 | def test_fuzz_and_dns_conflict_error(self): 50 | with self.assertRaises(FuzzAndDNSConflictError): 51 | raise FuzzAndDNSConflictError() 52 | 53 | 54 | if __name__ == "__main__": 55 | unittest.main() 56 | -------------------------------------------------------------------------------- /tests/test_network.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | from unittest.mock import patch 3 | 4 | from okadminfinder.network import NetworkManager 5 | 6 | 7 | class TestNetworkManager(unittest.TestCase): 8 | @patch("okadminfinder.network.PoolManager") 9 | def test_create_http_manager(self, mock_pool_manager): 10 | network_manager = NetworkManager( 11 | proxy_url=None, 12 | random_agent=False, 13 | wordlist=None, 14 | dns=False, 15 | fuzz=False, 16 | output_path=None, 17 | clear_cache=False, 18 | timeout=10, 19 | num_pools=50, 20 | num_theads=16, 21 | num_retry=0, 22 | ) 23 | self.assertIsNotNone(network_manager.http_manager) 24 | 25 | @patch("okadminfinder.network.NetworkManager.request") 26 | def test_check_url(self, mock_request): 27 | network_manager = NetworkManager( 28 | proxy_url=None, 29 | random_agent=False, 30 | wordlist=None, 31 | dns=False, 32 | fuzz=False, 33 | output_path=None, 34 | clear_cache=False, 35 | timeout=10, 36 | num_pools=50, 37 | num_theads=16, 38 | num_retry=0, 39 | ) 40 | mock_request.return_value.status = 200 41 | self.assertTrue(network_manager.check_url("http://example.com")) 42 | 43 | 44 | if __name__ == "__main__": 45 | unittest.main() 46 | -------------------------------------------------------------------------------- /tests/test_process.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | from unittest.mock import patch 3 | 4 | from okadminfinder.process import Process 5 | 6 | 7 | class TestProcess(unittest.TestCase): 8 | @patch("okadminfinder.process.NetworkManager") 9 | def test_process_urls(self, mock_network_manager): 10 | process = Process( 11 | random_agent=False, 12 | proxy_url=None, 13 | use_tor=False, 14 | wordlist=None, 15 | dns=False, 16 | fuzz=False, 17 | output_path=None, 18 | clear_cache=False, 19 | timeout=10, 20 | num_pools=50, 21 | num_theads=16, 22 | num_retry=0, 23 | ) 24 | process.process_urls("http://example.com") 25 | mock_network_manager.assert_called_once() 26 | 27 | 28 | if __name__ == "__main__": 29 | unittest.main() 30 | -------------------------------------------------------------------------------- /tests/test_utils.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | 3 | from okadminfinder._utils import URLCreator, UserAgent 4 | 5 | 6 | class TestUtils(unittest.TestCase): 7 | def test_user_agent(self): 8 | user_agent = UserAgent() 9 | self.assertIsNotNone(user_agent.get_user_agent()) 10 | 11 | def test_url_creator(self): 12 | url_creator = URLCreator(wordlist=None, dns=False, fuzz=False) 13 | self.assertIsNotNone(url_creator.create_urls("http://example.com")) 14 | 15 | 16 | if __name__ == "__main__": 17 | unittest.main() 18 | -------------------------------------------------------------------------------- /tests/test_version.py: -------------------------------------------------------------------------------- 1 | import unittest 2 | 3 | from okadminfinder import __creator__, __maintainer__, __version__ 4 | 5 | 6 | class TestVersion(unittest.TestCase): 7 | def test_version(self): 8 | self.assertEqual(__version__, "2.0.0") 9 | self.assertEqual(__creator__, "O.Koleda") 10 | self.assertEqual(__maintainer__, "mIcHyAmRaNe") 11 | 12 | 13 | if __name__ == "__main__": 14 | unittest.main() 15 | --------------------------------------------------------------------------------