A Modular Penetration Testing Framework

Overview

fsociety Python Version PyPi GitHub repo size PyPI - Downloads Docker Cloud build

A Modular Penetration Testing Framework

Packages Changelog

fsociety

cli

Install

pip install fsociety

Update

pip install --upgrade fsociety

Usage

usage: fsociety [-h] [-i] [-s]

A Penetration Testing Framework

optional arguments:
  -h, --help     show this help message and exit
  -i, --info     gets fsociety info
  -s, --suggest  suggest a tool

Develop

git clone https://github.com/fsociety-team/fsociety.git
pip install -e ".[dev]"

Docker

docker pull fsocietyteam/fsociety
docker run -it fsocietyteam/fsociety fsociety

License

License

Twitter Follow Twitter Follow

Comments
  • 'Text' object has no attribute 'stylize_all'

    'Text' object has no attribute 'stylize_all'

    Which Tool? A clear and concise description of what the bug is. information_gathering category

    What is the error? Stacktrace:

    'Text' object has no attribute 'stylize_all'
    ╭─────────────────────────────── Traceback (most recent call last) ────────────────────────────────╮
    │ /home/marcin/.local/lib/python3.8/site-packages/fsociety/cli.py:133 in mainloop                  │
    │                                                                                                  │
    │   130 │   │   return func()                                                                      │
    │   131 │   try:                                                                                   │
    │   132 │   │   func = items[selected_command].cli                                                 │
    │ ❱ 133 │   │   return func()                                                                      │
    │   134 │   except Exception as error:                                                             │
    │   135 │   │   console.print(str(error))                                                          │
    │   136 │   │   console.print_exception()                                                          │
    │                                                                                                  │
    │ /home/marcin/.local/lib/python3.8/site-packages/fsociety/information_gathering/cli.py:17 in cli  │
    │                                                                                                  │
    │   14                                                                                             │
    │   15                                                                                             │
    │   16 def cli():                                                                                  │
    │ ❱ 17 │   tools_cli(__name__, __tools__)                                                          │
    │                                                                                                  │
    │ /home/marcin/.local/lib/python3.8/site-packages/fsociety/core/menu.py:95 in tools_cli            │
    │                                                                                                  │
    │    92 │   │   args = [str(tool), tool.description]                                               │
    │    93 │   │   if links:                                                                          │
    │    94 │   │   │   text_link = Text(f"{tool.path}")                                               │
    │ ❱  95 │   │   │   text_link.stylize_all(                                                         │
    │    96 │   │   │   │   Style(link=f"https://github.com/{tool.path}"))                             │
    │    97 │   │   │   args.append(text_link)                                                         │
    │    98 │   │   table.add_row(*args)                                                               │
    ╰──────────────────────────────────────────────────────────────────────────────────────────────────╯
    AttributeError: 'Text' object has no attribute 'stylize_all'
    
    

    fsociety info Run fsociety --info in your terminal and copy the results here.

    # Config File
    
    version = 3.2.3
    agreement = true
    ssh_clone = false
    os = linux
    host_file = hosts.txt
    usernames_file = usernames.txt
    
    # Python Version
    3.8.4
    
    # Platform
    Linux-5.7.0-kali1-amd64-x86_64-with-glibc2.29
    
    bug 
    opened by MarcinK50 5
  • TaWP

    TaWP

    Link to Tool https://github.com/tomrichard3011/TaWP

    Why? I was inspired to create this tool from a scene in Mr. Robot. You may remember when Elliot uses a social engineering attack to get some personal information on someone and create a word list for that specific person. My tool does the same kind of thing. I understand my tool isn't very useful, but I thought I should submit it since both my tool and your framework have the same source of inspiration. Thank you for your time.

    P.S. If you have any suggestions or comments for my tool, feel free to let me know.

    tool stale 
    opened by tomrichard3011 4
  • bash: /usr/local/bin/fsociety: No such file or directory

    bash: /usr/local/bin/fsociety: No such file or directory

    pip install fsociety Defaulting to user installation because normal site-packages is not writeable Collecting fsociety Using cached fsociety-3.2.8-py2.py3-none-any.whl (26 kB) Requirement already satisfied: rich>=9.2.0 in /home/utkarsh/.local/lib/python3.10/site-packages (from fsociety) (12.6.0) Requirement already satisfied: distro>=1.7.0 in /usr/lib/python3/dist-packages (from fsociety) (1.7.0) Requirement already satisfied: requests>=2.23.0 in /usr/lib/python3/dist-packages (from fsociety) (2.25.1) Requirement already satisfied: GitPython>=3.1.3 in /home/utkarsh/.local/lib/python3.10/site-packages (from fsociety) (3.1.29) Requirement already satisfied: gitdb<5,>=4.0.1 in /home/utkarsh/.local/lib/python3.10/site-packages (from GitPython>=3.1.3->fsociety) (4.0.9) Requirement already satisfied: commonmark<0.10.0,>=0.9.0 in /home/utkarsh/.local/lib/python3.10/site-packages (from rich>=9.2.0->fsociety) (0.9.1) Requirement already satisfied: pygments<3.0.0,>=2.6.0 in /home/utkarsh/.local/lib/python3.10/site-packages (from rich>=9.2.0->fsociety) (2.13.0) Requirement already satisfied: smmap<6,>=3.0.1 in /home/utkarsh/.local/lib/python3.10/site-packages (from gitdb<5,>=4.0.1->GitPython>=3.1.3->fsociety) (5.0.0) Installing collected packages: fsociety Successfully installed fsociety-3.2.8

    opened by TrixCoder 2
  • Sherlock is not working (for me at least)

    Sherlock is not working (for me at least)

    Tool: Sherlock

    Description: It doesn't execute the command because of an error.

    Error: sherlock: error: unrecognized arguments: -r

    Log:

    fsociety ~/information_gathering/# sherlock
    
    Enter one or more usernames: Demo
    usage: sherlock [-h] [--version] [--verbose] [--folderoutput FOLDEROUTPUT]
                    [--output OUTPUT] [--tor] [--unique-tor] [--csv]
                    [--site SITE_NAME] [--proxy PROXY_URL] [--json JSON_FILE]
                    [--timeout TIMEOUT] [--print-all] [--print-found]
                    [--no-color] [--browse] [--local]
                    USERNAMES [USERNAMES ...]
    sherlock: error: unrecognized arguments: -r
    sherlock returned a non-zero exit code
    

    Fsociety information

    # Config File
    
    version = 3.2.5
    agreement = true
    ssh_clone = false
    os = linux
    host_file = hosts.txt
    usernames_file = usernames.txt
    
    # Python Version
    3.9.2
    
    # Platform
    Linux-5.10.0-kali7-amd64-x86_64-with-glibc2.31
    
    bug 
    opened by RobinRMC 2
  • chore(deps-dev): bump flake8 from 4.0.1 to 5.0.3

    chore(deps-dev): bump flake8 from 4.0.1 to 5.0.3

    Bumps flake8 from 4.0.1 to 5.0.3.

    Commits
    • ff6569b Release 5.0.3
    • e76b59a Merge pull request #1648 from PyCQA/invalid-syntax-partial-parse
    • 25e8ff1 ignore config files that partially parse as flake8 configs
    • 70c0b3d Release 5.0.2
    • 5e69ba9 Merge pull request #1642 from PyCQA/no-home
    • 8b51ee4 skip skipping home if home does not exist
    • 446b18d Merge pull request #1641 from PyCQA/entry-points-not-pickleable
    • b70d7a2 work around un-pickleabiliy of EntryPoint in 3.8.0
    • 91a7fa9 fix order of release notes
    • 405cfe0 Release 5.0.1
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • chore(deps-dev): bump flake8 from 4.0.1 to 5.0.1

    chore(deps-dev): bump flake8 from 4.0.1 to 5.0.1

    Bumps flake8 from 4.0.1 to 5.0.1.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • sherlock bug? I've updated as well

    sherlock bug? I've updated as well

    sherlock gives this error: 'python3' is not recognized as an internal or external command, operable program or batch file. sherlock returned a non-zero exit code Do you want to reinstall? (y/n):

    fsoc info: version = 3.2.6 agreement = true ssh_clone = false os = windows host_file = hosts.txt usernames_file = usernames.txt

    Python Version

    3.9.5

    Windows

    10

    bug 
    opened by PrometheusPy 1
  • chore(deps-dev): bump flake8-simplify from 0.14.2 to 0.14.5

    chore(deps-dev): bump flake8-simplify from 0.14.2 to 0.14.5

    Bumps flake8-simplify from 0.14.2 to 0.14.5.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Stand alone

    Stand alone

    Attempting to install fsociety onto a stand alone network that has no internet connectivity. Have downloaded all files on the GitHub, and attempted to modify the install.sh to install fsociety and it fails out. Any help welcome!!

    enhancement 
    opened by philsoma41 1
  • chore(deps-dev): bump pre-commit from 2.20.0 to 2.21.0

    chore(deps-dev): bump pre-commit from 2.20.0 to 2.21.0

    Bumps pre-commit from 2.20.0 to 2.21.0.

    Release notes

    Sourced from pre-commit's releases.

    pre-commit v2.21.0

    Features

    Fixes

    Changelog

    Sourced from pre-commit's changelog.

    2.21.0 - 2022-12-25

    Features

    Fixes

    Commits
    • 40c5bda v2.21.0
    • bb27ea3 Merge pull request #2642 from rkm/fix/dotnet-nuget-config
    • c38e0c7 dotnet: ignore nuget source during tool install
    • bce513f Merge pull request #2641 from rkm/fix/dotnet-tool-prefix
    • e904628 fix dotnet hooks with prefixes
    • d7b8b12 Merge pull request #2646 from pre-commit/pre-commit-ci-update-config
    • 94b6178 [pre-commit.ci] pre-commit autoupdate
    • b474a83 Merge pull request #2643 from pre-commit/pre-commit-ci-update-config
    • a179808 [pre-commit.ci] pre-commit autoupdate
    • 3aa6206 Merge pull request #2605 from lorenzwalthert/r/fix-exe
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • chore(deps-dev): bump isort from 5.11.3 to 5.11.4

    chore(deps-dev): bump isort from 5.11.3 to 5.11.4

    Bumps isort from 5.11.3 to 5.11.4.

    Release notes

    Sourced from isort's releases.

    5.11.4

    Changes

    :package: Dependencies

    Changelog

    Sourced from isort's changelog.

    5.11.4 December 21 2022

    Commits
    • 98390f5 Merge pull request #2059 from PyCQA/version/5.11.4
    • df69a05 Bump version 5.11.4
    • f9add58 Merge pull request #2058 from PyCQA/deps/poetry-1.3.1
    • 36caa91 Bump Poetry 1.3.1
    • 3c2e2d0 Merge pull request #1978 from mgorny/toml-test
    • 45d6abd Remove obsolete toml import from the test suite
    • 3020e0b Merge pull request #2057 from mgorny/poetry-install
    • a6fdbfd Stop installing documentation files to top-level site-packages
    • ff306f8 Fix tag template to match old standard
    • 227c4ae Merge pull request #2052 from hugovk/main
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 0
  • [Snyk] Security upgrade python from 3.11.0b5-alpine to 3.11-alpine

    [Snyk] Security upgrade python from 3.11.0b5-alpine to 3.11-alpine

    This PR was automatically created by Snyk using the credentials of a real user.


    Keeping your Docker base image up-to-date means you’ll benefit from security fixes in the latest version of your chosen image.

    Changes included in this PR

    • Dockerfile

    We recommend upgrading to python:3.11-alpine, as this image has only 0 known vulnerabilities. To do this, merge this pull request, then verify your application still works as expected.

    Some of the most important vulnerabilities in your base image include:

    | Severity | Priority Score / 1000 | Issue | Exploit Maturity | | :------: | :-------------------- | :---- | :--------------- | | critical severity | 500 | Use After Free
    SNYK-ALPINE316-EXPAT-3028183 | No Known Exploit |


    Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.

    For more information: 🧐 View latest project report

    🛠 Adjust project settings


    Learn how to fix vulnerabilities with free interactive lessons:

    🦉 Learn about vulnerability in an interactive lesson of Snyk Learn.

    stale 
    opened by thehappydinoa 1
