This is file manager component of our system. In this app we upload our attack scripts, we execute attack scripts, and we download the results. This system provides an interface in order to manage scripts and logs files from core app.
FTP server docker image address:
docker pull amirhossein21/ptaas-tool:ftp-v0.X.X
HTTP_PORT
which is the system portACCESS_KEY
which is used to block download access for filesPRIVATE_KEY
which is used to give execute script system call enable only for coreMINIO_CLUSTER
is the minio configs.access:secret@endpoint&bucket&true
Setup ftp server in docker container with following command:
docker run -d \
-e HTTP_PORT=80 \
-p 80:80 \
amirhossein21/ptaas-tool:ftp-v0.X.X
Put your new attacks in libatks directory. If you add draf
at the end, it will be ignored.
Make sure to have only one main.go
file for your attack with the following code in the beginning of
the main
function.
log.SetOutput(os.Stdout)
var (
hostFlag = flag.String("host", "localhost", "target host address")
endpointsFlag = flag.String("endpoints", "/", "target specific endpoints")
paramsFlag = flag.String("params", "", "system parameters for testing")
)
flag.Parse()
endpoints := strings.Split(*endpointsFlag, ",")
paramSet := strings.Split(*paramsFlag, "&")
params := make(map[string]string)
for _, item := range paramSet {
parts := strings.Split(item, "=")
params[parts[0]] = parts[1]
}
log.Println(*hostFlag)
log.Println(endpoints)
log.Println(params)