Skip to content

Releases: amnottdevv/AtDork

AtDork v1.3.3 source code

19 Jun 11:49
237a34a

Choose a tag to compare

AtDork v1.3.3 – Enhanced Vulnerability Filter & Production Stability

We are pleased to announce AtDork v1.3.3, a refinement release focused on improving the vulnerability filtering system, fixing critical batch processing bugs, and enhancing overall production stability. This release makes AtDork's reconnaissance capabilities more precise and reliable than ever.


What's New?

🛡️ Enhanced Vulnerability Filter (filter_vuln.py)

The vulnerability filter has been completely re-architected for better accuracy and user experience:

  • Dynamic Wordlist Detection – Automatically detects filter type (-link vs -path) based on filename suffix.
  • Smart Error Messages – When a wordlist file is not found, AtDork now provides helpful typo suggestions (e.g., "Did you mean --filter-vuln wordpress-link?").
  • Cache System – Compiled regex patterns are cached by absolute file path for performance.
  • Returns Filter Typefilter_vulnerable() now returns (vulnerable, safe, filter_type) for downstream processing.

Example:

# Basic filter
python atdork.py -q "inurl:wp-content" --filter-vuln wordpress

# Link-only filter (only matches URLs containing WordPress paths)
python atdork.py -q "site:example.com" --filter-vuln wordpress-link

🐛 Critical Bug Fixes

  • Fixed list index out of range error when using --resilient in batch mode.
  • Fixed got multiple values for keyword argument 'proxy_manager' conflict between scanner_kwargs and ResilienceHandler.
  • Fixed too many values to unpack error caused by filter_vulnerable() returning 3 values instead of 2.
  • Fixed --batch-separator not accepting empty values, ensuring smoother batch processing.

📊 Project Statistics (v1.3.3)

Metric Value
Total lines 9,383
Python code 2,887 lines across 27 modules
Wordlist data 5,519 lines (signatures, templates, dorks)
Test coverage 114 unit tests
CLI flags 47 options

Upgrading from v1.3.2

  1. Pull the latest code from the repository.
  2. Install dependencies: pip install -r requirements.txt (no new packages).
  3. All existing commands, configuration files, and wordlists remain fully compatible.

No breaking changes to the CLI or API.


Full Changelog

  • Rewrote core/filter_vuln.py with dynamic wordlist detection, cache, and typo suggestions.
  • Updated atdork.py to handle 3-value return from filter_vulnerable().
  • Fixed batch runner errors with ResilienceHandler and proxy_manager.
  • Updated pyproject.toml to version 1.3.3.
  • Added requirements-dev.txt for development dependencies.
  • Updated documentation and examples.
  • All 114 unit tests pass successfully.

Recognition

AtDork now stands alongside established OSINT tools like theHarvester, GoBuster, and GoDork – with superior proxy management, multi-threaded batch processing, and intelligent output filtering. A huge thank you to all users and contributors who have helped shape this tool.


Full documentation: GitHub Wiki
Report issues: GitHub Issues
Full Changelog: 1.3.2...1.3.3

If you find AtDork helpful, please consider giving it a ⭐ on GitHub!

developed by : alzzdev
github : @amnottdevv

Atdork v1.3.2 source code

17 Jun 11:31
8cda5ab

Choose a tag to compare

AtDork v1.3.2 – Template Dorks & Enhanced Batch Resilience

We are excited to announce AtDork v1.3.2, a feature-packed release that introduces a powerful Template Dork System, significantly improved batch processing with integrated resilience, and a new verbose output mode.
This version makes large-scale OSINT campaigns faster, smarter, and easier to automate.


What’s New?

🧩 Template Dork System

AtDork now ships with a curated collection of YAML‑based dork templates in the wordlists/templates/ folder.
Templates can be combined, previewed, and customised on the fly.

Flag Description
--template <name> Load one or more templates (comma‑separated)
--target <domain> Substitute {target} placeholder in targeted dorks
--select <n> Run only specific dorks from a template (e.g. --select 1,3,5)
--list-templates Show all available templates with descriptions
--preview Preview the dorks a template will generate without executing them
--template-path <dir> Use a custom folder for your own templates