Releases(v3.2.8)
  • v3.2.8(Sep 6, 2022)

    What's Changed

    • Update Dockerfile and Docs in https://github.com/fsociety-team/fsociety/pull/100

    Full Changelog: https://github.com/fsociety-team/fsociety/compare/v3.2.7...v3.2.8

    Source code(tar.gz)
    Source code(zip)
  • v3.2.7(May 1, 2022)

    What's Changed

    • [Snyk] Security upgrade python from 3-alpine to 3.11.0a5-alpine by @snyk-bot in https://github.com/fsociety-team/fsociety/pull/61
    • [Snyk] Security upgrade python from 3.11.0a5-alpine to 3.11.0a6-alpine by @snyk-bot in https://github.com/fsociety-team/fsociety/pull/72
    • [Snyk] Security upgrade python from 3.11.0a6-alpine to 3.11.0a7-alpine by @thehappydinoa in https://github.com/fsociety-team/fsociety/pull/73
    • feat: add traitor by @TobiTenno in https://github.com/fsociety-team/fsociety/pull/75

    Full Changelog: https://github.com/fsociety-team/fsociety/compare/v3.2.6...v3.2.7

    Source code(tar.gz)
    Source code(zip)
  • v3.2.6(Sep 29, 2021)

  • v3.2.4(Nov 13, 2020)

