Skip to content

Commit

Permalink
With great power comes great responsibility
Browse files Browse the repository at this point in the history
The africana-framework is a software designed for network & web hacking by automating as much stuff as possible to detect vulnerabilities on most common services and web technologies. It also has some wide range of penetration testing from internal network, Wi-Fi, system anonymity to web bug hunting. It's purely written for Good and not Evil
  • Loading branch information
r0jahsm0ntar1 committed Mar 13, 2024
1 parent d0d3ce6 commit 9a58ea8
Show file tree
Hide file tree
Showing 44 changed files with 14,221 additions and 783 deletions.
45 changes: 45 additions & 0 deletions source/africana.go/bcolors/colors.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
package bcolors

import "runtime"

var PURPLE = "\033[95m"
var CYAN = "\033[96m"
var DARKCYAN = "\033[36m"
var BLUE = "\033[94m"
var GREEN = "\033[92m"
var YELLOW = "\033[93m"
var RED = "\033[91m"
var BOLD = "\033[1m"
var UNDERL = "\033[4m"
var ENDC = "\033[0m"
var backBlack = "\033[40m"
var backRed = "\033[41m"
var backGreen = "\033[42m"
var backYellow = "\033[43m"
var backBlue = "\033[44m"
var backMagenta = "\033[45m"
var backCyan = "\033[46m"
var backWhite = "\033[47m"

func init() {
if runtime.GOOS == "windows" {
PURPLE = ""
CYAN = ""
BLUE = ""
GREEN = ""
YELLOW = ""
RED = ""
ENDC = ""
BOLD = ""
UNDERL = ""
backBlack = ""
backRed = ""
backGreen = ""
backYellow = ""
backBlue = ""
backMagenta = ""
backCyan = ""
backWhite = ""
DARKCYAN = ""
}
}
3 changes: 3 additions & 0 deletions source/africana.go/bcolors/go.mod
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
module colors.go

go 1.21.6
7 changes: 7 additions & 0 deletions source/africana.go/go.mod
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
module main.go

replace bcolors => ./bcolors

go 1.21.6

require bcolors v0.0.0-00010101000000-000000000000 // indirect
Binary file added source/africana.go/main
Binary file not shown.
134 changes: 134 additions & 0 deletions source/africana.go/main.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,134 @@
package main

import(
"os"
"fmt"
"os/exec"
"syscall"
"bcolors"
)

func banner() {
fmt.Println(bcolors.BLUE + ` _,._ ` + bcolors.ENDC)
fmt.Println(bcolors.BLUE + ` __.' _) ` + bcolors.ENDC)
fmt.Println(bcolors.BLUE + ` <_,)'.-'a\ ` + bcolors.ENDC)
fmt.Println(bcolors.BLUE + ` /' ( \ ` + bcolors.ENDC)
fmt.Println(bcolors.BLUE + ` _.-----..,-' (''--^ ` + bcolors.ENDC)
fmt.Println(bcolors.BLUE + ` // | ` + bcolors.ENDC)
fmt.Println(bcolors.BLUE + ` (| '; , | ` + bcolors.ENDC)
fmt.Println(bcolors.BLUE + ` \ ;.----/ ,/ ` + bcolors.ENDC)
fmt.Println(bcolors.BLUE + ` ) // / | |\ \ ` + bcolors.ENDC)
fmt.Println(bcolors.BLUE + ` \ \\'\ | |/ / Jesus Christ ` + bcolors.ENDC)
fmt.Println(bcolors.BLUE + ` \ \\ \ | |\/ The Lamb that was slain ` + bcolors.ENDC)
fmt.Println(bcolors.BLUE + ` '" '" '"' for our sins. ` + bcolors.ENDC)
fmt.Println(bcolors.GREEN + ` __ _____ _____ _ _ ` + bcolors.ENDC)
fmt.Println(bcolors.GREEN + ` __| |___ ___ _ _ ___| | | |___|_|___| |_ ` + bcolors.ENDC)
fmt.Println(bcolors.GREEN + ` | | | -_|_ -| | |_ -| --| | _| |_ -| _|` + bcolors.ENDC)
fmt.Println(bcolors.GREEN + ` |_____|___|___|___|___|_____|__|__|_| |_|___|_| ` + bcolors.ENDC)
fmt.Println(" \n")
}

func exit() {
fmt.Print(`
_,.---.---.---.--.._
_.-' '--.'---.'---'-. _,'--.._
/'--._ .'. '. ','-.'-._\
|| \ '.'---.__'__..-'. ,''-._/
_ ,'\ '-._\ \ '. '_.-'-._,''-.
,' '-_ \/ '-.'--.\ _\_.-'\__.-'-.'-._'.
(_.o> ,--. '._/'--.-',--' \_.-' \'-._ \
'---' '._ '---._/__,----' '-. '-\
/_, , _..-' '-._\
\_, \/ ._(
\_, \/ ._\
'._,\/ ._\
'._// ./'-._
'-._-_-_.-'
`)
fmt.Println(bcolors.GREEN + "\n wake up, Christian " + bcolors.ENDC)
fmt.Println(bcolors.GREEN + " Lord God Jesus Christ L❤️.VE'S you " + bcolors.ENDC)
fmt.Println(bcolors.GREEN + " follow the white Pigeon. " + bcolors.ENDC)
fmt.Println(bcolors.GREEN + " knock, knock, knock, " + bcolors.ENDC)
fmt.Println(bcolors.GREEN + " Man Of God. \n" + bcolors.ENDC)
}