Examples:

# Run all generic SQLi dorks
python atdork.py --template sqli -r 20

# Run WordPress dorks against a specific target
python atdork.py --template wordpress --target example.com -r 15

# Combine multiple templates with a custom query
python atdork.py --template sqli,xss,exposed_config -q "site:gov filetype:pdf"

# Preview what a template will do
python atdork.py --template login_panels --preview

# Run only the first and third dork from a template
python atdork.py --template sqli --select 1,3

Templates separate targeted dorks (those needing --target) from generic ones, so you never accidentally run a dork that requires a domain without providing one.

📢 Verbose Output in Batch Mode (-v)

Batch mode no longer hides your results!
Use -v or --verbose to print every result directly to the terminal as each query completes.

python atdork.py --batch-file dorks.txt -v

⚙️ Enhanced Batch Runner

The batch runner (run_batch) has been rewritten to fully integrate with ResilienceHandler and RateLimiter.

  • No more list index out of range errors when using --resilient.
  • Smart proxy rotation and circuit breaker work seamlessly in both sequential and parallel modes.
  • Concurrency support is now built directly into the batch runner – no separate multi‑thread module needed.

🛠️ Additional Improvements

  • Template dork files are loaded from wordlists/templates/ by default, with fallback error messages if a template is not found.
  • Rate limiter recommendations are now displayed after batch completion, suggesting optimal delays per backend.
  • Internal code clean‑up: multi_thread_runner.py is no longer required (its functionality is integrated into batch_runner.py).
  • All existing flags and workflows remain fully backward‑compatible.

Full Changelog

  • Added Template Dork System with 6 built‑in templates (sqli, xss, wordpress, exposed_config, login_panels, directory_listing)
  • New CLI flags: --template, --target, --select, --list-templates, --template-path, --preview
  • Added -v / --verbose flag for batch result display
  • Rewrote batch_runner.py to natively support ResilienceHandler, RateLimiter, and concurrency
  • Fixed list index out of range error when using --resilient in batch mode
  • Removed deprecated multi_thread_runner.py
  • Updated main.py to support multiple comma‑separated templates
  • Updated documentation and examples
  • All unit tests (114) pass successfully

Upgrading from v1.3.1

  1. Pull the latest code from the repository.
  2. Install dependencies: pip install -r requirements.txt (no new packages).
  3. (Optional) Explore the built‑in templates with python atdork.py --list-templates.

All your existing commands, configuration files, and proxy lists will continue to work without any changes.


Full documentation: GitHub Wiki
Report issues: GitHub Issues
Full Changelog: 1.3.1...1.3.2

If you find AtDork helpful, please consider giving it a ⭐ on GitHub!

atdork v1.3.1 (unstable)

17 Jun 06:31
ee4408a

Choose a tag to compare

AtDork v1.3.1 – Granular Validation & Stability Fixes

We are pleased to announce AtDork v1.3.1, a refinement release that brings granular control over output validation, improved error resilience, and full backward compatibility with v1.3.

This version does not introduce breaking changes. All existing commands, scripts, and configuration files continue to work as before.


What's New?

Fine‑Grained Validation Flags

AtDork now lets you control exactly what gets filtered from search results. Four new flags replace the old on/off switches:

Flag Description Default
--validate-url URL validation mode: only, path, params, all, or false all
--validate-title Minimum title length (integer) or false to disable 5
--validate-desc Minimum description/snippet length (integer) or false to disable 10
--validate-spam Enable/disable spam pattern detection (true/false) true

Examples:

# Only validate domain (ignore path/params)
python atdork.py -q "test" --validate-url only

# Disable title filtering, keep all descriptions
python atdork.py -q "test" --validate-title false --validate-desc false

# Strict spam filtering without any length checks
python atdork.py -q "test" --validate-spam true --validate-title false --validate-desc false

Legacy Flags Still Work

The original --no-validate and --strict-filter flags are fully preserved for backward compatibility:

  • --no-validate still disables all filtering.
  • --strict-filter still enables tight defaults (title≥5, desc≥10, spam on, URL all).

