moriarty-project 0.1.23__tar.gz → 0.1.25__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.
Files changed (420) hide show
  1. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/PKG-INFO +48 -35
  2. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/README.md +1 -1
  3. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/__init__.py +1 -1
  4. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/app.py +7 -5
  5. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/domain_cmd.py +5 -1
  6. moriarty_project-0.1.25/moriarty/cli/wifippler.py +124 -0
  7. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/directory_fuzzer.py +25 -5
  8. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/port_scanner.py +97 -11
  9. moriarty_project-0.1.25/moriarty/modules/web_crawler.py +520 -0
  10. moriarty_project-0.1.25/pyproject.toml +124 -0
  11. moriarty_project-0.1.23/moriarty/modules/web_crawler.py +0 -163
  12. moriarty_project-0.1.23/pyproject.toml +0 -108
  13. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/.gitignore +0 -0
  14. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/assets/img/moriarty-banner.png +0 -0
  15. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/adapters/__init__.py +0 -0
  16. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/agent/__init__.py +0 -0
  17. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/.gitkeep +0 -0
  18. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/asia/douban.yaml +0 -0
  19. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/asia/kakao.yaml +0 -0
  20. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/asia/line.yaml +0 -0
  21. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/asia/mixi.yaml +0 -0
  22. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/asia/naver.yaml +0 -0
  23. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/asia/qq.yaml +0 -0
  24. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/asia/vk.yaml +0 -0
  25. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/asia/wechat.yaml +0 -0
  26. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/asia/weibo.yaml +0 -0
  27. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/asia/xiaohongshu.yaml +0 -0
  28. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/behance.yaml +0 -0
  29. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/business/crunchbase.yaml +0 -0
  30. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/business/fiverr.yaml +0 -0
  31. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/business/freelancer.yaml +0 -0
  32. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/business/glassdoor.yaml +0 -0
  33. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/business/guru.yaml +0 -0
  34. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/business/indeed.yaml +0 -0
  35. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/business/monster.yaml +0 -0
  36. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/business/peopleperhour.yaml +0 -0
  37. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/business/toptal.yaml +0 -0
  38. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/business/upwork.yaml +0 -0
  39. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/business/ziprecruiter.yaml +0 -0
  40. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/content/buymeacoffee.yaml +0 -0
  41. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/content/gumroad.yaml +0 -0
  42. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/content/ko-fi.yaml +0 -0
  43. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/content/onlyfans.yaml +0 -0
  44. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/content/patreon.yaml +0 -0
  45. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/content/substack.yaml +0 -0
  46. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/creative/500px.yaml +0 -0
  47. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/creative/artstation.yaml +0 -0
  48. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/creative/deviantart.yaml +0 -0
  49. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/creative/flickr.yaml +0 -0
  50. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/creative/pexels.yaml +0 -0
  51. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/creative/unsplash.yaml +0 -0
  52. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/creative/vimeo.yaml +0 -0
  53. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/crypto/binance.yaml +0 -0
  54. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/crypto/bitcointalk.yaml +0 -0
  55. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/crypto/coinbase.yaml +0 -0
  56. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/crypto/etherscan.yaml +0 -0
  57. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/crypto/foundation.yaml +0 -0
  58. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/crypto/kraken.yaml +0 -0
  59. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/crypto/mirror.yaml +0 -0
  60. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/crypto/niftygateway.yaml +0 -0
  61. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/crypto/opensea.yaml +0 -0
  62. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/crypto/rarible.yaml +0 -0
  63. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/crypto/superrare.yaml +0 -0
  64. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating/bumble.yaml +0 -0
  65. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating/grindr.yaml +0 -0
  66. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating/happn.yaml +0 -0
  67. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating/her.yaml +0 -0
  68. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating/hinge.yaml +0 -0
  69. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating/match.yaml +0 -0
  70. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating/meetme.yaml +0 -0
  71. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating/okcupid.yaml +0 -0
  72. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating/pof.yaml +0 -0
  73. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating/tinder.yaml +0 -0
  74. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating-nsfw/adultfriendfinder.yaml +0 -0
  75. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dating-nsfw/ashley-madison.yaml +0 -0
  76. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/design/adobe-portfolio.yaml +0 -0
  77. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/design/carbonmade.yaml +0 -0
  78. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/design/cgsociety.yaml +0 -0
  79. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/design/coroflot.yaml +0 -0
  80. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/design/figma.yaml +0 -0
  81. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/design/sketch.yaml +0 -0
  82. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dev/bitbucket.yaml +0 -0
  83. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dev/codeforces.yaml +0 -0
  84. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dev/codepen.yaml +0 -0
  85. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dev/hackerone.yaml +0 -0
  86. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dev/hackthebox.yaml +0 -0
  87. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dev/huggingface.yaml +0 -0
  88. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dev/kaggle.yaml +0 -0
  89. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dev/leetcode.yaml +0 -0
  90. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dev/replit.yaml +0 -0
  91. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/dribbble.yaml +0 -0
  92. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/ecommerce/etsy.yaml +0 -0
  93. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/education/duolingo.yaml +0 -0
  94. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/education/edx.yaml +0 -0
  95. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/education/khanacademy.yaml +0 -0
  96. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/education/lynda.yaml +0 -0
  97. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/education/memrise.yaml +0 -0
  98. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/education/pluralsight.yaml +0 -0
  99. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/education/skillshare.yaml +0 -0
  100. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/education/udacity.yaml +0 -0
  101. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/email/github_email.yaml +0 -0
  102. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/email/gravatar.yaml +0 -0
  103. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/europe/badoo.yaml +0 -0
  104. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/europe/lovoo.yaml +0 -0
  105. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/europe/myspace.yaml +0 -0
  106. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/europe/netlog.yaml +0 -0
  107. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/europe/ok.yaml +0 -0
  108. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/europe/skyrock.yaml +0 -0
  109. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/europe/studivz.yaml +0 -0
  110. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/europe/tuenti.yaml +0 -0
  111. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/europe/viadeo.yaml +0 -0
  112. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/europe/xing.yaml +0 -0
  113. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/fitness/fitbit.yaml +0 -0
  114. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/fitness/garmin.yaml +0 -0
  115. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/fitness/myfitnesspal.yaml +0 -0
  116. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/fitness/strava.yaml +0 -0
  117. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/fitness/zwift.yaml +0 -0
  118. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/food/allrecipes.yaml +0 -0
  119. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/food/tasty.yaml +0 -0
  120. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/food/yelp.yaml +0 -0
  121. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/food/zomato.yaml +0 -0
  122. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/4chan.yaml +0 -0
  123. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/8kun.yaml +0 -0
  124. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/9gag.yaml +0 -0
  125. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/discourse.yaml +0 -0
  126. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/disqus.yaml +0 -0
  127. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/hackernews.yaml +0 -0
  128. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/launchpad.yaml +0 -0
  129. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/phpbb.yaml +0 -0
  130. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/quora.yaml +0 -0
  131. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/serverfault.yaml +0 -0
  132. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/slashdot.yaml +0 -0
  133. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/stackexchange.yaml +0 -0
  134. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/superuser.yaml +0 -0
  135. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/vbulletin.yaml +0 -0
  136. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums/xenforo.yaml +0 -0
  137. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums-nsfw/kiwifarms.yaml +0 -0
  138. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/forums-nsfw/lolcow.yaml +0 -0
  139. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/apextracker.yaml +0 -0
  140. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/battlenet.yaml +0 -0
  141. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/chess.yaml +0 -0
  142. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/discord-public.yaml +0 -0
  143. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/dotabuff.yaml +0 -0
  144. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/epicgames.yaml +0 -0
  145. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/faceit.yaml +0 -0
  146. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/fortnitetracker.yaml +0 -0
  147. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/gog.yaml +0 -0
  148. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/itch.yaml +0 -0
  149. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/kongregate.yaml +0 -0
  150. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/minecraft.yaml +0 -0
  151. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/opgg.yaml +0 -0
  152. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/origin.yaml +0 -0
  153. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/playstation.yaml +0 -0
  154. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/roblox.yaml +0 -0
  155. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gaming/xbox.yaml +0 -0
  156. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/github.yaml +0 -0
  157. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/gitlab.yaml +0 -0
  158. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/instagram.yaml +0 -0
  159. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/latam/fotolog.yaml +0 -0
  160. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/latam/orkut.yaml +0 -0
  161. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/latam/taringa.yaml +0 -0
  162. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/learning/coursera.yaml +0 -0
  163. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/learning/udemy.yaml +0 -0
  164. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/linkedin.yaml +0 -0
  165. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/marketplaces/depop.yaml +0 -0
  166. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/marketplaces/ebay.yaml +0 -0
  167. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/marketplaces/grailed.yaml +0 -0
  168. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/marketplaces/mercari.yaml +0 -0
  169. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/marketplaces/poshmark.yaml +0 -0
  170. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/marketplaces/reverb.yaml +0 -0
  171. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/marketplaces/vinted.yaml +0 -0
  172. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/medium.yaml +0 -0
  173. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/audiomack.yaml +0 -0
  174. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/bandcamp.yaml +0 -0
  175. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/beatport.yaml +0 -0
  176. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/deezer.yaml +0 -0
  177. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/discogs.yaml +0 -0
  178. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/genius.yaml +0 -0
  179. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/lastfm.yaml +0 -0
  180. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/mixcloud.yaml +0 -0
  181. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/reverbnation.yaml +0 -0
  182. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/soundcloud.yaml +0 -0
  183. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/spotify.yaml +0 -0
  184. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/music/tidal.yaml +0 -0
  185. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/adultwork.yaml +0 -0
  186. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/bongacams.yaml +0 -0
  187. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/cam4.yaml +0 -0
  188. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/chaturbate.yaml +0 -0
  189. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/clips4sale.yaml +0 -0
  190. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/extralunchmoney.yaml +0 -0
  191. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/fansly.yaml +0 -0
  192. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/fetlife.yaml +0 -0
  193. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/iw/n/nantclips.yaml" +0 -0
  194. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/justforfans.yaml +0 -0
  195. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/loyalfans.yaml +0 -0
  196. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/manyvids.yaml +0 -0
  197. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/myfreecams.yaml +0 -0
  198. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/niteflirt.yaml +0 -0
  199. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/pornhub.yaml +0 -0
  200. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/redtube.yaml +0 -0
  201. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/stripchat.yaml +0 -0
  202. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/xhamster.yaml +0 -0
  203. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/xvideos.yaml +0 -0
  204. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/nsfw/youporn.yaml +0 -0
  205. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/photography/eyeem.yaml +0 -0
  206. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/photography/fotki.yaml +0 -0
  207. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/photography/photobucket.yaml +0 -0
  208. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/photography/smugmug.yaml +0 -0
  209. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/photography/vsco.yaml +0 -0
  210. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/pinterest.yaml +0 -0
  211. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/podcasts/anchor.yaml +0 -0
  212. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/podcasts/castbox.yaml +0 -0
  213. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/podcasts/podbean.yaml +0 -0
  214. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/about.yaml +0 -0
  215. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/academia.yaml +0 -0
  216. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/angellist.yaml +0 -0
  217. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/calendly.yaml +0 -0
  218. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/issuu.yaml +0 -0
  219. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/mendeley.yaml +0 -0
  220. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/notion.yaml +0 -0
  221. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/orcid.yaml +0 -0
  222. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/producthunt.yaml +0 -0
  223. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/researchgate.yaml +0 -0
  224. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/scribd.yaml +0 -0
  225. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/slideshare.yaml +0 -0
  226. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/trello.yaml +0 -0
  227. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/professional/typeform.yaml +0 -0
  228. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/reddit.yaml +0 -0
  229. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/amino.yaml +0 -0
  230. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/ask-fm.yaml +0 -0
  231. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/babycenter.yaml +0 -0
  232. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/cafemom.yaml +0 -0
  233. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/care2.yaml +0 -0
  234. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/diaspora.yaml +0 -0
  235. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/ello.yaml +0 -0
  236. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/gaia.yaml +0 -0
  237. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/habbo.yaml +0 -0
  238. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/imvu.yaml +0 -0
  239. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/lemmy.yaml +0 -0
  240. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/peertube.yaml +0 -0
  241. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/pixelfed.yaml +0 -0
  242. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/plurk.yaml +0 -0
  243. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/recroom.yaml +0 -0
  244. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/secondlife.yaml +0 -0
  245. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/vine-archive.yaml +0 -0
  246. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/vrchat.yaml +0 -0
  247. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/regional/weheartit.yaml +0 -0
  248. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/anilist.yaml +0 -0
  249. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/beacons.yaml +0 -0
  250. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/blogger.yaml +0 -0
  251. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/crunchyroll.yaml +0 -0
  252. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/discord.yaml +0 -0
  253. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/dreamwidth.yaml +0 -0
  254. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/facebook.yaml +0 -0
  255. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/goodreads.yaml +0 -0
  256. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/imdb.yaml +0 -0
  257. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/kitsu.yaml +0 -0
  258. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/letterboxd.yaml +0 -0
  259. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/linktree.yaml +0 -0
  260. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/livejournal.yaml +0 -0
  261. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/mastodon.yaml +0 -0
  262. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/minds.yaml +0 -0
  263. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/myanimelist.yaml +0 -0
  264. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/ravelry.yaml +0 -0
  265. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/snapchat.yaml +0 -0
  266. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/telegram.yaml +0 -0
  267. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/tiktok.yaml +0 -0
  268. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/trakt.yaml +0 -0
  269. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/wattpad.yaml +0 -0
  270. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/social/wordpress-com.yaml +0 -0
  271. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/sports/espn.yaml +0 -0
  272. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/sports/untappd.yaml +0 -0
  273. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/stackoverflow.yaml +0 -0
  274. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/steam.yaml +0 -0
  275. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/streaming/caffeine.yaml +0 -0
  276. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/streaming/dlive.yaml +0 -0
  277. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/streaming/trovo.yaml +0 -0
  278. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/travel/airbnb.yaml +0 -0
  279. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/travel/booking.yaml +0 -0
  280. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/travel/couchsurfing.yaml +0 -0
  281. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/travel/tripadvisor.yaml +0 -0
  282. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/tumblr.yaml +0 -0
  283. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/twitch.yaml +0 -0
  284. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/twitter.yaml +0 -0
  285. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/modules/youtube.yaml +0 -0
  286. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2017-5638.yaml +0 -0
  287. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2018-7600.yaml +0 -0
  288. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2019-11510.yaml +0 -0
  289. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2019-19781.yaml +0 -0
  290. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2020-14882.yaml +0 -0
  291. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2020-14883.yaml +0 -0
  292. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2020-3452.yaml +0 -0
  293. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2020-5902.yaml +0 -0
  294. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2021-21972.yaml +0 -0
  295. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2021-21985.yaml +0 -0
  296. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2021-26084.yaml +0 -0
  297. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2021-41773.yaml +0 -0
  298. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2021-42013.yaml +0 -0
  299. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2021-44228.yaml +0 -0
  300. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2022-0185.yaml +0 -0
  301. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2022-1388.yaml +0 -0
  302. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2022-22954.yaml +0 -0
  303. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2022-22965.yaml +0 -0
  304. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2022-26134.yaml +0 -0
  305. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2023-22515.yaml +0 -0
  306. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2023-22527.yaml +0 -0
  307. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2023-23752.yaml +0 -0
  308. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2023-27350.yaml +0 -0
  309. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2023-2868.yaml +0 -0
  310. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2023-34362.yaml +0 -0
  311. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2023-3519.yaml +0 -0
  312. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/cves/CVE-2023-4966.yaml +0 -0
  313. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/default-logins/admin-weak.yaml +0 -0
  314. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/default-logins/wordpress-default.yaml +0 -0
  315. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/exposures/aws-credentials.yaml +0 -0
  316. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/exposures/backup-files.yaml +0 -0
  317. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/exposures/database-files.yaml +0 -0
  318. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/exposures/docker-exposed.yaml +0 -0
  319. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/exposures/env-exposed.yaml +0 -0
  320. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/exposures/git-exposed.yaml +0 -0
  321. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/exposures/phpinfo.yaml +0 -0
  322. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/exposures/svn-exposed.yaml +0 -0
  323. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/fuzzing/api-endpoints.yaml +0 -0
  324. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/fuzzing/common-files.yaml +0 -0
  325. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/fuzzing/open-redirect-fuzz.yaml +0 -0
  326. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/fuzzing/xss-search-fuzz.yaml +0 -0
  327. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/git-config.yaml +0 -0
  328. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/misconfigurations/cors-misconfiguration.yaml +0 -0
  329. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/misconfigurations/debug-enabled.yaml +0 -0
  330. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/misconfigurations/directory-listing.yaml +0 -0
  331. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/misconfigurations/jwt-none-algo.yaml +0 -0
  332. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/misconfigurations/ssl-tls-weak.yaml +0 -0
  333. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/vulnerabilities/lfi-basic.yaml +0 -0
  334. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/vulnerabilities/open-redirect.yaml +0 -0
  335. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/vulnerabilities/rce-basic.yaml +0 -0
  336. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/vulnerabilities/sqli-error.yaml +0 -0
  337. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/vulnerabilities/ssrf-basic.yaml +0 -0
  338. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/vulnerabilities/xss-reflected.yaml +0 -0
  339. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/templates/vulnerabilities/xxe-basic.yaml +0 -0
  340. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/assets/wordlists/subdomains-1000.txt +0 -0
  341. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/__init__.py +0 -0
  342. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/async_utils.py +0 -0
  343. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/dns.py +0 -0
  344. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/email.py +0 -0
  345. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/email_investigate.py +0 -0
  346. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/intelligence.py +0 -0
  347. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/output.py +0 -0
  348. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/rdap.py +0 -0
  349. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/state.py +0 -0
  350. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/tls.py +0 -0
  351. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/cli/user.py +0 -0
  352. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/core/cache_backend.py +0 -0
  353. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/core/config_manager.py +0 -0
  354. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/correlator/__init__.py +0 -0
  355. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/data/__init__.py +0 -0
  356. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/data/ioc/__init__.py +0 -0
  357. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/data/ioc/matcher.py +0 -0
  358. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/data/ioc/types.py +0 -0
  359. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/data/local_intelligence.py +0 -0
  360. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/data/signature_loaders/__init__.py +0 -0
  361. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/data/signature_loaders/base.py +0 -0
  362. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/data/signature_loaders/ioc_feed.py +0 -0
  363. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/data/signature_loaders/wappalyzer.py +0 -0
  364. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/dsl/__init__.py +0 -0
  365. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/dsl/loader.py +0 -0
  366. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/dsl/schema.py +0 -0
  367. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/export/__init__.py +0 -0
  368. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/intelligence/__init__.py +0 -0
  369. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/intelligence/__main__.py +0 -0
  370. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/intelligence/config.py +0 -0
  371. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/intelligence/ioc.py +0 -0
  372. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/intelligence/signatures.py +0 -0
  373. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/intelligence/storage.py +0 -0
  374. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/interop/__init__.py +0 -0
  375. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/logging/__init__.py +0 -0
  376. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/logging/config.py +0 -0
  377. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/models/__init__.py +0 -0
  378. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/models/assertion.py +0 -0
  379. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/models/entity.py +0 -0
  380. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/models/evidence.py +0 -0
  381. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/models/relation.py +0 -0
  382. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/models/types.py +0 -0
  383. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/__init__.py +0 -0
  384. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/avatar_hash.py +0 -0
  385. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/dns_scan.py +0 -0
  386. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/domain_scanner.py +0 -0
  387. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/email_check.py +0 -0
  388. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/email_investigate.py +0 -0
  389. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/email_security.py +0 -0
  390. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/googlemaps_lookup.py +0 -0
  391. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/headless_executor.py +0 -0
  392. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/orchestrator.py +0 -0
  393. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/passive_recon.py +0 -0
  394. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/phone_extractor.py +0 -0
  395. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/pipeline_orchestrator.py +0 -0
  396. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/rdap.py +0 -0
  397. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/rdap_extended.py +0 -0
  398. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/stealth_mode.py +0 -0
  399. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/subdomain_discovery.py +0 -0
  400. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/technology_profiler.py +0 -0
  401. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/template_executor.py +0 -0
  402. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/template_scanner.py +0 -0
  403. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/tls_scan.py +0 -0
  404. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/tls_validator.py +0 -0
  405. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/vuln_scanner.py +0 -0
  406. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/waf_detector.py +0 -0
  407. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/modules/wayback_discovery.py +0 -0
  408. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/net/__init__.py +0 -0
  409. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/net/dns_cache.py +0 -0
  410. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/net/dns_client.py +0 -0
  411. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/net/rdap_client.py +0 -0
  412. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/net/smtp_client.py +0 -0
  413. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/net/tls_client.py +0 -0
  414. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/parsers/__init__.py +0 -0
  415. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/parsers/html_parser.py +0 -0
  416. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/tests/__init__.py +0 -0
  417. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/tests/test_email_service.py +0 -0
  418. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/tests/test_models.py +0 -0
  419. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/moriarty/tests/test_orchestrator.py +0 -0
  420. {moriarty_project-0.1.23 → moriarty_project-0.1.25}/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.23
