Merge pull request #177860 from fabaff/routersploit

routersploit: init at unstable-2021-02-06

Changed files
+125
pkgs
development
python-modules
threat9-test-bed
tools
security
routersploit
top-level
+65
pkgs/development/python-modules/threat9-test-bed/default.nix
···
+
{ lib
+
, buildPythonPackage
+
, click
+
, faker
+
, fetchFromGitHub
+
, flask
+
, gunicorn
+
, pyopenssl
+
, pytestCheckHook
+
, pythonOlder
+
, setuptools-scm
+
, requests
+
}:
+
+
buildPythonPackage rec {
+
pname = "threat9-test-bed";
+
version = "0.6.0";
+
format = "setuptools";
+
+
disabled = pythonOlder "3.7";
+
+
src = fetchFromGitHub {
+
owner = "threat9";
+
repo = pname;
+
rev = "v${version}";
+
hash = "sha256-0YSjMf2gDdrvkDaT77iwfCkiDDXKHnZyI8d7JmBSuCg=";
+
};
+
+
SETUPTOOLS_SCM_PRETEND_VERSION = version;
+
+
nativeBuildInputs = [
+
setuptools-scm
+
];
+
+
propagatedBuildInputs = [
+
click
+
faker
+
flask
+
gunicorn
+
pyopenssl
+
requests
+
];
+
+
checkInputs = [
+
pytestCheckHook
+
];
+
+
pythonImportsCheck = [
+
"threat9_test_bed"
+
];
+
+
disabledTests = [
+
# Assertion issue with the response codes
+
"test_http_service_mock"
+
"tests_http_service_mock"
+
"test_http_service_mock_random_port"
+
];
+
+
meta = with lib; {
+
description = "Module for adding unittests.mock as view functions";
+
homepage = "https://github.com/threat9/threat9-test-bed";
+
license = licenses.bsd3;
+
maintainers = with maintainers; [ fab ];
+
};
+
}
+56
pkgs/tools/security/routersploit/default.nix
···
+
{ lib
+
, fetchFromGitHub
+
, python3
+
}:
+
+
python3.pkgs.buildPythonApplication rec {
+
pname = "routersploit";
+
version = "unstable-2021-02-06";
+
format = "setuptools";
+
+
src = fetchFromGitHub {
+
owner = "threat9";
+
repo = pname;
+
rev = "3fd394637f5566c4cf6369eecae08c4d27f93cda";
+
hash = "sha256-IET0vL0VVP9ZNn75hKdTCiEmOZRHHYICykhzW2g3LEg=";
+
};
+
+
propagatedBuildInputs = with python3.pkgs; [
+
future
+
paramiko
+
pycryptodome
+
pysnmp
+
requests
+
setuptools
+
];
+
+
checkInputs = with python3.pkgs; [
+
pytest-xdist
+
pytestCheckHook
+
threat9-test-bed
+
];
+
+
postInstall = ''
+
mv $out/bin/rsf.py $out/bin/rsf
+
'';
+
+
pythonImportsCheck = [
+
"routersploit"
+
];
+
+
pytestFlagsArray = [
+
"-n"
+
"$NIX_BUILD_CORES"
+
# Run the same tests as upstream does in the first round
+
"tests/core/"
+
"tests/test_exploit_scenarios.py"
+
"tests/test_module_info.py"
+
];
+
+
meta = with lib; {
+
description = "Exploitation Framework for Embedded Devices";
+
homepage = "https://github.com/threat9/routersploit";
+
license = with licenses; [ bsd3 ];
+
maintainers = with maintainers; [ fab ];
+
};
+
}
+2
pkgs/top-level/all-packages.nix
···
roundcubePlugins = dontRecurseIntoAttrs (callPackage ../servers/roundcube/plugins { });
+
routersploit = callPackage ../tools/security/routersploit { };
+
routinator = callPackage ../servers/routinator {
inherit (darwin.apple_sdk.frameworks) Security;
};
+2
pkgs/top-level/python-packages.nix
···
threadpoolctl = callPackage ../development/python-modules/threadpoolctl { };
+
threat9-test-bed = callPackage ../development/python-modules/threat9-test-bed { };
+
three-merge = callPackage ../development/python-modules/three-merge { };
thrift = callPackage ../development/python-modules/thrift { };