Compare commits
24 commits
Author | SHA1 | Date | |
---|---|---|---|
xfnw | 8ee4519c34 | ||
xfnw | 99b8613d40 | ||
vulpine | 9d1ded2579 | ||
vulpine | 6f2e2c805f | ||
xfnw | a390f2e279 | ||
vulpine | 1410cee2b2 | ||
xfnw | a8d3faea4f | ||
xfnw | ee5f457c2f | ||
xfnw | b1f3cb0754 | ||
xfnw | 43726b8524 | ||
xfnw | d1050c7b98 | ||
xfnw | 8009d01ab3 | ||
xfnw | 7f0c6ab8cc | ||
xfnw | 64ad87822b | ||
xfnw | aa8683f68d | ||
xfnw | b61201ad48 | ||
xfnw | 9d5dbdecb3 | ||
xfnw | 024a0e5b66 | ||
xfnw | 514b871cb4 | ||
xfnw | e6d057a6fb | ||
xfnw | 9be7503e94 | ||
xfnw | 3160b6504f | ||
owen | 4829ce4c43 | ||
owen | 31d66e51c1 |
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -3,4 +3,5 @@
|
|||
|
||||
result
|
||||
result/*
|
||||
Gemfile.lock
|
||||
|
||||
|
|
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
[submodule "nur-packages"]
|
||||
path = nur-packages
|
||||
url = https://github.com/makefu/nur-packages
|
24
LICENSE
Normal file
24
LICENSE
Normal file
|
@ -0,0 +1,24 @@
|
|||
This is free and unencumbered software released into the public domain.
|
||||
|
||||
Anyone is free to copy, modify, publish, use, compile, sell, or
|
||||
distribute this software, either in source code form or as a compiled
|
||||
binary, for any purpose, commercial or non-commercial, and by any
|
||||
means.
|
||||
|
||||
In jurisdictions that recognize copyright laws, the author or authors
|
||||
of this software dedicate any and all copyright interest in the
|
||||
software to the public domain. We make this dedication for the benefit
|
||||
of the public at large and to the detriment of our heirs and
|
||||
successors. We intend this dedication to be an overt act of
|
||||
relinquishment in perpetuity of all present and future rights to this
|
||||
software under copyright law.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
||||
IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
||||
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
For more information, please refer to <http://unlicense.org/>
|
101
blix.nix
101
blix.nix
|
@ -42,8 +42,7 @@ with lib;
|
|||
isNormalUser = true;
|
||||
extraGroups = [ "wheel" "networkmanager" "video" "libvirt" "docker" ];
|
||||
|
||||
openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1N
|
||||
TE5AAAAIDBUk5IjB3+trnVO6pncivFbOetUL8BPTl3CwAtk4532 xfnw@raven" ];
|
||||
openssh.authorizedKeys.keys = [ "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDBUk5IjB3+trnVO6pncivFbOetUL8BPTl3CwAtk4532 xfnw@raven" ];
|
||||
};
|
||||
security.sudo.wheelNeedsPassword = false;
|
||||
|
||||
|
@ -56,52 +55,118 @@ TE5AAAAIDBUk5IjB3+trnVO6pncivFbOetUL8BPTl3CwAtk4532 xfnw@raven" ];
|
|||
|
||||
nixpkgs.config.allowUnfree = true;
|
||||
environment.systemPackages = with pkgs; [
|
||||
(callPackage ./manuals.nix { })
|
||||
|
||||
wget vim tmux gnupg ncdu mosh
|
||||
git curl rsync wireguard-tools
|
||||
w3m lynx elinks ungoogled-chromium
|
||||
inetutils dnsutils whois
|
||||
inetutils dnsutils dnsx whois jo jq
|
||||
|
||||
# network analysis
|
||||
nmap masscan wireshark termshark netsniff-ng argus bettercap
|
||||
stress-ng multimon-ng aircrack-ng mfcuk pixiewps
|
||||
hcxtools dirb sslsplit whsniff sniffglue pwnat
|
||||
subfinder zap
|
||||
gnirehtet # reverse android tethering
|
||||
nmap masscan wireshark wireshark-qt termshark netsniff-ng argus
|
||||
bettercap stress-ng multimon-ng aircrack-ng mfcuk pixiewps nuclei
|
||||
hcxtools dirb sslsplit whsniff sniffglue pwnat cutecom minicom
|
||||
subfinder zap hping proxychains minimodem macchanger testssl
|
||||
gnirehtet whatweb # cadaver
|
||||
|
||||
# research
|
||||
theharvester tor
|
||||
|
||||
# disk analysis
|
||||
testdisk squashfs-tools-ng ddrescue volatility
|
||||
testdisk squashfs-tools-ng ddrescue yara yarGen yallback
|
||||
stegseek apktool adbfs-rootless ursadb android-udev-rules
|
||||
valgrind dos2unix file exiftool foremost pngcheck
|
||||
docker xcd
|
||||
valgrind dos2unix file exiftool foremost pngcheck ccrypt
|
||||
docker xcd trufflehog sleuthkit radare2 radare2-cutter
|
||||
clamav spyre snowman jadx ghidra # volatility
|
||||
|
||||
# exploit
|
||||
doona metasploit twa wifite2 burpsuite wpscan wfuzz
|
||||
sqlmap thc-hydra (callPackage ./pkgs/routersploit.nix { })
|
||||
#dsniff
|
||||
dsniff (callPackage ./pkgs/beef { }) dnschef
|
||||
|
||||
# crack
|
||||
hashcat mfoc pyrit john crunch diceware crowbar
|
||||
cowpatty bully deepsea reaverwps amass medusa
|
||||
hashcat mfoc john crunch diceware crowbar # pyrit
|
||||
cowpatty bully deepsea reaverwps amass medusa nasty
|
||||
(callPackage ./pkgs/cupp.nix { })
|
||||
|
||||
# security scan
|
||||
lynis chkrootkit
|
||||
lynis chkrootkit aflplusplus
|
||||
|
||||
# development
|
||||
arduino python3Packages.pip ino
|
||||
arduino python3Packages.pip # ino
|
||||
|
||||
# python3 packages
|
||||
python3 python3Packages.bluepy python3Packages.future
|
||||
python3Packages.requests python3Packages.paramiko python3Packages.pysnmp
|
||||
python3Packages.pycryptodome python3Packages.setuptools
|
||||
python3Packages.binwalk
|
||||
python3Packages.binwalk python3Packages.sqlmap
|
||||
|
||||
# disclosure
|
||||
catgirl
|
||||
catgirl tmate
|
||||
];
|
||||
|
||||
environment.etc = {
|
||||
"tmux.conf" = {
|
||||
text = ''
|
||||
set-option -g default-terminal "tmux-256color"
|
||||
set-option -g history-limit 20000
|
||||
set-option -g focus-events on
|
||||
set-option -g xterm-keys on
|
||||
set-option -g set-titles on
|
||||
set-option -g set-titles-string "tmux - #T"
|
||||
set-option -g escape-time 25
|
||||
set-option -g status-left-style "fg=colour10"
|
||||
set-option -g status-right-style "fg=colour10"
|
||||
set-option -g status-style "bg=default,fg=colour10"
|
||||
set-option -g pane-active-border-style "bg=default,fg=colour10"
|
||||
set-option -g window-status-activity-style "bg=default,fg=colour235,bold,reverse"
|
||||
set-option -g window-status-bell-style "bg=default,fg=white,bold,reverse"
|
||||
set-option -g window-status-current-style "bg=default,fg=colour10,bold,reverse"
|
||||
set-option -g window-status-style "bg=default,fg=colour10"
|
||||
set-option -g status on
|
||||
set-option -g status-interval 5
|
||||
set-option -g status-position top
|
||||
set-option -g status-justify left
|
||||
set-option -g window-status-format " #I #W "
|
||||
set-option -g window-status-separator ""
|
||||
set-option -g window-status-current-format " #I #W "
|
||||
set-option -g status-left ""
|
||||
set-option -g status-right "#h %I:%M %p"
|
||||
set-option -g status-left-length 0
|
||||
set-option -g monitor-activity on
|
||||
set-option -g visual-activity on
|
||||
set-option -g renumber-windows on
|
||||
set-option -g focus-events on
|
||||
bind N swap-window -t +1 -d
|
||||
bind P swap-window -t -1 -d
|
||||
bind S-Left swap-pane -s '{left-of}'
|
||||
bind S-Right swap-pane -s '{right-of}'
|
||||
bind S-Up swap-pane -s '{up-of}'
|
||||
bind S-Down swap-pane -s '{down-of}'
|
||||
'';
|
||||
};
|
||||
"vimrc" = {
|
||||
text = ''
|
||||
set number
|
||||
set relativenumber
|
||||
syntax on
|
||||
color pablo
|
||||
set nocompatible
|
||||
filetype plugin indent on
|
||||
set showcmd
|
||||
set showmatch
|
||||
set ignorecase
|
||||
set smartcase
|
||||
set incsearch
|
||||
set autowrite
|
||||
set hidden
|
||||
set mouse=a
|
||||
set textwidth=60
|
||||
set formatoptions-=t
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
environment.variables.GC_INITIAL_HEAP_SIZE = "1M";
|
||||
boot.kernel.sysctl."vm.overcommit_memory" = "1";
|
||||
boot.consoleLogLevel = 7;
|
||||
|
|
12
manuals.nix
Normal file
12
manuals.nix
Normal file
|
@ -0,0 +1,12 @@
|
|||
{ stdenv, man }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "blix-manuals";
|
||||
src = ./manuals;
|
||||
|
||||
buildInputs = [ man ];
|
||||
|
||||
installPhase = ''
|
||||
install -D * -t $out/share/man/man7/
|
||||
'';
|
||||
}
|
240
manuals/blix-applications.7
Normal file
240
manuals/blix-applications.7
Normal file
|
@ -0,0 +1,240 @@
|
|||
.Dd June 11, 2021
|
||||
.Dt blix-applications 7
|
||||
.Os
|
||||
.
|
||||
.Sh NAME
|
||||
.Nm blix-applications
|
||||
.Nd list of preinstalled blix applications
|
||||
.
|
||||
.Sh DESCRIPTION
|
||||
.Nm
|
||||
includes some
|
||||
.Ql base
|
||||
packages not described in this document, including
|
||||
.Bd -literal -offset indent
|
||||
wget vim tmux gnupg ncdu mosh
|
||||
git curl rsync wireguard-tools
|
||||
w3m lynx elinks ungoogled-chromium
|
||||
inetutils dnsutils dnsx whois
|
||||
.Ed
|
||||
.
|
||||
.Pp
|
||||
the
|
||||
.Ql manuals
|
||||
psudopackage contains this manual and various
|
||||
.Xr blix 7
|
||||
documentation.
|
||||
.
|
||||
.Ss Network Analysis
|
||||
.Bl -tag -width Ds
|
||||
.It nmap
|
||||
portscanning, can check if hosts are up and has various software detection
|
||||
.It masscan
|
||||
portscan massive subnets quickly
|
||||
.It wireshark
|
||||
capture packets and inspect them
|
||||
.It termshark
|
||||
similar to
|
||||
.Cm wireshark ,
|
||||
however works in a terminal
|
||||
.It netsniff-ng
|
||||
network analizer toolkit
|
||||
.It argus
|
||||
audit network packets and look at activity
|
||||
.It bettercap
|
||||
man in the middle tool
|
||||
.It stress-ng
|
||||
stress test a computer system
|
||||
.It multimon-ng
|
||||
digital baseband audio protocol decoder
|
||||
.It aircrack-ng
|
||||
wireless encryption cracking toolkit
|
||||
.It mfcuk
|
||||
NFC cracking toolkit
|
||||
.It pixiewps
|
||||
offline WPS bruteforcer
|
||||
.It nuclei
|
||||
fast vulnerabily scanner
|
||||
.It hcxtools
|
||||
capture wlan traffic and convert to
|
||||
.Cm hashcat
|
||||
and
|
||||
.Cm john
|
||||
compatable formats
|
||||
.It dirb
|
||||
web content scanner
|
||||
.It sslsplit
|
||||
transparent ssl/tls interception
|
||||
.It whsniff
|
||||
packet sniffer for 802.15.4 wireless networks
|
||||
.It sniffglue
|
||||
multithreaded packet sniffer
|
||||
.It pwnat
|
||||
ICMP NAT to NAT client-server communication
|
||||
.It subfinder
|
||||
find subdomains
|
||||
.It zap
|
||||
web penetration testing
|
||||
.It hping
|
||||
craft packets and possibly flood them
|
||||
.It proxychains
|
||||
chain some proxies
|
||||
.It minimodem
|
||||
brrr, time for some dialup
|
||||
.It gnirehtet
|
||||
reverse android tethering
|
||||
.It whatweb
|
||||
fingerprint http services
|
||||
.El
|
||||
.
|
||||
.Ss Research
|
||||
.Bl -tag -width Ds
|
||||
.It theharvester
|
||||
gather information from public sources
|
||||
.It tor
|
||||
anonymize your traffic
|
||||
.El
|
||||
.
|
||||
.Ss Disk Analysis
|
||||
.Bl -tag -width Ds
|
||||
.It testdisk
|
||||
recover deleted innodes, recover data
|
||||
.It squashfs-tools-ng
|
||||
manipulate a squashfs
|
||||
.It ddrescue
|
||||
copy data from dying disk
|
||||
.It yara
|
||||
identify and classify malware
|
||||
.It spyre
|
||||
IOC scanner
|
||||
.It snowman
|
||||
C/C++ decompiler
|
||||
.\".It volatility
|
||||
.\"memory forsenics framework
|
||||
.It stegseek
|
||||
seek for stegnografy in images
|
||||
.It apktool
|
||||
inspect apk files
|
||||
.It jadx
|
||||
decompile dex (the stuff in apks) files to java
|
||||
.It adbfs-rootless
|
||||
mount android phones on linux
|
||||
.It ghidra
|
||||
reverse engineering suite made by the NSA
|
||||
.It ursadb
|
||||
database for indexing malware
|
||||
.It android-udev-rules
|
||||
usb stuff for android
|
||||
.It valgrind
|
||||
framework for building analysis tools
|
||||
.It dos2unix
|
||||
convert those pesky line endings
|
||||
.It file
|
||||
inspect file metadata
|
||||
.It exiftool
|
||||
look at exif image metadata
|
||||
.It foremost
|
||||
recover files based on their contents
|
||||
.It pngcheck
|
||||
check if png is really an image
|
||||
.It docker
|
||||
run containers and stuff
|
||||
.It xcd
|
||||
lovely hexdump utility
|
||||
.It trufflehog
|
||||
search through git histories
|
||||
.It sleuthkit
|
||||
a collection of digital forensics tools
|
||||
.It clamav
|
||||
antivirus engine
|
||||
.El
|
||||
.
|
||||
.Ss Exploits
|
||||
.Bl -tag -width Ds
|
||||
.It doona
|
||||
bruteforce exploit detector
|
||||
.It metasploit
|
||||
big database of known exploits
|
||||
.It twa
|
||||
tiny web auditor
|
||||
.It wifite2
|
||||
wireless network auditor
|
||||
.It burpsuite
|
||||
security testing of web applications
|
||||
.It wpscan
|
||||
wordpress vulnerability scanner
|
||||
.It wfuzz
|
||||
web content fuzzer
|
||||
.It sqlmap
|
||||
automatic sql injection and database takeover
|
||||
.It thc-hydra
|
||||
fast network login cracker
|
||||
.It routersploit
|
||||
test for common router vulnerabilities. needs to be run in a
|
||||
.Cm nix-shell -p
|
||||
.It dsniff
|
||||
network auditing and penetration testing
|
||||
.It dnschef
|
||||
DNS proxy for penetration testing
|
||||
.El
|
||||
.
|
||||
.Ss Crackers
|
||||
.Bl -tag -width Ds
|
||||
.It john
|
||||
john the ripper, very nice hash cracker
|
||||
.It hashcat
|
||||
another hash cracker
|
||||
.It mfoc
|
||||
mifare classic offline cracker
|
||||
.\".It pyrit
|
||||
.\"gpu WPA/WPA2 hash cracker
|
||||
.It crunch
|
||||
generate wordlists
|
||||
.It diceware
|
||||
generate passwords using wordlists
|
||||
.It crowbar
|
||||
bruteforcing tool
|
||||
.It cowpatty
|
||||
offline dictionary attack against WPA/WPA2
|
||||
.It bully
|
||||
retreive WPA/WPA2 passphrase from WPS
|
||||
.It deepsea
|
||||
phishing tool
|
||||
.It reaverwps
|
||||
bruteforce wifi
|
||||
.It amass
|
||||
dns enumeration and network mapping
|
||||
.It medusa
|
||||
speedy login bruteforcer
|
||||
.It cupp.py
|
||||
Common User Password Profiler
|
||||
.El
|
||||
.
|
||||
.Ss Security Scan
|
||||
.Bl -tag -width Ds
|
||||
.It lynis
|
||||
scan your computer for vulnerabilities and hardening tips
|
||||
.It chkrootkit
|
||||
search for rootkits
|
||||
.El
|
||||
.
|
||||
.Ss Development
|
||||
.Bl -tag -width Ds
|
||||
.It arudino
|
||||
arduino ide
|
||||
.It python3Packages.pip
|
||||
install python packages from pypi
|
||||
.\".It ino
|
||||
.\"command line arduino toolkit
|
||||
.El
|
||||
.
|
||||
.Ss Disclosure
|
||||
.Bl -tag -width Ds
|
||||
.It catgirl
|
||||
lovely irc client
|
||||
.It tmate
|
||||
terminal screen sharing
|
||||
.El
|
||||
.
|
||||
.Sh AUTHORS
|
||||
.An xfnw Aq Mt xfnw@riseup.net
|
13
manuals/blix.7
Normal file
13
manuals/blix.7
Normal file
|
@ -0,0 +1,13 @@
|
|||
.Dd June 11, 2021
|
||||
.Dt blix 7
|
||||
.Os
|
||||
.
|
||||
.Sh NAME
|
||||
.Nm blix
|
||||
.Nd nixos-based pentesting distro
|
||||
.
|
||||
.Sh SEE ALSO
|
||||
.Xr blix-applications 7
|
||||
.
|
||||
.Sh AUTHORS
|
||||
.An xfnw Aq Mt xfnw@riseup.net
|
1
nur-packages
Submodule
1
nur-packages
Submodule
|
@ -0,0 +1 @@
|
|||
Subproject commit 272cf1ad3b3da0e30b5435f2425f39bed616b080
|
105
pkgs/beef/Gemfile
Normal file
105
pkgs/beef/Gemfile
Normal file
|
@ -0,0 +1,105 @@
|
|||
# BeEF's Gemfile
|
||||
|
||||
#
|
||||
# Copyright (c) 2006-2018 Wade Alcorn - wade@bindshell.net
|
||||
# Browser Exploitation Framework (BeEF) - http://beefproject.com
|
||||
# See the file 'doc/COPYING' for copying permission
|
||||
#
|
||||
|
||||
gem 'eventmachine'
|
||||
gem 'thin'
|
||||
gem 'sinatra', '~> 2.0'
|
||||
gem 'rack', '~> 2.0'
|
||||
gem 'rack-protection', '~> 2.0'
|
||||
gem 'em-websocket' # WebSocket support
|
||||
gem 'uglifier'
|
||||
gem 'mime-types'
|
||||
gem 'execjs'
|
||||
gem 'ansi'
|
||||
gem 'term-ansicolor', :require => 'term/ansicolor'
|
||||
gem 'dm-core'
|
||||
gem 'json'
|
||||
gem 'data_objects'
|
||||
gem 'rubyzip', '>= 1.2.1'
|
||||
gem 'espeak-ruby', '>= 1.0.4' # Text-to-Voice
|
||||
gem 'nokogiri', '>= 1.7'
|
||||
gem 'rake'
|
||||
|
||||
# SQLite support
|
||||
group :sqlite do
|
||||
gem 'dm-sqlite-adapter'
|
||||
end
|
||||
|
||||
# PostgreSQL support
|
||||
group :postgres do
|
||||
#gem dm-postgres-adapter
|
||||
end
|
||||
|
||||
# MySQL support
|
||||
group :mysql do
|
||||
#gem dm-mysql-adapter
|
||||
end
|
||||
|
||||
# Geolocation support
|
||||
group :geoip do
|
||||
gem 'geoip'
|
||||
end
|
||||
|
||||
gem 'parseconfig'
|
||||
gem 'erubis'
|
||||
gem 'dm-migrations'
|
||||
|
||||
# Metasploit Integration extension
|
||||
group :ext_msf do
|
||||
gem 'msfrpc-client'
|
||||
gem 'xmlrpc'
|
||||
end
|
||||
|
||||
# Notifications extension
|
||||
group :ext_notifications do
|
||||
# Pushover
|
||||
gem 'rushover'
|
||||
# Slack
|
||||
gem 'slack-notifier'
|
||||
# Twitter
|
||||
gem 'twitter', '>= 5.0.0'
|
||||
end
|
||||
|
||||
# DNS extension
|
||||
group :ext_dns do
|
||||
gem 'rubydns', '~> 0.7.3'
|
||||
end
|
||||
|
||||
# network extension
|
||||
group :ext_network do
|
||||
gem 'dm-serializer'
|
||||
end
|
||||
|
||||
# QRcode extension
|
||||
group :ext_qrcode do
|
||||
gem 'qr4r'
|
||||
end
|
||||
|
||||
# For running unit tests
|
||||
group :test do
|
||||
if ENV['BEEF_TEST']
|
||||
gem 'test-unit'
|
||||
gem 'test-unit-full'
|
||||
gem 'rspec'
|
||||
# curb gem requires curl libraries
|
||||
# sudo apt-get install libcurl4-openssl-dev
|
||||
gem 'curb'
|
||||
# selenium-webdriver 3.x is incompatible with Firefox version 48 and prior
|
||||
gem 'selenium'
|
||||
gem 'selenium-webdriver', '~> 2.53.4'
|
||||
# nokogirl is needed by capybara which may require one of the below commands
|
||||
# sudo apt-get install libxslt-dev libxml2-dev
|
||||
# sudo port install libxml2 libxslt
|
||||
gem 'capybara'
|
||||
# RESTful API tests/generic command module tests
|
||||
gem 'rest-client', '>= 2.0.1'
|
||||
gem 'byebug'
|
||||
end
|
||||
end
|
||||
|
||||
source 'https://rubygems.org'
|
39
pkgs/beef/db-in-homedir.patch
Normal file
39
pkgs/beef/db-in-homedir.patch
Normal file
|
@ -0,0 +1,39 @@
|
|||
--- /beef 2018-08-16 19:03:55.199437566 +0200
|
||||
+++ /beef 2018-08-16 19:27:34.735985233 +0200
|
||||
@@ -110,9 +110,20 @@
|
||||
#
|
||||
# @note Database setup - use DataMapper::Logger.new($stdout, :debug) for development debugging
|
||||
#
|
||||
+
|
||||
+#
|
||||
+# @note Create ~/.beef/
|
||||
+#
|
||||
+begin
|
||||
+ FileUtils.mkdir_p($home_dir) unless File.directory?($home_dir)
|
||||
+rescue => e
|
||||
+ print_error "Could not create '#{$home_dir}': #{e.message}"
|
||||
+end
|
||||
+
|
||||
case config.get("beef.database.driver")
|
||||
when "sqlite"
|
||||
- DataMapper.setup(:default, "sqlite3://#{$root_dir}/#{config.get("beef.database.db_file")}")
|
||||
+ print_info "Using Database #{$home_dir}/#{config.get("beef.database.db_file")}"
|
||||
+ DataMapper.setup(:default, "sqlite3://#{$home_dir}/#{config.get("beef.database.db_file")}")
|
||||
when "mysql", "postgres"
|
||||
DataMapper.setup(:default,
|
||||
:adapter => config.get("beef.database.driver"),
|
||||
@@ -162,14 +173,6 @@
|
||||
BeEF::Core::Console::Banners.print_network_interfaces_count
|
||||
BeEF::Core::Console::Banners.print_network_interfaces_routes
|
||||
|
||||
-#
|
||||
-# @note Create ~/.beef/
|
||||
-#
|
||||
-begin
|
||||
- FileUtils.mkdir_p($home_dir) unless File.directory?($home_dir)
|
||||
-rescue => e
|
||||
- print_error "Could not create '#{$home_dir}': #{e.message}"
|
||||
-end
|
||||
|
||||
#
|
||||
# @note Check whether we load the Console Shell or not
|
45
pkgs/beef/default.nix
Normal file
45
pkgs/beef/default.nix
Normal file
|
@ -0,0 +1,45 @@
|
|||
{ pkgs, stdenv, bundlerEnv, ruby, fetchFromGitHub, nodejs }:
|
||||
# nix-shell --command "bundler install && bundix" in the clone, copy gemset.nix, Gemfile and Gemfile.lock
|
||||
let
|
||||
gems = bundlerEnv {
|
||||
name = "beef-env";
|
||||
inherit ruby;
|
||||
gemdir = ./.;
|
||||
};
|
||||
in stdenv.mkDerivation {
|
||||
name = "beef-2018-09-21";
|
||||
src = fetchFromGitHub {
|
||||
owner = "beefproject";
|
||||
repo = "beef";
|
||||
rev = "d237c95";
|
||||
sha256 = "1mykbjwjcbd2a18wycaf35hi3b9rmvqz1jnk2v55sd4c39f0jpf2";
|
||||
};
|
||||
prePatch = ''
|
||||
ls -alhtr
|
||||
'';
|
||||
patches = [ ./db-in-homedir.patch ];
|
||||
buildInputs = [gems pkgs.rubyPackages.nokogiri ruby];
|
||||
installPhase = ''
|
||||
mkdir -p $out/{bin,share/beef}
|
||||
|
||||
cp -r * $out/share/beef
|
||||
# set the default db path, unfortunately setting to /tmp does not seem to work
|
||||
# sed -i 's#db_file: .*#db_file: "/tmp/beef.db"#' $out/share/beef/config.yaml
|
||||
|
||||
bin=$out/bin/beef
|
||||
cat > $bin <<EOF
|
||||
#!/bin/sh -e
|
||||
PATH=$PATH:${nodejs}/bin/
|
||||
exec ${gems}/bin/bundle exec ${ruby}/bin/ruby $out/share/beef/beef "\$@"
|
||||
EOF
|
||||
chmod +x $bin
|
||||
'';
|
||||
|
||||
#meta = with stdenv.lib; {
|
||||
# homepage = https://beefproject.com/;
|
||||
# description = "The Browser Exploitation Framework";
|
||||
# platforms = platforms.linux;
|
||||
# maintainers = with maintainers; [ makefu ];
|
||||
#};
|
||||
|
||||
}
|
608
pkgs/beef/gemset.nix
Normal file
608
pkgs/beef/gemset.nix
Normal file
|
@ -0,0 +1,608 @@
|
|||
{
|
||||
addressable = {
|
||||
dependencies = ["public_suffix"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0viqszpkggqi8hq87pqp0xykhvz60g99nwmkwsb0v45kc2liwxvk";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.5.2";
|
||||
};
|
||||
ansi = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "14ims9zfal4gs2wpx2m5rd8zsrl2k794d359shkrsgg3fhr2a22l";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.5.0";
|
||||
};
|
||||
buftok = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1rzsy1vy50v55x9z0nivf23y0r9jkmq6i130xa75pq9i8qrn1mxs";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.2.0";
|
||||
};
|
||||
chunky_png = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "05g2xli9wbjylkmblln3bhvjalziwb92q452q8ibjagmb853424w";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.3.10";
|
||||
};
|
||||
daemons = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0lxqq6dgb8xhliywar2lvkwqy2ssraf9dk4b501pb4ixc2mvxbp2";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.2.6";
|
||||
};
|
||||
data_objects = {
|
||||
dependencies = ["addressable"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "19fw1ckqc5f1wc4r72qrymy2k6cmd8azbxpn61ksbsjqhzc2bgqd";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.10.17";
|
||||
};
|
||||
dm-core = {
|
||||
dependencies = ["addressable"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "09x67ka6f1lxh4iwrg87iama0haq0d0z35gavvnvzpx9kn9pfbnw";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.2.1";
|
||||
};
|
||||
dm-do-adapter = {
|
||||
dependencies = ["data_objects" "dm-core"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1v84lsmsq8kawl8k4qz2h87xqc1sr10c08wwasrxbcgrkvp7qk4q";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.2.0";
|
||||
};
|
||||
dm-migrations = {
|
||||
dependencies = ["dm-core"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "04hr8qgm4j1z5fg0cfpr8r6apvk5xykad0d0xqfg48rjv5rdwc0i";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.2.0";
|
||||
};
|
||||
dm-serializer = {
|
||||
dependencies = ["dm-core" "fastercsv" "json" "json_pure" "multi_json"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0mvpb2d4cniysw45d3c9xidjpdb3wmfl7x5lgvnsfm69wq24v5y4";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.2.2";
|
||||
};
|
||||
dm-sqlite-adapter = {
|
||||
dependencies = ["dm-do-adapter" "do_sqlite3"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0mq9xrw4jwb753sy8902rq9sfv62mzss2n3875g51i9acqy475hc";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.2.0";
|
||||
};
|
||||
do_sqlite3 = {
|
||||
dependencies = ["data_objects"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0gxz54qjgwg6a2mkqpai28m0i5swbyxpr4qmh9x1nwf20lysrgcf";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.10.17";
|
||||
};
|
||||
domain_name = {
|
||||
dependencies = ["unf"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0abdlwb64ns7ssmiqhdwgl27ly40x2l27l8hs8hn0z4kb3zd2x3v";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.5.20180417";
|
||||
};
|
||||
em-websocket = {
|
||||
dependencies = ["eventmachine" "http_parser.rb"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1bsw8vjz0z267j40nhbmrvfz7dvacq4p0pagvyp17jif6mj6v7n3";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.5.1";
|
||||
};
|
||||
equalizer = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1kjmx3fygx8njxfrwcmn7clfhjhb6bvv3scy2lyyi0wqyi3brra4";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.0.11";
|
||||
};
|
||||
erubis = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1fj827xqjs91yqsydf0zmfyw9p4l2jz5yikg3mppz6d7fi8kyrb3";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.7.0";
|
||||
};
|
||||
espeak-ruby = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0d658zr53jibyrs5qnic7bfl6h69k5987s8asncsbnxwbzzilj6y";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.4";
|
||||
};
|
||||
eventmachine = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "17jr1caa3ggg696dd02g2zqzdjqj9x9q2nl7va82l36f7c5v6k4z";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.9.1";
|
||||
};
|
||||
execjs = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1yz55sf2nd3l666ms6xr18sm2aggcvmb8qr3v53lr4rir32y1yp1";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.7.0";
|
||||
};
|
||||
fastercsv = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1df3vfgw5wg0s405z0pj0rfcvnl9q6wak7ka8gn0xqg4cag1k66h";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.5.5";
|
||||
};
|
||||
filesize = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "061qmg82mm9xnmnq3b7gbi24g28xk62w0b0nw86gybd07m1jn989";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.1.1";
|
||||
};
|
||||
geoip = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1if16n4pjl2kshc0cqg7i03m55fspmlca6p9f4r66rpzw0v4d6jc";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.6.4";
|
||||
};
|
||||
http = {
|
||||
dependencies = ["addressable" "http-cookie" "http-form_data" "http_parser.rb"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1jlm5prw437wqpfxcigh88lfap3m7g8mnmj5as7qw6dzqnvrxwmc";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.3.0";
|
||||
};
|
||||
http-cookie = {
|
||||
dependencies = ["domain_name"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "004cgs4xg5n6byjs7qld0xhsjq3n6ydfh897myr2mibvh6fjc49g";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.3";
|
||||
};
|
||||
http-form_data = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "15lpn604byf7cyxnw949xz4rvpcknqp7a48q73nm630gqxsa76f3";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.1.1";
|
||||
};
|
||||
"http_parser.rb" = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "15nidriy0v5yqfjsgsra51wmknxci2n2grliz78sf9pga3n0l7gi";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.6.0";
|
||||
};
|
||||
jsobfu = {
|
||||
dependencies = ["rkelly-remix"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1hchns89cfj0gggm2zbr7ghb630imxm2x2d21ffx2jlasn9xbkyk";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.2";
|
||||
};
|
||||
json = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0qmj7fypgb9vag723w1a49qihxrcf5shzars106ynw2zk352gbv5";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.8.6";
|
||||
};
|
||||
json_pure = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1vllrpm2hpsy5w1r7000mna2mhd7yfrmd8hi713lk0n9mv27bmam";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.8.6";
|
||||
};
|
||||
memoizable = {
|
||||
dependencies = ["thread_safe"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0v42bvghsvfpzybfazl14qhkrjvx0xlmxz0wwqc960ga1wld5x5c";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.2";
|
||||
};
|
||||
metasm = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0gss57q4lv6l0jkih77zffrpjjzgkdcsy7b9nvvawyzknis9w4s5";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.3";
|
||||
};
|
||||
mime-types = {
|
||||
dependencies = ["mime-types-data"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0fjxy1jm52ixpnv3vg9ld9pr9f35gy0jp66i1njhqjvmnvq0iwwk";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.2.2";
|
||||
};
|
||||
mime-types-data = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "07wvp0aw2gjm4njibb70as6rh5hi1zzri5vky1q6jx95h8l56idc";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.2018.0812";
|
||||
};
|
||||
mini_portile2 = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "13d32jjadpjj6d2wdhkfpsmy68zjx90p49bgf8f7nkpz86r1fr11";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.3.0";
|
||||
};
|
||||
mojo_magick = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1n4hzdyvaggzasxb55iqjd8sg6g84yc2dbaip0zzy7nwr5j5h8sm";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.5.6";
|
||||
};
|
||||
msfrpc-client = {
|
||||
dependencies = ["msgpack" "rex"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0q1x0xy857qm3sdxynp5p8kk7f6j25qjw1p28jh0y2qivc5ksik8";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.1.1";
|
||||
};
|
||||
msgpack = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "09xy1wc4wfbd1jdrzgxwmqjzfdfxbz0cqdszq2gv6rmc3gv1c864";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.2.4";
|
||||
};
|
||||
multi_json = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1rl0qy4inf1mp8mybfk56dfga0mvx97zwpmq5xmiwl5r770171nv";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.13.1";
|
||||
};
|
||||
multipart-post = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "09k0b3cybqilk1gwrwwain95rdypixb2q9w65gd44gfzsd84xi1x";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.0.0";
|
||||
};
|
||||
mustermann = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "07sb7fckrraqh48fjnqf6yl7vxxabfx0qrsrhfdz67pd838g4k8g";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.2";
|
||||
};
|
||||
naught = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1wwjx35zgbc0nplp8a866iafk4zsrbhwwz4pav5gydr2wm26nksg";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.1.0";
|
||||
};
|
||||
netrc = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0gzfmcywp1da8nzfqsql2zqi648mfnx6qwkig3cv36n9m0yy676y";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.11.0";
|
||||
};
|
||||
parseconfig = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0br2g9k6zc4ygah52aa8cwvpnnkszia29bnvnr8bhpk3rdzi2vmq";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.0.8";
|
||||
};
|
||||
public_suffix = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.0.3";
|
||||
};
|
||||
qr4r = {
|
||||
dependencies = ["mojo_magick" "rqrcode"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1ya71fxhmx2zfsmflmqh6xm9jwgjxamsj9d3h1kjp21w4vca0s30";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.4.1";
|
||||
};
|
||||
rack = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "158hbn7rlc3czp2vivvam44dv6vmzz16qrh5dbzhfxbfsgiyrqw1";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.0.5";
|
||||
};
|
||||
rack-protection = {
|
||||
dependencies = ["rack"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1z5598qipilmnf45428jnxi63ykrgvnyywa5ckpr52zv2vpd8jdp";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.0.3";
|
||||
};
|
||||
rainbow = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0bb2fpjspydr6x0s8pn1pqkzmxszvkfapv0p4627mywl7ky4zkhk";
|
||||
type = "gem";
|
||||
};
|
||||
version = "3.0.0";
|
||||
};
|
||||
rake = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1idi53jay34ba9j68c3mfr9wwkg3cd9qh0fn9cg42hv72c6q8dyg";
|
||||
type = "gem";
|
||||
};
|
||||
version = "12.3.1";
|
||||
};
|
||||
rb-readline = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "14w79a121czmvk1s953qfzww30mqjb2zc0k9qhi0ivxxk3hxg6wy";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.5.5";
|
||||
};
|
||||
rest-client = {
|
||||
dependencies = ["http-cookie" "mime-types" "netrc"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1hzcs2r7b5bjkf2x2z3n8z6082maz0j8vqjiciwgg3hzb63f958j";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.0.2";
|
||||
};
|
||||
rex = {
|
||||
dependencies = ["filesize" "jsobfu" "json" "metasm" "rb-readline" "robots"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0kxacxq4l1gcqbw1izg2qqvdhxl6b5779a2qa2jk24f6x96bpi68";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.0.11";
|
||||
};
|
||||
rexec = {
|
||||
dependencies = ["rainbow"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1ihc0a6gj4i3287fjm86cn2ax4hlznyk5aqxrhjxkf4y9kabc3in";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.6.3";
|
||||
};
|
||||
rkelly-remix = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1g7hjl9nx7f953y7lncmfgp0xgxfxvgfm367q6da9niik6rp1y3j";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.0.7";
|
||||
};
|
||||
robots = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "141gvihcr2c0dpzl3dqyh8kqc9121prfdql2iamaaw0mf9qs3njs";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.10.1";
|
||||
};
|
||||
rqrcode = {
|
||||
dependencies = ["chunky_png"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0h1pnnydgs032psakvg3l779w3ghbn08ajhhhw19hpmnfhrs8k0a";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.10.1";
|
||||
};
|
||||
rubydns = {
|
||||
dependencies = ["eventmachine" "rexec"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1mav6589kpqh37wlipkh1nww6ipbw4kzja2crz216v25wwjrbpx2";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.7.3";
|
||||
};
|
||||
rubyzip = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "06js4gznzgh8ac2ldvmjcmg9v1vg9llm357yckkpylaj6z456zqz";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.2.1";
|
||||
};
|
||||
rushover = {
|
||||
dependencies = ["json" "rest-client"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0j6x61drcdfnbvgmkmrc92zw67acpfcz5h1a29sdf884zkwd1444";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.0";
|
||||
};
|
||||
simple_oauth = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0dw9ii6m7wckml100xhjc6vxpjcry174lbi9jz5v7ibjr3i94y8l";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.1";
|
||||
};
|
||||
sinatra = {
|
||||
dependencies = ["mustermann" "rack" "rack-protection" "tilt"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1kyi55q4k4idv31h7l53hw0mnh50dwwrrsfm35j52jy7fc993m9r";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.0.3";
|
||||
};
|
||||
slack-notifier = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1pkfn99dhy5s526r6k8d87fwwb6j287ga9s7lxqmh60z28xqh3bv";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.3.2";
|
||||
};
|
||||
term-ansicolor = {
|
||||
dependencies = ["tins"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1b1wq9ljh7v3qyxkk8vik2fqx2qzwh5lval5f92llmldkw7r7k7b";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.6.0";
|
||||
};
|
||||
thin = {
|
||||
dependencies = ["daemons" "eventmachine" "rack"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0nagbf9pwy1vg09k6j4xqhbjjzrg5dwzvkn4ffvlj76fsn6vv61f";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.7.2";
|
||||
};
|
||||
thread_safe = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0nmhcgq6cgz44srylra07bmaw99f5271l0dpsvl5f75m44l0gmwy";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.6";
|
||||
};
|
||||
tilt = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0020mrgdf11q23hm1ddd6fv691l51vi10af00f137ilcdb2ycfra";
|
||||
type = "gem";
|
||||
};
|
||||
version = "2.0.8";
|
||||
};
|
||||
tins = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0g95xs4nvx5n62hb4fkbkd870l9q3y9adfc4h8j21phj9mxybkb8";
|
||||
type = "gem";
|
||||
};
|
||||
version = "1.16.3";
|
||||
};
|
||||
twitter = {
|
||||
dependencies = ["addressable" "buftok" "equalizer" "http" "http-form_data" "http_parser.rb" "memoizable" "multipart-post" "naught" "simple_oauth"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0fjyz3viabz3xs5d9aad18zgdbhfwm51jsnzigc8kxk77p1x58n5";
|
||||
type = "gem";
|
||||
};
|
||||
version = "6.2.0";
|
||||
};
|
||||
uglifier = {
|
||||
dependencies = ["execjs"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "14r283lkhisq2sdccv8ngf10f2f18ly4nc3chz3kliw5nylbgznw";
|
||||
type = "gem";
|
||||
};
|
||||
version = "4.1.18";
|
||||
};
|
||||
unf = {
|
||||
dependencies = ["unf_ext"];
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "0bh2cf73i2ffh4fcpdn9ir4mhq8zi50ik0zqa1braahzadx536a9";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.1.4";
|
||||
};
|
||||
unf_ext = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "06p1i6qhy34bpb8q8ms88y6f2kz86azwm098yvcc0nyqk9y729j1";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.0.7.5";
|
||||
};
|
||||
xmlrpc = {
|
||||
source = {
|
||||
remotes = ["https://rubygems.org"];
|
||||
sha256 = "1s744iwblw262gj357pky3d9fcx9hisvla7rnw29ysn5zsb6i683";
|
||||
type = "gem";
|
||||
};
|
||||
version = "0.3.0";
|
||||
};
|
||||
}
|
16
pkgs/beef/shell.nix
Normal file
16
pkgs/beef/shell.nix
Normal file
|
@ -0,0 +1,16 @@
|
|||
# Env to update Gemfile.lock / gemset.nix
|
||||
with import <nixpkgs> {};
|
||||
stdenv.mkDerivation {
|
||||
name = "env";
|
||||
buildInputs = [
|
||||
ruby.devEnv
|
||||
git
|
||||
sqlite
|
||||
libpcap
|
||||
postgresql
|
||||
libxml2
|
||||
libxslt
|
||||
pkgconfig
|
||||
bundix
|
||||
];
|
||||
}
|
34
pkgs/cupp.nix
Normal file
34
pkgs/cupp.nix
Normal file
|
@ -0,0 +1,34 @@
|
|||
{lib, stdenv, pkgs, fetchFromGitHub, python3 }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "cupp";
|
||||
version = "56547fd";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Mebus";
|
||||
repo = "cupp";
|
||||
rev = version;
|
||||
sha256 = "1np468jlabc6xkffbp2hdbmkhc8ln4nhfdqlh7h1c9pv1a4i8h4y";
|
||||
};
|
||||
|
||||
buildInputs = [ python3 ];
|
||||
strictDeps = true;
|
||||
|
||||
buildPhase = ''
|
||||
true
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
chmod 755 cupp.py
|
||||
mkdir -p $out/bin
|
||||
cp -r cupp.cfg cupp.py $out/bin
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://git.causal.agency/catgirl/about/";
|
||||
license = licenses.bsd3;
|
||||
description = "Exploitation framework for embedded devices";
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ xfnw ];
|
||||
};
|
||||
}
|
|
@ -11,9 +11,10 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0j1c6xl5nws8r81847a7jhwjc88aafkq9yby6rczym0mpnyg8i10";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with pkgs.python3Packages; [
|
||||
buildInputs = with pkgs.python3Packages; [
|
||||
pkgs.python3 bluepy future requests paramiko pysnmp pycryptodome setuptools
|
||||
];
|
||||
strictDeps = true;
|
||||
|
||||
buildPhase = ''
|
||||
true
|
||||
|
|
Loading…
Reference in a new issue