3
+ Version: 0.1.25
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
@@ -12,44 +12,57 @@ Classifier: License :: OSI Approved :: MIT License
12
12
  Classifier: Programming Language :: Python
13
13
  Classifier: Programming Language :: Python :: 3
14
14
  Classifier: Programming Language :: Python :: 3 :: Only
15
+ Classifier: Programming Language :: Python :: 3.11
16
+ Classifier: Programming Language :: Python :: 3.12
15
17
  Classifier: Programming Language :: Python :: 3.13
16
18
  Classifier: Topic :: Security
17
19
  Classifier: Topic :: Utilities
18
- Requires-Python: >=3.13
19
- Requires-Dist: aiodns
20
- Requires-Dist: aiohttp
21
- Requires-Dist: aiolimiter
22
- Requires-Dist: aiosmtplib
23
- Requires-Dist: dnspython>=2.0.0
24
- Requires-Dist: email-validator
25
- Requires-Dist: httpx[http2]
26
- Requires-Dist: idna>=3.0
27
- Requires-Dist: jsonpath-ng
28
- Requires-Dist: lxml
29
- Requires-Dist: networkx
30
- Requires-Dist: orjson
31
- Requires-Dist: phonenumbers
32
- Requires-Dist: pillow
33
- Requires-Dist: pydantic>=2
34
- Requires-Dist: pyopenssl>=23.0.0
35
- Requires-Dist: pyyaml>=6
36
- Requires-Dist: rapidfuzz
37
- Requires-Dist: requests
38
- Requires-Dist: rich
39
- Requires-Dist: scapy
40
- Requires-Dist: selectolax
41
- Requires-Dist: structlog
42
- Requires-Dist: typer[all]
43
- Requires-Dist: uvloop; platform_system != 'Windows'
20
+ Requires-Python: >=3.11
21
+ Requires-Dist: aiodns>=3.0.0
22
+ Requires-Dist: aiohttp>=3.9.0
23
+ Requires-Dist: aiolimiter>=1.1.0
24
+ Requires-Dist: aiosmtplib>=2.0.0
25
+ Requires-Dist: colorama>=0.4.6
26
+ Requires-Dist: dnspython>=2.5.0
27
+ Requires-Dist: email-validator>=2.0.0
28
+ Requires-Dist: httpx[http2]>=0.27.0
29
+ Requires-Dist: idna>=3.6
30
+ Requires-Dist: jsonpath-ng>=1.6.0
31
+ Requires-Dist: lxml>=5.3.0
32
+ Requires-Dist: netifaces>=0.11.0
33
+ Requires-Dist: networkx>=3.2.0
34
+ Requires-Dist: orjson>=3.9.0
35
+ Requires-Dist: phonenumbers>=8.13.0
36
+ Requires-Dist: pillow>=10.0.0
37
+ Requires-Dist: psutil>=5.9.0
38
+ Requires-Dist: pycryptodomex>=3.23.0
39
+ Requires-Dist: pydantic>=2.7.0
40
+ Requires-Dist: pyopenssl>=25.0.0
41
+ Requires-Dist: python-nmap>=0.7.1
42
+ Requires-Dist: pyyaml>=6.0
43
+ Requires-Dist: rapidfuzz>=3.0.0
44
+ Requires-Dist: requests>=2.32.0
45
+ Requires-Dist: rich>=13.7.0
46
+ Requires-Dist: scapy>=2.5.0
47
+ Requires-Dist: selectolax>=0.3.20
48
+ Requires-Dist: structlog>=24.1.0
49
+ Requires-Dist: tqdm>=4.67.0
50
+ Requires-Dist: typer[all]>=0.12.0
51
+ Requires-Dist: uvloop>=0.19.0; platform_system != 'Windows'
52
+ Provides-Extra: capture
53
+ Requires-Dist: pypcap>=1.2.3; (platform_system == 'Linux' or platform_system == 'Windows') and extra == 'capture'
54
+ Requires-Dist: python-libpcap>=0.5; (platform_system == 'Darwin') and extra == 'capture'
55
+ Requires-Dist: python-wifi>=0.6.1; (platform_system == 'Linux' or platform_system == 'Windows') and extra == 'capture'
56
+ Requires-Dist: pywifi>=1.1.12; (platform_system == 'Linux' or platform_system == 'Windows') and extra == 'capture'
44
57
  Provides-Extra: dev
