Code Monkey home page Code Monkey logo

bebop's Introduction

bebop's People

Contributors

aaarghhh avatar joshhighet avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

bebop's Issues

investigate findings

continue analysis against matches when sub-processors return findings

an idea - needs to be fleshed out.. some confidence-scoring system will likely required before aimlessly probing potential matches

this could include things such as;

  • if etag match found, correlate against other identifiers on the target to raise confidence
  • using hidden service address as host header to the discovered asset (same for referrer)
  • enrich found assets with pdns history from the likes of securitytrails

span out on Last-Modified header

if a Last-Modified header value exists, span out a search for it across any supported search services (shodan etc)

โš ๏ธ this may have too many fp's and value should be validated first

detect 'default' response code & catchall subdomains

bebop/app/configcheck.py

Lines 147 to 155 in b22e665

timeout = ClientTimeout(total=30)
sem = asyncio.Semaphore(max_concurrent_requests)
connector = ProxyConnector.from_url(reqproxies.get('https')) if reqproxies else None
async with ClientSession(headers={'User-Agent': useragentstr}, timeout=timeout, trust_env=True, connector=connector) as session:
tasks = []
for path in interesting_paths:
async with sem:
tasks.append(fetch(location, path, session))
await asyncio.gather(*tasks)

per below service.onion apparently matches conditions for all of the checks. in reality - it's not detecting the catchall and these are incorrect.

bebop/app/configcheck.py

Lines 15 to 21 in b22e665

interesting_paths = [
{'uri': '/server-status', 'code': 200, 'text': 'Apache'},
{'uri': '/install/index.php', 'code': 200, 'text': 'Installation Wizard'},
{'uri': '/server-info', 'code': 200, 'text': 'Apache'},
{'uri': '/wp-login.php', 'code': 200, 'text': 'login'},
{'uri': '/xmlrpc.php', 'code': 405, 'text': 'XML-RPC server accepts POST requests only'},
{'uri': '/phpinfo.php', 'code': 200, 'text': 'This program makes use of the Zend'},

INFO     127:configcheck.py  fetch                     found 200 at http://service.onion/sitemap.xml
INFO     127:configcheck.py  fetch                     found 200 at http://service.onion/admin
INFO     127:configcheck.py  fetch                     found 200 at http://service.onion/administrator
INFO     127:configcheck.py  fetch                     found 200 at http://service.onion/wp-admin
INFO     127:configcheck.py  fetch                     found 200 at http://service.onion/.env
INFO     127:configcheck.py  fetch                     found 200 at http://service.onion/WEB-INF/web.xml

avoiding potential false flags i.e service.onion below

โžœ  bebop git:(main) โœ— uuidgen
C27362AF-4A1C-4E82-918F-FB6CC89E6EB8
โžœ  bebop git:(main) โœ— curl --socks5-hostname telemetry.dark:9050 -X GET -I http://service.onion/C27362AF-4A1C-4E82-918F-FB6CC89E6EB8
HTTP/1.1 200 OK
Server: nginx
Date: Thu, 03 Aug 2023 10:25:03 GMT
Content-Type: text/html; charset=utf-8
Content-Length: 423
Last-Modified: Wed, 02 Aug 2023 10:18:39 GMT
Connection: keep-alive
Accept-Ranges: bytes
  • detect subdomain wildcarding
  • detect URI-path wildcarding

use fofa.info

add fofa as an available engine to the collection of search processors

Api keys doesn't accepted

I give the api keys of shodan, zoomeye and other sites but it didn't accepted ......if you could tell me the correct way to sync them it would a big help for me...

certificate recon

if a site is serving a certificate, leverage said elements against subprocessors

also consider jarm

zoomeye issues

potentially encoding related

โžœ  app git:(main) โœ— python3 subprocessors.py
DEBUG:__main__:zoomeye: querying title:'Fox Trot'
DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): api.zoomeye.org:443
DEBUG:urllib3.connectionpool:https://api.zoomeye.org:443 "GET /host/search?query=title%3A%27Fox+Trot%27 HTTP/1.1" 500 94
ERROR:__main__:zoomeye: api error: 500 Server Error: Internal Server Error for url: https://api.zoomeye.org/host/search?query=title%3A%27Fox+Trot%27

โžœ  app git:(main) โœ— curl -vv \
'https://api.zoomeye.org/host/search?query=title:"Fox%20Trot"' -H "API-KEY:[stripped]"

*   Trying 160.116.186.18:443...
* Connected to api.zoomeye.org (160.116.186.18) port 443 (#0)
[stripped]
> 
< HTTP/1.1 500 Internal Server Error
[stripped]
< 
* Connection #0 to host api.zoomeye.org left intact
{"error": "internal_error", "message": "internal error", "url": "https://www.zoomeye.org/api"}%  

technology indexing

alongside nmap's service identification, gain a better understanding of frameworks and technologies on a site.

see wappalyzer

rare headers to subprocessors

once enough confidence is gained that the method of identifying 'rare' headers is functional, consider searching said values against the likes of shodan

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.