Robust Validator (lib/validator.py)

The validation engine has been rewritten with graceful fallbacks:

  • Invalid parameters are silently corrected to safe defaults.
  • Malformed result dictionaries no longer crash the filter.
  • Every public function handles None and unexpected types without raising exceptions.

Changes from v1.3

Area v1.3 v1.3.1
URL validation Always all or disabled Modes: only, path, params, all, false
Title length control Fixed at 5 Configurable via --validate-title
Description length control Fixed at 10 Configurable via --validate-desc
Spam filtering Always on (unless --no-validate) Togglable via --validate-spam
Validator error handling Potential crashes on bad input Graceful fallbacks throughout

Upgrading from v1.3

  1. Pull the latest code.
  2. Update dependencies: pip install -r requirements.txt (no new packages were added).
  3. All v1.3 commands remain identical. The new granular flags are optional — they only activate when explicitly used.

Full Changelog

  • Added --validate-url, --validate-title, --validate-desc, --validate-spam flags.
  • Rewrote lib/validator.py with robust error handling and fallback logic.
  • Updated main.py to support both legacy and granular validation flags.
  • Updated tests/test_validator.py to match the new API (all 106 tests pass).
  • Version bumped to 1.3.1.

Full documentation: GitHub Wiki
Report issues: GitHub Issues
Full Changelog: 1.3...1.3.1
If you find this release helpful, consider leaving a ⭐ on the repository.

AtDork v1.3 source code zip

15 Jun 13:18
820feb4

Choose a tag to compare

AtDork v1.3 – Database, Logging, Proxy Fix & More

We are happy to announce AtDork v1.3, a stability, observability, and data‑management release.
This version introduces persistent SQLite storage, professional logging, important proxy fixes, and a significantly expanded test suite.

What’s New?

🗄️ SQLite Database (core/database.py)

  • Persistent storage – All queries and results are automatically saved to atdork.db.
  • Resume support (--resume) – Continue a batch that was interrupted, picking up from pending/failed queries.
  • History (--history) – List all previously run queries with their status.
  • Deduplication – Duplicate URLs are automatically ignored across the entire database. Disable with --no-dedup.
  • Export (--export-db) – Dump the entire database to JSON or CSV at any time.
  • Thread‑safe with WAL journal mode and foreign keys.

📝 Professional Logging (core/logger.py)

  • Rotating file logs – Output to atdork.log with automatic rotation (1 MB per file, 3 backups).
  • Console + file dual output – Debug details go to the file while the console stays clean.
  • Configurable via --log-file – Set a custom log path.
  • All core modules now use structured logging (timestamp, level, module name).

🔧 Proxy Manager Fix

  • Authentication support – The proxy validation regex now accepts the user:pass@host:port format that many premium proxy providers use.
  • Format validation remains strict – only well‑formed proxy URLs are accepted.
  • No feature loss – All existing functionality (rotation, cooldown, strict mode, auto‑removal, statistics) is preserved.

🧪 Extended Test Suite

  • Added tests/test_database.py (9 test cases) – add/update queries, result insertion, deduplication, export.
  • Added tests/test_logger.py (4 test cases) – console/file logging, debug level filtering.
  • Fixed test_load_config and test_logger to pass cleanly in CI.
  • Total test count: 114 (up from 103 in v1.2).

🔄 CI/CD Pipeline

  • .github/workflows/ci.yml now runs:
    • Unit tests on Python 3.9, 3.10, 3.11, 3.12 (parallel matrix).
    • Linting with flake8 (E9, F63, F7, F82).
    • Security scan with Bandit.
    • Dependency vulnerability check with Safety.
  • All checks must pass on every push and pull request to master.

🔍 Other Improvements

  • --filter-vuln flag to filter results by vulnerability signatures (e.g., --filter-vuln wordpress uses wordlists from wordlists/).
  • requirements.txt now includes pyyaml>=6.0 (required for YAML config support).
  • requirements-dev.txt added for contributors (pytest, flake8, bandit, safety).
  • Wiki documentation updated: Multi‑Threading Support, Proxy Configuration, Simple Usage, Command Reference, Examples & Use Cases, Release Notes.

