Skip to content

Commit

Permalink
Redesign vulbux start
Browse files Browse the repository at this point in the history
  • Loading branch information
sea-kg committed Jan 6, 2019
1 parent 03b302f commit 27bada7
Show file tree
Hide file tree
Showing 9 changed files with 79 additions and 53 deletions.
39 changes: 8 additions & 31 deletions jury.d/checkers/example_service2/checker.py
Expand Up @@ -5,6 +5,7 @@
import random
import time
import errno
import requests

# put-get flag to service success
def service_up():
Expand Down Expand Up @@ -45,19 +46,9 @@ def put_flag():
global host, port, f_id, flag
# try put
try:
# print("try connect " + host + ":" + str(port))
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(1)
s.connect((host, port))
result = s.recv(1024)
# print(result)
s.send("put" + "\n")
result = s.recv(1024)
s.send(f_id + "\n")
result = s.recv(1024)
s.send(flag + "\n")
result = s.recv(1024)
s.close()
r = requests.post('http://' + host + ':' + str(port) + '/api/flags/' + f_id + '/' + flag)
if r.status_code != 200:
service_corrupt()
except socket.timeout:
service_down()
except socket.error as serr:
Expand All @@ -75,23 +66,10 @@ def check_flag():
# try get
flag2 = ""
try:
# print("try connect " + host + ":" + str(port))
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.settimeout(1)
s.connect((host, port))
result = s.recv(1024)
# print(result)
s.send("get\n")
result = s.recv(1024)
s.send(f_id + "\n")
result = s.recv(1024)
flag2 = result.strip()
flag2 = flag2.split("FOUND FLAG: ");
if len(flag2) == 2:
flag2 = flag2[1]
else:
flag2 = ''
s.close()
r = requests.get('http://' + host + ':' + str(port) + '/api/flags/' + f_id)
if r.status_code != 200:
service_corrupt()
flag2 = r.json()['Flag']
except socket.timeout:
service_down()
except socket.error as serr:
Expand All @@ -107,7 +85,6 @@ def check_flag():
if flag != flag2:
service_corrupt()


if command == "put":
put_flag()
check_flag()
Expand Down
6 changes: 3 additions & 3 deletions vulnbox/example_service1/docker-compose.yml
Expand Up @@ -3,16 +3,16 @@ version: '2'
services:
example_service1:
build: .
image: example_service1:0.2.0
image: example_service1:2019.1.6
volumes:
- "./flags:/root/flags"
ports:
- "4441:4441"
restart: always
networks:
- example_service1
- example_service1_net

networks:
example_service1:
example_service1_net:
driver: bridge

12 changes: 6 additions & 6 deletions vulnbox/example_service2/docker-compose.yml
@@ -1,7 +1,7 @@
version: '2'

services:
es2_db_20190106:
example_service2_db:
image: mysql:5.7
volumes:
- "./dckr_mysql:/var/lib/mysql"
Expand All @@ -13,22 +13,22 @@ services:
MYSQL_USER: example_service2
MYSQL_PASSWORD: example_service2
networks:
- es2_net
- example_service2_net

es2:
example_service2:
build: .
image: example_service2:2019.1.6
depends_on:
- es2_db_20190106
- example_service2_db
volumes:
- "./src:/home/example_service2"
ports:
- "4442:4442"
restart: always
networks:
- es2_net
- example_service2_net

networks:
es2_net:
example_service2_net:
driver: bridge

4 changes: 4 additions & 0 deletions vulnbox/example_service2/src/html/static/index.css
Expand Up @@ -24,4 +24,8 @@ body {

.tbl {
display: inline-table;
}

.flag-id {
font-family: monospace;
}
2 changes: 1 addition & 1 deletion vulnbox/example_service2/src/html/static/index.js
Expand Up @@ -23,7 +23,7 @@ $('#btn_list_flag').unbind().bind('click', function() {
}).done(function(r){
$('#tbl_list_flag').html("<tr><th>Flag ID</th></tr>");
for(var i in r.FlagIDs) {
$('#tbl_list_flag').append("<tr><td>" + r.FlagIDs[i] + "</td></tr>");
$('#tbl_list_flag').append("<tr><td class='flag-id'>" + r.FlagIDs[i] + "</td></tr>");
}
}).fail(function(err){
$('#tbl_list_flag').html("<tr><th>" + err.responseJSON.Error + "</th></tr>");
Expand Down
14 changes: 11 additions & 3 deletions vulnbox/example_service2/src/server.go
Expand Up @@ -12,7 +12,7 @@ import (

var (
// dbConnString = "example_service2:example_service2@tcp(localhost:3306)/example_service2"
dbConnString = "example_service2:example_service2@tcp(es2_db_20190106:3306)/example_service2"
dbConnString = "example_service2:example_service2@tcp(example_service2_db:3306)/example_service2"
)

type Flag struct {
Expand Down Expand Up @@ -57,18 +57,21 @@ func put_flag(w http.ResponseWriter, r *http.Request) {
if err2 != nil {
fmt.Printf("FAILED insert flag=%s with flag_id=%s\n", flag_id, flag)
err_json(w, err2.Error())
db.Close()
return
}
flag2 := Flag{flag_id, flag}
js, err := json.Marshal(flag2)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
db.Close()
return
}

fmt.Printf("Inserted flag=%s with flag_id=%s\n", flag_id, flag)
w.Header().Set("Content-Type", "application/json")
w.Write(js)
db.Close()
}

// --------------------------------------------------------
Expand All @@ -87,6 +90,7 @@ func get_flag(w http.ResponseWriter, r *http.Request) {
var flag Flag
err2 := db.Get(&flag, `SELECT * FROM flag WHERE flag_id = ?`, flag_id)
if err2 != nil {
db.Close()
err_json(w, err2.Error())
return
}
Expand All @@ -100,6 +104,7 @@ func get_flag(w http.ResponseWriter, r *http.Request) {

w.Header().Set("Content-Type", "application/json")
w.Write(js)
db.Close()
}

// --------------------------------------------------------
Expand All @@ -119,18 +124,21 @@ func list_flag(w http.ResponseWriter, r *http.Request) {
var flag_ids []string
err2 := db.Select(&flag_ids, "SELECT flag_id FROM flag")
if err2 != nil {
err_json(w, err2.Error())
err_json(w, err2.Error())
db.Close()
return
}
flags2 := FlagIDs{flag_ids}
js, err := json.Marshal(flags2)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
db.Close()
return
}

w.Header().Set("Content-Type", "application/json")
w.Write(js)
db.Close()
}

// --------------------------------------------------------
Expand Down
21 changes: 21 additions & 0 deletions vulnbox/rm.sh
@@ -0,0 +1,21 @@
#!/bin/bash

cd example_service1
docker-compose stop
docker-compose rm
cd ..

cd example_service2
docker-compose stop
docker-compose rm
cd ..

cd example_service3
docker-compose stop
docker-compose rm
cd ..

cd example_service4
docker-compose stop
docker-compose rm
cd ..
25 changes: 25 additions & 0 deletions vulnbox/start.sh
@@ -0,0 +1,25 @@
#!/bin/bash

cd example_service1
docker-compose build
docker-compose up --no-start
docker-compose start
cd ..

cd example_service2
docker-compose build
docker-compose up --no-start
docker-compose start
cd ..

cd example_service3
docker-compose build
docker-compose up --no-start
docker-compose start
cd ..

cd example_service4
docker-compose build
docker-compose up --no-start
docker-compose start
cd ..
9 changes: 0 additions & 9 deletions vulnbox/up.sh

This file was deleted.

0 comments on commit 27bada7

Please sign in to comment.