It's a simple script to generate a mush on code forces, the script will accept the public problem urls only or polygon problems.

Codeforces-Sheet-Generator It's a simple script to generate a mushup on code forces, the script will accept the public problem urls only or polygon pr

Ahmed Hossam 10 Aug 02, 2022
Command line driven CI frontend and development task automation tool.

tox automation project Command line driven CI frontend and development task automation tool At its core tox provides a convenient way to run arbitrary

tox development team 3.1k Jan 04, 2023
This repository contnains sample problems with test cases using Cormen-Lib

Cormen Lib Sample Problems Description This repository contnains sample problems with test cases using Cormen-Lib. These problems were made for the pu

Cormen Lib 3 Jun 30, 2022
A Django plugin for pytest.

Welcome to pytest-django! pytest-django allows you to test your Django project/applications with the pytest testing tool. Quick start / tutorial Chang

pytest-dev 1.1k Dec 31, 2022
Thin-wrapper around the mock package for easier use with pytest

pytest-mock This plugin provides a mocker fixture which is a thin-wrapper around the patching API provided by the mock package: import os class UnixF

pytest-dev 1.5k Jan 05, 2023
buX Course Enrollment Automation

buX automation BRACU - buX course enrollment automation Features: Automatically enroll into multiple courses at a time. Find courses just entering cou