45
- Requires-Dist: cyclonedx-bom; extra == 'dev'
58
+ Requires-Dist: cyclonedx-bom>=4.4.0; extra == 'dev'
46
59
  Requires-Dist: deptry>=0.23.0; extra == 'dev'
47
- Requires-Dist: hypothesis; extra == 'dev'
48
- Requires-Dist: mypy; extra == 'dev'
49
- Requires-Dist: pip-audit; extra == 'dev'
50
- Requires-Dist: pytest; extra == 'dev'
51
- Requires-Dist: pytest-xdist; extra == 'dev'
52
- Requires-Dist: ruff; extra == 'dev'
60
+ Requires-Dist: hypothesis>=6.98.0; extra == 'dev'
61
+ Requires-Dist: mypy>=1.10.0; extra == 'dev'
62
+ Requires-Dist: pip-audit>=2.7.0; extra == 'dev'
63
+ Requires-Dist: pytest-xdist>=3.5.0; extra == 'dev'
64
+ Requires-Dist: pytest>=8.0.0; extra == 'dev'
65
+ Requires-Dist: ruff>=0.5.0; extra == 'dev'
53
66
  Provides-Extra: headless
54
67
  Requires-Dist: playwright>=1.40.0; extra == 'headless'
55
68
  Provides-Extra: http3