Upgrading from v1.2

  1. Pull the latest code.
  2. Install updated dependencies: pip install -r requirements.txt.
  3. Existing atdork.yaml configuration files remain fully compatible.

No breaking changes to the CLI or API.


Full documentation: GitHub Wiki
Report issues: GitHub Issues

Enjoy!

release source code AtDork v1.2

11 Jun 10:43
a86bac3

Choose a tag to compare

AtDork v1.2 – Testing Suite & Production Hardening

We are pleased to announce AtDork v1.2, a stability‑focused release that introduces a comprehensive automated test suite.
With this update, AtDork moves from a feature‑rich tool to a semi‑production‑grade OSINT utility, ready for integration into continuous delivery pipelines and long‑running engagements.


What’s new?

Automated Unit Tests

A full suite of pytest‑based tests has been added under the tests/ directory.
All tests use mocking to avoid real network calls and can be executed offline in seconds.

Test file Coverage
test_scanner.py Search logic, retries, fallback backends, proxy rotation, result validation
test_proxy_manager.py Proxy format validation, rotation, cooldown, auto‑removal, statistics, strict mode
test_validator.py URL validation, spam detection, strict filtering, filter statistics
test_batch_runner.py File reading, query parsing, sequential batch execution with failure handling
test_config.py YAML configuration loading, environment variable overrides, type conversions
test_multi_thread_runner.py Parallel execution, fallback to sequential on consecutive failures
test_storage.py File output in TXT, JSON, and CSV formats

All tests pass cleanly without external dependencies.

How to run the tests

cd AtDork
pip install pytest
pytest tests/ -v

Why this matters

  • Regression protection – refactoring and new features can be developed with confidence.
  • CI/CD ready – integrate pytest into your GitHub Actions or GitLab pipelines.
  • Safe for production – core logic is verified, reducing the risk of unexpected failures during audits or reconnaissance campaigns.

Full changelog

  • Added tests/ directory with 7 test modules (60+ individual test cases).
  • All core and lib modules are covered.
  • No changes to the public API – your existing commands and configuration files remain fully compatible.
  • Minor documentation updates to reflect the testing capability.

We encourage security researchers and developers to run the test suite before deploying AtDork in critical environments.
Feedback and contributions are always welcome.

GitHub: github.com/amnottdevv/atdork

Atdork v1.1 source code zip

11 Jun 06:41
4ac922f

Choose a tag to compare

Atdork v1.1

A lightweight DuckDuckGo‑based OSINT tool for advanced search queries (dorks).
Run single searches or batch campaigns from the command line – fast, anonymous, and spam‑free.


What's New in v1.1

  • Multi‑threaded batch processing – parallel queries with automatic fallback to sequential mode
  • Output validator – automatically remove spam, invalid URLs, and low‑quality results
  • Enhanced proxy manager – proxy validation, strict mode, auto‑removal, and usage statistics
  • User‑Agent rotation – 15+ modern User‑Agent strings rotated on every request
  • Cleaner codebase – modular design with core/ and lib/ for easy maintenance

Installation

git clone https://github.com/amnottdevv/atdork.git
cd atdork
pip install -r requirements.txt

Quick Start

Interactive mode

python main.py --interactive

Single search

python main.py -q "site:gov filetype:pdf" -r 15 -o results.json

Batch from file

python main.py --batch-file dorks.txt --format csv -o out.csv

Multi‑threaded batch (5 threads)

python main.py --batch-file dorks.txt --concurrency 5 --output-dir results

Anonymous search with Tor + strict proxy

# start Tor first, then:
python main.py -q "sensitive data" --tor --strict --delay 1.5

Basic Arguments

Flag Purpose
-q Dork query
-r Max results (1‑100, default 20)
-o Save output to file
--batch-file File with one query per line
--concurrency Number of parallel threads (default 1)
--tor Use Tor SOCKS5 proxy
--no-validate Disable spam filtering

See python main.py --help for the complete list.


Disclaimer

Atdork is for legal, authorised testing only. The developer is not responsible for any misuse.


Full documentation: GitHub Wiki