Mohammad Shakib 1 Oct 06, 2022
Python Testing Crawler 🐍 🩺 🕷️ A crawler for automated functional testing of a web application

Python Testing Crawler 🐍 🩺 🕷️ A crawler for automated functional testing of a web application Crawling a server-side-rendered web application is a

70 Aug 07, 2022
Testing Calculations in Python, using OOP (Object-Oriented Programming)

Testing Calculations in Python, using OOP (Object-Oriented Programming) Create environment with venv python3 -m venv venv Activate environment . venv

William Koller 1 Nov 11, 2021
输入Google Hacking语句,自动调用Chrome浏览器爬取结果

Google-Hacking-Crawler 该脚本可输入Google Hacking语句,自动调用Chrome浏览器爬取结果 环境配置 python -m pip install -r requirements.txt 下载Chrome浏览器

Jarcis 4 Jun 21, 2022
User-oriented Web UI browser tests in Python

Selene - User-oriented Web UI browser tests in Python (Selenide port) Main features: User-oriented API for Selenium Webdriver (code like speak common

Iakiv Kramarenko 575 Jan 02, 2023
Data-Driven Tests for Python Unittest

DDT (Data-Driven Tests) allows you to multiply one test case by running it with different test data, and make it appear as multiple test cases. Instal

424 Nov 28, 2022
Language-agnostic HTTP API Testing Tool

Dredd — HTTP API Testing Framework Dredd is a language-agnostic command-line tool for validating API description document against backend implementati

Apiary 4k Jan 05, 2023
This repository contains a set of benchmarks of different implementations of Parquet (storage format) <-> Arrow (in-memory format).

Parquet benchmarks This repository contains a set of benchmarks of different implementations of Parquet (storage format) - Arrow (in-memory format).

11 Dec 21, 2022
A small automated test structure using python to test *.cpp codes

Get Started Insert C++ Codes Add Test Code Run Test Samples Check Coverages Insert C++ Codes you can easily add c++ files in /inputs directory there i

Alireza Zahiri 2 Aug 03, 2022
WIP SAT benchmarking tooling, written with only my personal use in mind.

SAT Benchmarking Some early work in progress tooling for running benchmarks and keeping track of the results when working on SAT solvers and related t

Jannis Harder 1 Dec 26, 2021
Mock smart contracts for writing Ethereum test suites

Mock smart contracts for writing Ethereum test suites This package contains comm

Trading Strategy 222 Jan 04, 2023
Pyramid debug toolbar

pyramid_debugtoolbar pyramid_debugtoolbar provides a debug toolbar useful while you're developing your Pyramid application. Note that pyramid_debugtoo

Pylons Project 95 Sep 17, 2022
Doggo Browser

Doggo Browser Quick Start $ python3 -m venv ./venv/ $ source ./venv/bin/activate $ pip3 install -r requirements.txt $ ./sobaki.py References Heavily I

Alexey Kutepov 9 Dec 12, 2022
Test scripts etc. for experimental rollup testing

rollup node experiments Test scripts etc. for experimental rollup testing. untested, work in progress python -m venv venv source venv/bin/activate #

Diederik Loerakker 14 Jan 25, 2022