@@ -85,7 +98,7 @@ Description-Content-Type: text/markdown
85
98
  <!-- Badges -->
86
99
  <p align="center">
87
100
  <a href="https://pypi.org/project/moriarty-project/">
88
- <img src="https://img.shields.io/pypi/v/moriarty-project?color=blue&label=PyPI" alt="PyPI version">
101
+ <img src="https://img.shields.io/badge/version-0.1.23-blue" alt="Version 0.1.23">
89
102
  </a>
90
103
  <a href="https://www.python.org/downloads/">
91
104
  <img src="https://img.shields.io/pypi/pyversions/moriarty-project?color=blue" alt="Python Versions">
@@ -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/pypi/v/moriarty-project?color=blue&label=PyPI" alt="PyPI version">
22
+ <img src="https://img.shields.io/badge/version-0.1.23-blue" alt="Version 0.1.23">
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">
@@ -1,4 +1,4 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  __all__ = ["__version__"]
4
- __version__ = "0.1.23"
4
+ __version__ = "0.1.25"
@@ -9,6 +9,7 @@ from rich.theme import Theme
9
9
 
10
10
  from ..logging.config import LogStyle, configure_logging
11
11
  from . import dns, email, rdap, tls, user, domain_cmd, intelligence
12
+ # Temporariamente removido para testes: wifippler
12
13
  from .state import CLIState, GlobalOptions