func menu() {
fmt.Println(bcolors.RED + bcolors.BOLD +" ~>[ Choose what to do from the menu below ]<~ \n" + bcolors.ENDC)
fmt.Println(bcolors.BLUE + "[ 1. Port Scanning 6. Start Nikto Scaning ]" + bcolors.ENDC)
fmt.Println(bcolors.BLUE + "[ 2. Dns Reconning 7. Fero File Searching ]" + bcolors.ENDC)
fmt.Println(bcolors.BLUE + "[ 3. Web Technologies 8. Automation Scanning ]" + bcolors.ENDC)
fmt.Println(bcolors.BLUE + "[ 4. Nikto Vuln Scanning 9. View all scann logs ]" + bcolors.ENDC)
fmt.Println(bcolors.BLUE + "[ 5. Nuclei Vuln Scanning 0. Exit Africana Tool ]\n" + bcolors.ENDC)
}

func clear() {
Cmd := exec.Command("clear")
Out, err := Cmd.Output()
if err != nil {
panic(err)
}
fmt.Println(string(Out))
_, err = exec.Command("clear").Output()
if err != nil {
switch e := err.(type) {
case *exec.Error:
fmt.Println("failed executing:", err)
case *exec.ExitError:
fmt.Println("command exit rc =", e.ExitCode())
default:
panic(err)
}
}
}

func nmap() {
binary, lookErr := exec.LookPath("nmap")
if lookErr != nil {
panic(lookErr)
}
var host string
fmt.Print(bcolors.GREEN + "(" + bcolors.ENDC + "africana:" + bcolors.DARKCYAN + "framework" + bcolors.RED + " type > host" + bcolors.GREEN + ")# " + bcolors.ENDC)
fmt.Scan(&host)
args := []string{"nmap", "-p-", "-vv", host}
env := os.Environ()
execErr:= syscall.Exec(binary, args, env)
if execErr != nil {
panic(execErr)
}
}

func dnsr() {
binary, lookErr := exec.LookPath("dnsrecon")
if lookErr != nil {
panic(lookErr)
}
var host string
fmt.Print(bcolors.GREEN + "(" + bcolors.ENDC + "africana:" + bcolors.DARKCYAN + "framework" + bcolors.RED + " type > host" + bcolors.GREEN + ")# " + bcolors.ENDC)
fmt.Scan(&host)
args := []string{"dnsrecon", "-a", "-d", host}
env := os.Environ()
execErr:= syscall.Exec(binary, args, env)
if execErr != nil {
panic(execErr)
}
}

func main() {
clear()
banner()
menu()
var choice string
fmt.Print(bcolors.GREEN + "(" + bcolors.ENDC + "africana:" + bcolors.DARKCYAN + "framework" + bcolors.GREEN + ")# " + bcolors.ENDC)
fmt.Scan(&choice)
switch choice {
case "1":
fmt.Print("\n"); nmap()
case "2":
fmt.Print("\n"); dnsr()
case "0":
clear(); exit()
break
default:
fmt.Println(bcolors.ENDC + " ~{ " + bcolors.RED + "Poor choice of selection!. Please select int -> " + bcolors.DARKCYAN + " from 0. to 9. " + bcolors.ENDC + "}~" + bcolors.ENDC)
}
}
10 changes: 5 additions & 5 deletions source/africana.py → source/africana.py/africana.py
Original file line number Diff line number Diff line change
Expand Up @@ -196,12 +196,12 @@ def ferox(self, host):
class Options():
def menu(self):
print(bcolors.BLUE + bcolors.BOLD +"""
[---] Choose what to do from the menu below [---]"""+ bcolors.ENDC)
Choose what to do from the menu below """+ bcolors.ENDC)
print(bcolors.BLUE + """
1) Port Scanning 5) Start Nikto Scaning
2) Dns Reconning 6) Fero File Searching
3) Web Technologies 7) Automation Scanning
4) Nuclei Vuln Scanning 8) Exit Africana Tool."""+ bcolors.ENDC)
1. Port Scanning 5. Start Nikto Scaning
2. Dns Reconning 6. Fero File Searching
3. Web Technologies 7. Automation Scanning
4. Nuclei Vuln Scanning 8. Exit Africana Tool."""+ bcolors.ENDC)

os.system('clear')
shamura = main()
Expand Down
1 change: 0 additions & 1 deletion src/agreement/covenant

This file was deleted.

Loading

0 comments on commit 9a58ea8

Please sign in to comment.