moriarty-project 0.1.25__tar.gz → 0.1.27__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/PKG-INFO +7 -5
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/README.md +2 -2
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/__init__.py +1 -1
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/app.py +2 -2
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/domain_cmd.py +8 -5
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/domain_scanner.py +188 -60
- moriarty_project-0.1.27/moriarty/modules/port_scanner_nmap.py +557 -0
- moriarty_project-0.1.27/moriarty/modules/web_crawler.py +1142 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/pyproject.toml +6 -4
- moriarty_project-0.1.25/moriarty/cli/wifippler.py +0 -124
- moriarty_project-0.1.25/moriarty/modules/port_scanner.py +0 -942
- moriarty_project-0.1.25/moriarty/modules/web_crawler.py +0 -520
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/.gitignore +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/assets/img/moriarty-banner.png +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/adapters/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/agent/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/.gitkeep +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/asia/douban.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/asia/kakao.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/asia/line.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/asia/mixi.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/asia/naver.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/asia/qq.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/asia/vk.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/asia/wechat.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/asia/weibo.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/asia/xiaohongshu.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/behance.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/business/crunchbase.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/business/fiverr.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/business/freelancer.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/business/glassdoor.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/business/guru.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/business/indeed.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/business/monster.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/business/peopleperhour.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/business/toptal.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/business/upwork.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/business/ziprecruiter.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/content/buymeacoffee.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/content/gumroad.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/content/ko-fi.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/content/onlyfans.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/content/patreon.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/content/substack.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/creative/500px.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/creative/artstation.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/creative/deviantart.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/creative/flickr.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/creative/pexels.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/creative/unsplash.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/creative/vimeo.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/crypto/binance.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/crypto/bitcointalk.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/crypto/coinbase.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/crypto/etherscan.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/crypto/foundation.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/crypto/kraken.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/crypto/mirror.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/crypto/niftygateway.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/crypto/opensea.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/crypto/rarible.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/crypto/superrare.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating/bumble.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating/grindr.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating/happn.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating/her.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating/hinge.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating/match.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating/meetme.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating/okcupid.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating/pof.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating/tinder.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating-nsfw/adultfriendfinder.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dating-nsfw/ashley-madison.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/design/adobe-portfolio.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/design/carbonmade.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/design/cgsociety.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/design/coroflot.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/design/figma.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/design/sketch.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dev/bitbucket.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dev/codeforces.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dev/codepen.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dev/hackerone.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dev/hackthebox.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dev/huggingface.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dev/kaggle.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dev/leetcode.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dev/replit.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/dribbble.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/ecommerce/etsy.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/education/duolingo.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/education/edx.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/education/khanacademy.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/education/lynda.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/education/memrise.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/education/pluralsight.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/education/skillshare.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/education/udacity.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/email/github_email.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/email/gravatar.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/europe/badoo.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/europe/lovoo.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/europe/myspace.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/europe/netlog.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/europe/ok.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/europe/skyrock.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/europe/studivz.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/europe/tuenti.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/europe/viadeo.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/europe/xing.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/fitness/fitbit.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/fitness/garmin.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/fitness/myfitnesspal.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/fitness/strava.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/fitness/zwift.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/food/allrecipes.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/food/tasty.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/food/yelp.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/food/zomato.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/4chan.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/8kun.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/9gag.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/discourse.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/disqus.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/hackernews.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/launchpad.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/phpbb.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/quora.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/serverfault.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/slashdot.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/stackexchange.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/superuser.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/vbulletin.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums/xenforo.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums-nsfw/kiwifarms.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/forums-nsfw/lolcow.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/apextracker.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/battlenet.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/chess.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/discord-public.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/dotabuff.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/epicgames.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/faceit.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/fortnitetracker.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/gog.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/itch.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/kongregate.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/minecraft.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/opgg.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/origin.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/playstation.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/roblox.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gaming/xbox.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/github.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/gitlab.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/instagram.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/latam/fotolog.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/latam/orkut.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/latam/taringa.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/learning/coursera.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/learning/udemy.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/linkedin.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/marketplaces/depop.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/marketplaces/ebay.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/marketplaces/grailed.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/marketplaces/mercari.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/marketplaces/poshmark.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/marketplaces/reverb.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/marketplaces/vinted.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/medium.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/audiomack.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/bandcamp.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/beatport.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/deezer.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/discogs.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/genius.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/lastfm.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/mixcloud.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/reverbnation.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/soundcloud.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/spotify.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/music/tidal.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/adultwork.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/bongacams.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/cam4.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/chaturbate.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/clips4sale.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/extralunchmoney.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/fansly.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/fetlife.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/iw/n/nantclips.yaml" +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/justforfans.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/loyalfans.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/manyvids.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/myfreecams.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/niteflirt.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/pornhub.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/redtube.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/stripchat.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/xhamster.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/xvideos.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/nsfw/youporn.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/photography/eyeem.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/photography/fotki.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/photography/photobucket.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/photography/smugmug.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/photography/vsco.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/pinterest.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/podcasts/anchor.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/podcasts/castbox.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/podcasts/podbean.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/about.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/academia.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/angellist.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/calendly.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/issuu.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/mendeley.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/notion.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/orcid.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/producthunt.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/researchgate.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/scribd.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/slideshare.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/trello.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/professional/typeform.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/reddit.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/amino.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/ask-fm.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/babycenter.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/cafemom.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/care2.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/diaspora.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/ello.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/gaia.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/habbo.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/imvu.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/lemmy.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/peertube.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/pixelfed.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/plurk.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/recroom.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/secondlife.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/vine-archive.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/vrchat.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/regional/weheartit.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/anilist.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/beacons.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/blogger.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/crunchyroll.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/discord.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/dreamwidth.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/facebook.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/goodreads.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/imdb.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/kitsu.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/letterboxd.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/linktree.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/livejournal.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/mastodon.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/minds.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/myanimelist.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/ravelry.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/snapchat.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/telegram.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/tiktok.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/trakt.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/wattpad.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/social/wordpress-com.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/sports/espn.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/sports/untappd.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/stackoverflow.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/steam.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/streaming/caffeine.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/streaming/dlive.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/streaming/trovo.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/travel/airbnb.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/travel/booking.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/travel/couchsurfing.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/travel/tripadvisor.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/tumblr.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/twitch.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/twitter.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/modules/youtube.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2017-5638.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2018-7600.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2019-11510.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2019-19781.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2020-14882.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2020-14883.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2020-3452.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2020-5902.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2021-21972.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2021-21985.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2021-26084.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2021-41773.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2021-42013.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2021-44228.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2022-0185.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2022-1388.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2022-22954.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2022-22965.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2022-26134.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2023-22515.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2023-22527.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2023-23752.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2023-27350.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2023-2868.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2023-34362.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2023-3519.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/cves/CVE-2023-4966.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/default-logins/admin-weak.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/default-logins/wordpress-default.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/exposures/aws-credentials.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/exposures/backup-files.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/exposures/database-files.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/exposures/docker-exposed.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/exposures/env-exposed.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/exposures/git-exposed.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/exposures/phpinfo.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/exposures/svn-exposed.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/fuzzing/api-endpoints.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/fuzzing/common-files.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/fuzzing/open-redirect-fuzz.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/fuzzing/xss-search-fuzz.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/git-config.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/misconfigurations/cors-misconfiguration.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/misconfigurations/debug-enabled.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/misconfigurations/directory-listing.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/misconfigurations/jwt-none-algo.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/misconfigurations/ssl-tls-weak.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/vulnerabilities/lfi-basic.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/vulnerabilities/open-redirect.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/vulnerabilities/rce-basic.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/vulnerabilities/sqli-error.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/vulnerabilities/ssrf-basic.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/vulnerabilities/xss-reflected.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/templates/vulnerabilities/xxe-basic.yaml +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/assets/wordlists/subdomains-1000.txt +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/async_utils.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/dns.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/email.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/email_investigate.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/intelligence.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/output.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/rdap.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/state.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/tls.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/cli/user.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/core/cache_backend.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/core/config_manager.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/correlator/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/data/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/data/ioc/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/data/ioc/matcher.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/data/ioc/types.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/data/local_intelligence.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/data/signature_loaders/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/data/signature_loaders/base.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/data/signature_loaders/ioc_feed.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/data/signature_loaders/wappalyzer.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/dsl/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/dsl/loader.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/dsl/schema.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/export/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/intelligence/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/intelligence/__main__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/intelligence/config.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/intelligence/ioc.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/intelligence/signatures.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/intelligence/storage.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/interop/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/logging/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/logging/config.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/models/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/models/assertion.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/models/entity.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/models/evidence.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/models/relation.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/models/types.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/avatar_hash.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/directory_fuzzer.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/dns_scan.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/email_check.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/email_investigate.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/email_security.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/googlemaps_lookup.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/headless_executor.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/orchestrator.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/passive_recon.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/phone_extractor.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/pipeline_orchestrator.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/rdap.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/rdap_extended.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/stealth_mode.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/subdomain_discovery.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/technology_profiler.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/template_executor.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/template_scanner.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/tls_scan.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/tls_validator.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/vuln_scanner.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/waf_detector.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/modules/wayback_discovery.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/net/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/net/dns_cache.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/net/dns_client.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/net/rdap_client.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/net/smtp_client.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/net/tls_client.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/parsers/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/parsers/html_parser.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/tests/__init__.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/tests/test_email_service.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/tests/test_models.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/tests/test_orchestrator.py +0 -0
- {moriarty_project-0.1.25 → moriarty_project-0.1.27}/moriarty/tests/test_tls_client.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: moriarty-project
|
3
|
-
Version: 0.1.
|
3
|
+
Version: 0.1.27
|
4
4
|
Summary: Client-side OSINT toolkit with forensic-grade evidence handling.
|
5
5
|
Project-URL: Homepage, https://github.com/DonatoReis/moriarty
|
6
6
|
Project-URL: Documentation, https://github.com/DonatoReis/moriarty#readme
|
@@ -19,6 +19,7 @@ Classifier: Topic :: Security
|
|
19
19
|
Classifier: Topic :: Utilities
|
20
20
|
Requires-Python: >=3.11
|
21
21
|
Requires-Dist: aiodns>=3.0.0
|
22
|
+
Requires-Dist: aiofiles>=24.1.0
|
22
23
|
Requires-Dist: aiohttp>=3.9.0
|
23
24
|
Requires-Dist: aiolimiter>=1.1.0
|
24
25
|
Requires-Dist: aiosmtplib>=2.0.0
|
@@ -29,16 +30,17 @@ Requires-Dist: httpx[http2]>=0.27.0
|
|
29
30
|
Requires-Dist: idna>=3.6
|
30
31
|
Requires-Dist: jsonpath-ng>=1.6.0
|
31
32
|
Requires-Dist: lxml>=5.3.0
|
32
|
-
Requires-Dist: netifaces>=0.
|
33
|
+
Requires-Dist: netifaces-plus>=0.12.4
|
33
34
|
Requires-Dist: networkx>=3.2.0
|
34
35
|
Requires-Dist: orjson>=3.9.0
|
36
|
+
Requires-Dist: packaging>=25.0
|
35
37
|
Requires-Dist: phonenumbers>=8.13.0
|
36
38
|
Requires-Dist: pillow>=10.0.0
|
37
39
|
Requires-Dist: psutil>=5.9.0
|
38
40
|
Requires-Dist: pycryptodomex>=3.23.0
|
39
41
|
Requires-Dist: pydantic>=2.7.0
|
40
42
|
Requires-Dist: pyopenssl>=25.0.0
|
41
|
-
Requires-Dist:
|
43
|
+
Requires-Dist: python3-nmap>=1.9.1
|
42
44
|
Requires-Dist: pyyaml>=6.0
|
43
45
|
Requires-Dist: rapidfuzz>=3.0.0
|
44
46
|
Requires-Dist: requests>=2.32.0
|
@@ -98,7 +100,7 @@ Description-Content-Type: text/markdown
|
|
98
100
|
<!-- Badges -->
|
99
101
|
<p align="center">
|
100
102
|
<a href="https://pypi.org/project/moriarty-project/">
|
101
|
-
<img src="https://img.shields.io/badge/version-0.1.
|
103
|
+
<img src="https://img.shields.io/badge/version-0.1.27-blue" alt="Version 0.1.27">
|
102
104
|
</a>
|
103
105
|
<a href="https://www.python.org/downloads/">
|
104
106
|
<img src="https://img.shields.io/pypi/pyversions/moriarty-project?color=blue" alt="Python Versions">
|
@@ -152,7 +154,7 @@ Description-Content-Type: text/markdown
|
|
152
154
|
pipx install moriarty-project
|
153
155
|
|
154
156
|
# OU para instalar uma versão específica
|
155
|
-
# pipx install moriarty-project==0.1.
|
157
|
+
# pipx install moriarty-project==0.1.27
|
156
158
|
|
157
159
|
# Verificar a instalação
|
158
160
|
moriarty --help
|
@@ -19,7 +19,7 @@
|
|
19
19
|
<!-- Badges -->
|
20
20
|
<p align="center">
|
21
21
|
<a href="https://pypi.org/project/moriarty-project/">
|
22
|
-
<img src="https://img.shields.io/badge/version-0.1.
|
22
|
+
<img src="https://img.shields.io/badge/version-0.1.27-blue" alt="Version 0.1.27">
|
23
23
|
</a>
|
24
24
|
<a href="https://www.python.org/downloads/">
|
25
25
|
<img src="https://img.shields.io/pypi/pyversions/moriarty-project?color=blue" alt="Python Versions">
|
@@ -73,7 +73,7 @@
|
|
73
73
|
pipx install moriarty-project
|
74
74
|
|
75
75
|
# OU para instalar uma versão específica
|
76
|
-
# pipx install moriarty-project==0.1.
|
76
|
+
# pipx install moriarty-project==0.1.27
|
77
77
|
|
78
78
|
# Verificar a instalação
|
79
79
|
moriarty --help
|
@@ -156,14 +156,14 @@ def self_update():
|
|
156
156
|
try:
|
157
157
|
# Verifica se está instalado com pipx
|
158
158
|
if check_pipx_installed():
|
159
|
-
console.print("🔄 Atualizando via pipx...", style="bold
|
159
|
+
console.print("🔄 Atualizando via pipx...", style="bold red")
|
160
160
|
result = subprocess.run(
|
161
161
|
["pipx", "install", "--upgrade", "moriarty-project"],
|
162
162
|
capture_output=True,
|
163
163
|
text=True
|
164
164
|
)
|
165
165
|
else:
|
166
|
-
console.print("🔄 Atualizando via pip...", style="bold
|
166
|
+
console.print("🔄 Atualizando via pip...", style="bold red")
|
167
167
|
result = subprocess.run(
|
168
168
|
[sys.executable, "-m", "pip", "install", "--upgrade", "moriarty-project"],
|
169
169
|
capture_output=True,
|
@@ -1,14 +1,12 @@
|
|
1
1
|
"""Comandos de scanning de domínios/IPs."""
|
2
2
|
|
3
|
-
import
|
4
|
-
import json
|
5
|
-
from typing import Optional, Dict, List
|
3
|
+
from typing import Optional
|
6
4
|
|
7
5
|
import typer
|
8
6
|
|
9
7
|
from moriarty.modules.web_crawler import WebCrawler
|
10
8
|
|
11
|
-
from moriarty.modules.
|
9
|
+
from moriarty.modules.port_scanner_nmap import PortScanner, PROFILES
|
12
10
|
from moriarty.modules.passive_recon import PassiveRecon
|
13
11
|
from rich.console import Console
|
14
12
|
|
@@ -28,6 +26,7 @@ def scan_full(
|
|
28
26
|
stealth: int = typer.Option(0, "--stealth", "-s", help="Stealth level (0-4)"),
|
29
27
|
threads: int = typer.Option(10, "--threads", "-t", help="Threads concorrentes"),
|
30
28
|
timeout: int = typer.Option(30, "--timeout", help="Timeout em segundos"),
|
29
|
+
ports: str = typer.Option("quick", "--ports", "-p", help="Perfil de portas: quick, web, db, full, all"),
|
31
30
|
output: str = typer.Option(None, "--output", "-o", help="Arquivo de saída"),
|
32
31
|
verbose: bool = typer.Option(False, "--verbose", help="Ativar saída detalhada"),
|
33
32
|
):
|
@@ -48,9 +47,13 @@ def scan_full(
|
|
48
47
|
logging.getLogger("httpcore").setLevel(logging.ERROR)
|
49
48
|
logging.getLogger("moriarty").setLevel(logging.ERROR)
|
50
49
|
|
50
|
+
# Converte a string de módulos para lista
|
51
|
+
modules_list = modules.split(",") if modules != "all" else None
|
52
|
+
|
51
53
|
scanner = DomainScanner(
|
52
54
|
target=target,
|
53
|
-
modules=
|
55
|
+
modules=modules_list,
|
56
|
+
ports_profile=ports,
|
54
57
|
stealth_level=stealth,
|
55
58
|
threads=threads,
|
56
59
|
timeout=timeout,
|
@@ -76,6 +76,7 @@ class DomainScanner:
|
|
76
76
|
stealth_level: int = 0,
|
77
77
|
threads: int = 10,
|
78
78
|
timeout: int = 30,
|
79
|
+
ports_profile: str = "quick",
|
79
80
|
verbose: bool = False,
|
80
81
|
):
|
81
82
|
self.target = target
|
@@ -83,6 +84,7 @@ class DomainScanner:
|
|
83
84
|
self.stealth_level = stealth_level
|
84
85
|
self.threads = threads
|
85
86
|
self.timeout = timeout
|
87
|
+
self.ports_profile = ports_profile.lower()
|
86
88
|
self.verbose = verbose
|
87
89
|
self.result = ScanResult(target=target)
|
88
90
|
self.stealth = None
|
@@ -102,12 +104,20 @@ class DomainScanner:
|
|
102
104
|
async def run(self):
|
103
105
|
"""Executa scan completo."""
|
104
106
|
self._prepare_modules()
|
107
|
+
# Resolve o IP do domínio
|
108
|
+
try:
|
109
|
+
import socket
|
110
|
+
ip = socket.gethostbyname(self.target)
|
111
|
+
target_display = f"{self.target} [{ip}]"
|
112
|
+
except Exception:
|
113
|
+
target_display = self.target
|
114
|
+
|
105
115
|
# Banner profissional
|
106
116
|
banner = Panel(
|
107
|
-
f"[bold white]Target:[/bold white] [
|
117
|
+
f"[bold white]Target:[/bold white] [red]{target_display}[/red]\n"
|
108
118
|
f"[dim]Modules: {', '.join(self.modules)} | Stealth: {self.stealth_level}[/dim]",
|
109
|
-
title="[bold
|
110
|
-
border_style="
|
119
|
+
title="[bold red]🌐 Domain Scanner[/bold red]",
|
120
|
+
border_style="red",
|
111
121
|
padding=(1, 2),
|
112
122
|
)
|
113
123
|
console.print(banner)
|
@@ -148,7 +158,7 @@ class DomainScanner:
|
|
148
158
|
|
149
159
|
async def _run_dns(self):
|
150
160
|
"""Módulo DNS."""
|
151
|
-
console.print("\n[bold
|
161
|
+
console.print("\n[bold red]▶ DNS Enumeration[/bold red]")
|
152
162
|
|
153
163
|
try:
|
154
164
|
from moriarty.net.dns_client import DNSClient
|
@@ -179,7 +189,7 @@ class DomainScanner:
|
|
179
189
|
|
180
190
|
async def _run_subdiscover(self):
|
181
191
|
"""Módulo Subdomain Discovery."""
|
182
|
-
console.print("\n[bold
|
192
|
+
console.print("\n[bold red]▶ Subdomain Discovery[/bold red]")
|
183
193
|
|
184
194
|
try:
|
185
195
|
from moriarty.modules.subdomain_discovery import SubdomainDiscovery
|
@@ -215,7 +225,7 @@ class DomainScanner:
|
|
215
225
|
|
216
226
|
async def _run_wayback(self):
|
217
227
|
"""Módulo Wayback Machine."""
|
218
|
-
console.print("\n[bold
|
228
|
+
console.print("\n[bold red]▶ Wayback Machine[/bold red]")
|
219
229
|
|
220
230
|
try:
|
221
231
|
from moriarty.modules.wayback_discovery import WaybackDiscovery
|
@@ -244,37 +254,87 @@ class DomainScanner:
|
|
244
254
|
|
245
255
|
async def _run_ports(self):
|
246
256
|
"""Módulo Port Scan."""
|
247
|
-
console.print("\n[bold
|
257
|
+
console.print("\n[bold red]▶ Port Scanning[/bold red]")
|
248
258
|
|
249
259
|
try:
|
250
|
-
from moriarty.modules.
|
260
|
+
from moriarty.modules.port_scanner_nmap import PortScanner
|
251
261
|
|
252
|
-
|
262
|
+
# Usa o perfil de portas fornecido ou define baseado no timeout se não especificado
|
263
|
+
profile = self.ports_profile if hasattr(self, 'ports_profile') else ("extended" if self.timeout > 45 else "quick")
|
264
|
+
|
265
|
+
# Log do perfil que será usado
|
266
|
+
console.print(f" 🔧 Usando perfil de portas: [bold]{profile}[/]")
|
267
|
+
|
268
|
+
# Cria o scanner com as configurações apropriadas
|
253
269
|
scanner = PortScanner(
|
254
270
|
target=self.target,
|
255
|
-
|
256
|
-
concurrency=max(40, self.threads * 30),
|
257
|
-
timeout=max(0.5, min(2.0, self.timeout / 12)),
|
271
|
+
ports=profile,
|
258
272
|
stealth_level=self.stealth_level,
|
273
|
+
resolve_services=True,
|
274
|
+
check_vulns=False
|
259
275
|
)
|
276
|
+
|
260
277
|
results = await scanner.scan()
|
278
|
+
|
279
|
+
if not results:
|
280
|
+
console.print(" ℹ️ Nenhuma porta aberta encontrada.")
|
281
|
+
self.result.port_details = []
|
282
|
+
self.result.open_ports = []
|
283
|
+
return
|
284
|
+
|
285
|
+
# Processa os resultados
|
261
286
|
self.result.port_details = [asdict(entry) for entry in results]
|
262
287
|
self.result.open_ports = [entry.port for entry in results]
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
preview = ", ".join(
|
267
|
-
f"{entry.port} ({entry.banner[:18]}...)" if entry.banner else str(entry.port)
|
268
|
-
for entry in results[:5]
|
269
|
-
)
|
270
|
-
console.print(f" [dim]→[/dim] {preview}")
|
288
|
+
|
289
|
+
# Exibe os resultados em uma tabela
|
290
|
+
self._display_port_results(results)
|
271
291
|
|
272
292
|
except Exception as e:
|
273
|
-
|
293
|
+
import traceback
|
294
|
+
console.print(f" [red]✗[/red] Port scan failed: {str(e)}")
|
295
|
+
console.print(f"[yellow]Detalhes:[/yellow] {traceback.format_exc()}")
|
296
|
+
|
297
|
+
def _display_port_results(self, results):
|
298
|
+
"""Exibe os resultados da varredura de portas em formato de tabela."""
|
299
|
+
from rich.table import Table, box
|
300
|
+
|
301
|
+
# Filtra apenas portas abertas
|
302
|
+
open_ports = [r for r in results if getattr(r, 'status', '').lower() == 'open']
|
303
|
+
|
304
|
+
if not open_ports:
|
305
|
+
console.print("ℹ️ Nenhuma porta aberta encontrada.")
|
306
|
+
return
|
307
|
+
|
308
|
+
# Cria tabela de resultados
|
309
|
+
table = Table(title="🚪 Portas abertas:", box=box.ROUNDED)
|
310
|
+
table.add_column("Porta", style="cyan")
|
311
|
+
table.add_column("Status", style="green")
|
312
|
+
table.add_column("Serviço", style="yellow")
|
313
|
+
table.add_column("Detalhes", style="white")
|
314
|
+
|
315
|
+
for entry in open_ports:
|
316
|
+
service = getattr(entry, 'service', None)
|
317
|
+
service_name = getattr(service, 'name', 'desconhecido') if service else 'desconhecido'
|
318
|
+
version = getattr(service, 'version', '')
|
319
|
+
details = version if version else ""
|
320
|
+
|
321
|
+
# Adiciona informações de vulnerabilidades se disponíveis
|
322
|
+
if service and hasattr(service, 'vulns') and service.vulns:
|
323
|
+
vulns = ", ".join(service.vulns[:2])
|
324
|
+
if len(service.vulns) > 2:
|
325
|
+
vulns += f" (+{len(service.vulns)-2} mais)"
|
326
|
+
details += f"\n🔴 {vulns}"
|
327
|
+
|
328
|
+
table.add_row(
|
329
|
+
str(entry.port),
|
330
|
+
"🟢 ABERTA",
|
331
|
+
service_name,
|
332
|
+
details.strip() or "-"
|
333
|
+
)
|
274
334
|
|
275
335
|
async def _run_ssl(self):
|
276
336
|
"""Módulo SSL/TLS."""
|
277
|
-
console.print("\n[bold
|
337
|
+
console.print("\n[bold red]▶ SSL/TLS Analysis[/bold red]")
|
278
338
|
|
279
339
|
try:
|
280
340
|
from moriarty.modules.tls_validator import TLSCertificateValidator
|
@@ -287,7 +347,7 @@ class DomainScanner:
|
|
287
347
|
|
288
348
|
async def _run_template_scan(self):
|
289
349
|
"""Módulo Template Scanner."""
|
290
|
-
console.print("\n[bold
|
350
|
+
console.print("\n[bold red]▶ Template Scanner[/bold red]")
|
291
351
|
|
292
352
|
try:
|
293
353
|
from moriarty.modules.template_scanner import TemplateScanner
|
@@ -338,49 +398,109 @@ class DomainScanner:
|
|
338
398
|
|
339
399
|
async def _run_crawl(self):
|
340
400
|
"""Executa crawler leve para inventário de rotas."""
|
341
|
-
console.print("\n[bold
|
401
|
+
console.print("\n[bold red]▶ Web Crawler[/bold red]")
|
342
402
|
try:
|
403
|
+
console.print(" 🔍 Iniciando configuração do Web Crawler...")
|
343
404
|
from moriarty.modules.web_crawler import WebCrawler
|
344
405
|
|
345
406
|
base_url = self._default_base_url()
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
)
|
407
|
+
console.print(f" 🌐 URL base: {base_url}")
|
408
|
+
|
409
|
+
# Configurações do crawler
|
410
|
+
max_pages = max(50, self.threads * 10)
|
411
|
+
max_depth = 2
|
412
|
+
concurrency = max(5, self.threads)
|
413
|
+
|
414
|
+
console.print(f" ⚙️ Configurações: max_pages={max_pages}, max_depth={max_depth}, concurrency={concurrency}")
|
415
|
+
|
354
416
|
try:
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
|
366
|
-
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
|
417
|
+
console.print(" 🚀 Iniciando crawler...")
|
418
|
+
try:
|
419
|
+
# Log de debug: Verificando se o WebCrawler pode ser instanciado
|
420
|
+
console.print(" 🔧 Instanciando WebCrawler...")
|
421
|
+
crawler = WebCrawler(
|
422
|
+
base_url=base_url,
|
423
|
+
max_pages=max_pages,
|
424
|
+
max_depth=max_depth,
|
425
|
+
concurrency=concurrency,
|
426
|
+
follow_subdomains=False,
|
427
|
+
stealth=self.stealth,
|
428
|
+
)
|
429
|
+
console.print(" ✅ WebCrawler instanciado com sucesso!")
|
430
|
+
except Exception as e:
|
431
|
+
console.print(f" ❌ [red]Erro ao instanciar WebCrawler: {str(e)}[/red]")
|
432
|
+
logger.error("webcrawler.init_error", error=str(e), exc_info=True)
|
433
|
+
raise
|
434
|
+
|
435
|
+
try:
|
436
|
+
console.print(" 🔄 Executando varredura...")
|
437
|
+
pages = await crawler.crawl()
|
438
|
+
console.print(f" ✅ Varredura concluída! {len(pages)} páginas encontradas.")
|
439
|
+
|
440
|
+
# Log detalhado das páginas encontradas
|
441
|
+
for i, (url, page) in enumerate(pages.items(), 1):
|
442
|
+
console.print(f" {i}. [blue]{url}[/blue] (Status: {page.status})")
|
443
|
+
if page.error:
|
444
|
+
console.print(f" [red]Erro: {page.error}[/red]")
|
445
|
+
except Exception as e:
|
446
|
+
console.print(f" ❌ [red]Erro durante o crawler: {str(e)}[/red]")
|
447
|
+
logger.error("webcrawler.crawl_error", error=str(e), exc_info=True)
|
448
|
+
raise
|
449
|
+
|
450
|
+
try:
|
451
|
+
self.result.crawl_map = {
|
452
|
+
url: {
|
453
|
+
"status": page.status,
|
454
|
+
"title": page.title,
|
455
|
+
"forms": page.forms,
|
456
|
+
"links": page.links,
|
457
|
+
}
|
458
|
+
for url, page in pages.items()
|
459
|
+
}
|
460
|
+
console.print(" 📊 Dados do crawl processados com sucesso!")
|
461
|
+
except Exception as e:
|
462
|
+
console.print(f" ❌ [red]Erro ao processar resultados do crawl: {str(e)}[/red]")
|
463
|
+
logger.error("webcrawler.process_error", error=str(e), exc_info=True)
|
464
|
+
raise
|
465
|
+
|
466
|
+
try:
|
467
|
+
extracted = self._extract_targets_from_crawl(pages)
|
468
|
+
console.print(f" 🔗 {len(extracted)} alvos extraídos para fuzzing")
|
469
|
+
|
470
|
+
for definition in extracted:
|
471
|
+
self._register_web_target(
|
472
|
+
definition["url"],
|
473
|
+
definition["method"],
|
474
|
+
definition["params"]
|
475
|
+
)
|
476
|
+
|
477
|
+
console.print(f" [green]✓[/green] Crawled {len(pages)} pages")
|
478
|
+
if extracted:
|
479
|
+
console.print(f" [dim]→[/dim] {len(extracted)} endpoints para fuzz")
|
480
|
+
except Exception as e:
|
481
|
+
console.print(f"❌ [red]Erro ao extrair alvos do crawl: {str(e)}[/red]")
|
482
|
+
logger.error("webcrawler.extract_error", error=str(e), exc_info=True)
|
483
|
+
raise
|
484
|
+
|
485
|
+
except Exception as e:
|
486
|
+
console.print(f" [red]✗[/red] Crawl falhou: {str(e)}")
|
487
|
+
logger.error("domain.crawl.failed", error=str(e), exc_info=True)
|
488
|
+
# Tenta fechar o crawler mesmo em caso de erro
|
489
|
+
if 'crawler' in locals():
|
490
|
+
try:
|
491
|
+
await crawler.close()
|
492
|
+
except:
|
493
|
+
pass
|
494
|
+
raise
|
376
495
|
|
377
496
|
except Exception as exc:
|
378
|
-
console.print(" [red]✗[/red]
|
379
|
-
logger.
|
497
|
+
console.print(f" [red]✗[/red] Erro fatal no Web Crawler: {str(exc)}")
|
498
|
+
logger.error("domain.crawl.fatal_error", error=str(exc), exc_info=True)
|
499
|
+
raise
|
380
500
|
|
381
501
|
async def _run_fuzzer(self):
|
382
502
|
"""Executa directory fuzzing para expandir superfícies."""
|
383
|
-
console.print("\n[bold
|
503
|
+
console.print("\n[bold red]▶ Directory Fuzzing[/bold red]")
|
384
504
|
try:
|
385
505
|
from moriarty.modules.directory_fuzzer import DirectoryFuzzer
|
386
506
|
|
@@ -406,7 +526,7 @@ class DomainScanner:
|
|
406
526
|
|
407
527
|
async def _run_vuln_scan(self):
|
408
528
|
"""Executa detecção de vulnerabilidades XSS/SQLi."""
|
409
|
-
console.print("\n[bold
|
529
|
+
console.print("\n[bold red]▶ Web Vulnerability Scan[/bold red]")
|
410
530
|
|
411
531
|
if not self.web_targets:
|
412
532
|
console.print(" [yellow]⚠️ Nenhum endpoint coletado para testar[/yellow]")
|
@@ -430,7 +550,7 @@ class DomainScanner:
|
|
430
550
|
|
431
551
|
async def _run_waf_detect(self):
|
432
552
|
"""Módulo WAF Detection."""
|
433
|
-
console.print("\n[bold
|
553
|
+
console.print("\n[bold red]▶ WAF Detection[/bold red]")
|
434
554
|
|
435
555
|
try:
|
436
556
|
from moriarty.modules.waf_detector import WAFDetector
|
@@ -461,7 +581,7 @@ class DomainScanner:
|
|
461
581
|
def _show_summary(self):
|
462
582
|
"""Mostra resumo final."""
|
463
583
|
# Tree de resultados
|
464
|
-
tree = Tree(f"\n[bold
|
584
|
+
tree = Tree(f"\n[bold red]📊 Scan Summary[/bold red]")
|
465
585
|
|
466
586
|
if self.result.dns_info:
|
467
587
|
dns_node = tree.add("[bold]DNS Records[/bold]")
|
@@ -610,7 +730,15 @@ class DomainScanner:
|
|
610
730
|
self.result.web_targets = self.web_targets
|
611
731
|
|
612
732
|
def _default_base_url(self) -> str:
|
613
|
-
|
733
|
+
"""Retorna a URL base para o crawler, garantindo que tenha o esquema correto."""
|
734
|
+
target = self.target
|
735
|
+
|
736
|
+
# Se o alvo já tiver esquema, retorna como está
|
737
|
+
if target.startswith(('http://', 'https://')):
|
738
|
+
return target
|
739
|
+
|
740
|
+
# Se não tiver esquema, adiciona https://
|
741
|
+
return f"https://{target}"
|
614
742
|
|
615
743
|
def export(self, output: str):
|
616
744
|
"""Exporta resultados."""
|