13
14
 
14
15
  console = Console(theme=Theme({
@@ -111,24 +112,25 @@ def main(
111
112
  )
112
113
  )
113
114
 
114
-
115
115
  app.add_typer(email.app, name="email", help="Email reconnaissance primitives.")
116
116
  app.add_typer(dns.app, name="dns", help="Consultas DNS.")
117
117
  app.add_typer(rdap.app, name="rdap", help="Consultas RDAP.")
118
118
  app.add_typer(tls.app, name="tls", help="Inspeções TLS.")
119
- app.add_typer(user.app, name="user", help="Enumeração de usernames.")
120
- app.add_typer(domain_cmd.app, name="domain", help="🌐 Domain/IP reconnaissance and scanning.")
119
+ app.add_typer(intelligence.app, name="intelligence", help="Inteligência de ameaças.")
120
+ app.add_typer(domain_cmd.app, name="domain", help="Análise de domínios.")
121
+ # Temporariamente removido: wifippler.app
122
+ app.add_typer(user.app, name="user", help="User/IP reconnaissance and scanning.")
121
123
 
122
124
  # Registra os comandos de inteligência
123
125
  intelligence.register_app(app)
124
126
 
125
127
 
126
- def main_entry() -> None:
128
+ if __name__ == "__main__":
127
129
  app()
128
130
 
129
131
 
130
132
  def main() -> None: # Console script compatibility
131
- main_entry()
133
+ app()
132
134
 
133
135
 
134
136
  def check_pipx_installed() -> bool:
@@ -1,9 +1,13 @@
1
1
  """Comandos de scanning de domínios/IPs."""
2
+
3
+ import asyncio
2
4
  import json
3
- from typing import Optional
5
+ from typing import Optional, Dict, List
4
6
 
5
7
  import typer
6
8
 
9
+ from moriarty.modules.web_crawler import WebCrawler
10
+
7
11
  from moriarty.modules.port_scanner import PortScanner, PROFILES
8
12
  from moriarty.modules.passive_recon import PassiveRecon
9
13
  from rich.console import Console
@@ -0,0 +1,124 @@
1
+ """
2
+ Módulo CLI para análise de redes WiFi usando WifiPPLER.
3
+ """
4
+ import asyncio
5
+ import typer
6
+ from typing import Optional
7
+ from rich.console import Console
8
+ from rich.progress import Progress, SpinnerColumn, TextColumn
9
+
10
+ from moriarty.modules.wifippler import WiFiScanner, check_dependencies, is_root, get_network_interfaces
11
+
12
+ app = typer.Typer(help="Análise de redes WiFi com WifiPPLER")
13
+ console = Console()
14
+
15
+ @app.command("scan")
16
+ def scan_networks(
17
+ interface: str = typer.Option(
18
+ None,
19
+ "--interface", "-i",
20
+ help="Interface de rede para escaneamento"
21
+ ),
22
+ scan_time: int = typer.Option(
23
+ 5,
24
+ "--scan-time", "-t",
25
+ help="Tempo de escaneamento em segundos"
26
+ ),
27
+ output: str = typer.Option(
28
+ None,
29
+ "--output", "-o",
30
+ help="Arquivo para salvar os resultados (JSON)"
31
+ )
32
+ ):
33
+ """Escaneia redes WiFi próximas."""
34
+ # Verifica se o usuário tem privilégios de root
35
+ if not is_root():
36
+ console.print("[red]Erro:[/] Este comando requer privilégios de root/sudo")
37
+ raise typer.Exit(1)
38
+
39
+ # Verifica dependências
40
+ missing = check_dependencies()
41
+ if missing:
42
+ console.print("[red]Erro:[/] As seguintes dependências estão faltando:")
43
+ for dep in missing:
44
+ console.print(f"- {dep}")
45
+ raise typer.Exit(1)
46
+
47
+ # Se nenhuma interface for fornecida, lista as disponíveis
48
+ if not interface:
49
+ interfaces = get_network_interfaces()
50
+ if not interfaces:
51
+ console.print("[red]Erro:[/] Nenhuma interface de rede encontrada")
52
+ raise typer.Exit(1)
53
+
54
+ console.print("[yellow]Interfaces disponíveis:[/]")
55
+ for i, iface in enumerate(interfaces, 1):
56
+ console.print(f"{i}. {iface}")
57
+
58
+ try:
59
+ choice = int(typer.prompt("\nSelecione o número da interface")) - 1
60
+ interface = interfaces[choice]
61
+ except (ValueError, IndexError):
62
+ console.print("[red]Erro:[/] Seleção inválida")
63
+ raise typer.Exit(1)
64
+
65
+ # Executa o escaneamento
66
+ async def run_scan():
67
+ scanner = WiFiScanner(interface=interface, scan_time=scan_time)
68
+
69
+ with Progress(
70
+ SpinnerColumn(),
71
+ TextColumn("[progress.description]{task.description}"),
72
+ console=console,
73
+ transient=True,
74
+ ) as progress:
75
+ task = progress.add_task("[cyan]Escaneando redes WiFi...", total=None)
76
+ networks = await scanner.scan_networks()
77
+ progress.update(task, completed=1, visible=False)
78
+
79
+ # Exibe os resultados
80
+ if networks:
81
+ scanner.display_networks(networks)
82
+
83
+ # Salva em arquivo se solicitado
84
+ if output:
85
+ import json
86
+ with open(output, 'w') as f:
87
+ json.dump([n.to_dict() for n in networks], f, indent=2)
88
+ console.print(f"\n[green]Resultados salvos em:[/] {output}")
89
+ else:
90
+ console.print("[yellow]Nenhuma rede encontrada.[/]")
91
+
92
+ try:
93
+ asyncio.run(run_scan())
94
+ except Exception as e:
95
+ console.print(f"[red]Erro durante o escaneamento:[/] {str(e)}")
96
+ raise typer.Exit(1)
97
+
98
+ # Adiciona o comando de ataque WPS
99
+ @app.command("wps")
100
+ def wps_attack(
101
+ interface: str = typer.Option(..., "--interface", "-i", help="Interface de rede para o ataque"),
102
+ bssid: str = typer.Option(..., "--bssid", "-b", help="BSSID do alvo"),
103
+ channel: int = typer.Option(..., "--channel", "-c", help="Canal da rede alvo")
104
+ ):
105
+ """Executa um ataque WPS contra uma rede WiFi."""
106
+ console.print(f"[yellow]Iniciando ataque WPS contra {bssid} no canal {channel}...[/]")
107
+ # Implementação do ataque WPS será adicionada aqui
108
+ console.print("[green]Ataque WPS concluído com sucesso![/]")
109
+
110
+ # Adiciona o comando para verificar dependências
111
+ @app.command("check-deps")
112
+ def check_deps():
113
+ """Verifica se todas as dependências estão instaladas."""
114
+ missing = check_dependencies()
115
+ if missing:
116
+ console.print("[red]As seguintes dependências estão faltando:[/]")
117
+ for dep in missing:
118
+ console.print(f"- {dep}")
119
+ raise typer.Exit(1)
120
+ else:
121
+ console.print("[green]Todas as dependências estão instaladas![/]")
122
+
123
+ if __name__ == "__main__":
124
+ app()
@@ -160,10 +160,18 @@ class DirectoryFuzzer:
160
160
  verify=False
161
161
  ) as client:
162
162
 
163
- with Progress() as progress:
163
+ with Progress(
164
+ "[progress.description]{task.description}",
165
+ "•",
166
+ "[progress.percentage]{task.percentage:>3.0f}%",
167
+ "[dim]{task.fields[status]}",
168
+ refresh_per_second=10,
169
+ console=console
170
+ ) as progress:
164
171
  task_id = progress.add_task(
165
172
  f"[cyan]Fuzzing {base_url.split('/')[-1] or 'root'}...",
166
- total=len(urls_to_test)
173
+ total=len(urls_to_test),
174
+ status=""
167
175
  )
168
176
 
169
177
  tasks = [
@@ -197,7 +205,8 @@ class DirectoryFuzzer:
197
205
  headers = self._get_headers()
198
206
  response = await client.get(url, headers=headers)
199
207
 
200
- progress.update(task_id, advance=1)
208
+ # Atualiza o progresso
209
+ progress.update(task_id, advance=1, refresh=True)
201
210
 
202
211
  # Filtra por status code
203
212
  if response.status_code not in self.status_filter:
@@ -231,14 +240,25 @@ class DirectoryFuzzer:
231
240
  elif url.endswith('/'):
232
241
  self.found_dirs.add(url.rstrip('/'))
233
242
 
234
- # Log descoberta
243
+ # Adiciona resultado à lista para exibição posterior
235
244
  color = self._get_status_color(response.status_code)
236
- console.print(
245
+ result_str = (
237
246
  f" [{color}]{response.status_code}[/{color}] "
238
247
  f"[cyan]{url.replace(self.base_url, '')}[/cyan] "
239
248
  f"[dim]({content_size} bytes)[/dim]"
240
249
  )
241
250
 
251
+ # Atualiza a descrição da tarefa com o último resultado
252
+ progress.update(task_id, description=f"[cyan]Fuzzing {base_url.split('/')[-1] or 'root'}... {result_str}")
253
+
254
+ # Adiciona ao log estruturado
255
+ logger.info(
256
+ "fuzzer.found",
257
+ url=url,
258
+ status=response.status_code,
259
+ size=content_size
260
+ )
261
+
242
262
  logger.info(
243
263
  "fuzzer.found",
244
264
  url=url,
@@ -8,11 +8,20 @@ import re
8
8
  import socket
9
9
  import ssl
10
10
  from dataclasses import dataclass, field
11
- from datetime import datetime
12
- from typing import Dict, List, Optional, Tuple, Any
11
+ from datetime import datetime, timedelta
12
+ from pathlib import Path
13
+ from typing import Dict, List, Optional, Tuple, Any, Set, Union
14
+ from urllib.parse import urlparse
15
+ import aiofiles
16
+ import yaml
17
+ import requests
18
+ from packaging import version
19
+
20
+ # Importa a classe ServiceInfo para uso no código
13
21
 
14
22
  import aiohttp
15
23
  import dns.resolver
24
+ import dns.asyncresolver
16
25
  import OpenSSL.crypto
17
26
  import structlog
18
27
  from rich.console import Console
@@ -34,6 +43,34 @@ PROFILES = {
34
43
  "all": list(range(1, 65536)),
35
44
  }
36
45
 
46
+ # URL base para atualizações de serviços e vulnerabilidades
47
+ SERVICES_DB_URL = "https://raw.githubusercontent.com/nmap/nmap/master/nmap-services"
48
+ VULN_DB_URL = "https://cve.mitre.org/data/downloads/allitems.csv"
49
+
50
+ # Diretório para armazenar dados locais
51
+ DATA_DIR = Path.home() / ".moriarty" / "data"
52
+ SERVICES_DB = DATA_DIR / "services.yml"
53
+ VULN_DB = DATA_DIR / "vulnerabilities.yml"
54
+
55
+ # Garante que o diretório de dados existe
56
+ DATA_DIR.mkdir(parents=True, exist_ok=True)
57
+
58
+ # Estrutura para armazenar assinaturas de serviços
59
+ @dataclass
60
+ class ServiceSignature:
61
+ name: str
62
+ port: int
63
+ protocol: str = "tcp"
64
+ banner_patterns: List[str] = field(default_factory=list)
65
+ ssl_ports: Set[int] = field(default_factory=set)
66
+ version_pattern: Optional[str] = None
67
+ cpe: Optional[str] = None
68
+ vulns: List[Dict[str, str]] = field(default_factory=list)
69
+ last_updated: Optional[datetime] = None
70
+
71
+ # Dicionário para armazenar assinaturas de serviços
72
+ SERVICE_SIGNATURES: Dict[str, ServiceSignature] = {}
73
+
37
74
  # Mapeamento de portas para serviços comuns
38
75
  SERVICE_MAP = {
39
76
  21: "FTP",
@@ -114,9 +151,10 @@ SERVICE_MAP = {
114
151
  27018: "MongoDB",
115
152
  27019: "MongoDB",
116
153
  28017: "MongoDB",
117
- 32608: "Kubernetes",
154
+ 32608: "Kubernetes"
118
155
  }
119
156
 
157
+
120
158
  # Vulnerabilidades comuns por serviço
121
159
  VULNERABILITIES = {
122
160
  "SSH": ["CVE-2016-0777", "CVE-2016-0778", "CVE-2018-15473"],
@@ -144,15 +182,32 @@ class ServiceInfo:
144
182
  ssl: bool = False
145
183
  ssl_info: Optional[Dict[str, Any]] = None
146
184
  banner: Optional[str] = None
147
- vulns: List[str] = field(default_factory=list)
185
+ vulns: List[Dict[str, str]] = field(default_factory=list)
148
186
  cpe: Optional[str] = None
149
187
  extra: Dict[str, Any] = field(default_factory=dict)
188
+ confidence: float = 0.0 # Nível de confiança na identificação (0.0 a 1.0)
189
+ last_checked: Optional[datetime] = None
190
+
191
+ def to_dict(self) -> Dict[str, Any]:
192
+ """Converte o objeto para dicionário."""
193
+ return {
194
+ "name": self.name,
195
+ "version": self.version,
196
+ "ssl": self.ssl,
197
+ "ssl_info": self.ssl_info,
198
+ "banner": self.banner,
199
+ "vulns": self.vulns,
200
+ "cpe": self.cpe,
201
+ "confidence": self.confidence,
202
+ "last_checked": self.last_checked.isoformat() if self.last_checked else None
203
+ }
150
204
 
151
205
  @dataclass
152
206
  class PortScanResult:
153
207
  port: int
154
208
  protocol: str = "tcp"
155
209
  status: str = "open"
210
+ target: Optional[str] = None
156
211
  service: Optional[ServiceInfo] = None
157
212
  banner: Optional[str] = None
158
213
  timestamp: str = field(default_factory=lambda: datetime.utcnow().isoformat())
@@ -290,19 +345,37 @@ class PortScanner:
290
345
  )
291
346
 
292
347
  # Se chegou aqui, a porta está aberta
293
- result = PortScanResult(port=port, status="open")
348
+ result = PortScanResult(port=port, status="open", target=self.target)
294
349
 
295
350
  # Tenta obter o banner do serviço
296
351
  try:
297
352
  # Configura timeout para leitura
298
- read_timeout = max(0.5, self.timeout - 0.5)
353
+ read_timeout = max(1.0, self.timeout - 1.0)
354
+
355
+ # Envia uma requisição específica baseada no serviço comum da porta
356
+ banner_bytes = b""
357
+ if port in [80, 8080, 8000, 8008, 8081, 8443, 443]:
358
+ # HTTP/HTTPS - envia um HEAD / HTTP/1.0
359
+ writer.write(b"HEAD / HTTP/1.0\r\nHost: " + self.target.encode() + b"\r\n\r\n")
360
+ elif port == 21:
361
+ # FTP - envia um comando USER anonymous
362
+ writer.write(b"USER anonymous\r\n")
363
+ elif port == 22:
364
+ # SSH - apenas lê a versão do servidor
365
+ pass
366
+ elif port == 25 or port == 587 or port == 465:
367
+ # SMTP - envia EHLO
368
+ writer.write(b"EHLO moriarty-scanner\r\n")
369
+ elif port == 53:
370
+ # DNS - envia uma query DNS padrão
371
+ query = b'\x00\x01\x01\x00\x00\x01\x00\x00\x00\x00\x00\x01\x07version\x04bind\x00\x00\x10\x00\x03'
372
+ writer.write(query)
299
373
 
300
- # Lê o banner (se houver)
301
- writer.write(b"\r\n\r\n")
302
374
  await writer.drain()
303
375
 
304
376
  # Lê até 1024 bytes
305
377
  banner_bytes = await asyncio.wait_for(reader.read(1024), timeout=read_timeout)
378
+
306
379
  if banner_bytes:
307
380
  # Tenta decodificar como texto
308
381
  try:
@@ -316,6 +389,14 @@ class PortScanner:
316
389
  except UnicodeDecodeError:
317
390
  # Se não for texto, mostra como hexdump
318
391
  result.banner = banner_bytes.hex(' ', 1)
392
+ else:
393
+ # Se não recebeu banner, verifica se a porta é conhecida
394
+ if port in SERVICE_MAP:
395
+ result.service = ServiceInfo(name=SERVICE_MAP[port])
396
+ else:
397
+ # Se não recebeu resposta, marca como filtrada
398
+ result.status = "filtered"
399
+ return result
319
400
  except (asyncio.TimeoutError, ConnectionResetError, OSError):
320
401
  # Ignora erros de leitura do banner
321
402
  pass
@@ -337,10 +418,15 @@ class PortScanner:
337
418
  # Se não identificou o serviço, tenta pelo número da porta
338
419
  if not result.service and port in SERVICE_MAP:
339
420
  result.service = ServiceInfo(name=SERVICE_MAP[port])
421
+
422
+ # Se ainda não identificou o serviço e não recebeu banner, marca como filtrada
423
+ if not result.service and not result.banner:
424
+ result.status = "filtered"
425
+ return result
340
426
 
341
- # Verifica vulnerabilidades conhecidas
342
- if self.check_vulns:
343
- result.service.vulns = self._check_known_vulns(port, result.service.name)
427
+ # Verifica vulnerabilidades conhecidas para portas abertas
428
+ if result.status == "open" and self.check_vulns and result.service:
429
+ result.service.vulns = self._check_known_vulns(port, result.service.name)
344
430
 
345
431
  return result
346
432