Example #1
0
def main_entry():
    parser = argparse.ArgumentParser()
    parser.add_argument('-l',
                        help='the qq numbers list you want to lookup',
                        dest='qq_list',
                        default=None,
                        required=True)
    parser.add_argument('-s',
                        help='the start timestamp you want to spider',
                        dest='start_date',
                        default=settings.default_end_time)
    parser.add_argument('-F',
                        help='whether the data is forced updated',
                        dest='force_update',
                        action='store_true',
                        default=False)
    args = parser.parse_args()
    qq_list = []
    for qq in open(args.qq_list):
        qq = qq.replace('\n', '')
        if qq is not '':
            qq_list.append(qq)
    bar_list = tqdm(total=len(qq_list), position=1)
    i = 1
    for qq in qq_list:
        find.qzonesecret(qq,
                         over_time=args.start_date,
                         force_update=(args.force_update is True))
        bar_list.update(1)
        bar_list.set_description("Item %i" % i)
        i += 1
    bar_list.close()
    db.db_close()
Example #2
0
def plot_view_tstatistic(tid):
    """
    Render a the plot.html template for viewing a single t-statistic
    trace.
    """

    db = db_connect()

    ttest = db.getTTraceSetsById(tid)
    target = ttest.target
    experiment = ttest.experiment
    stid = ttest.ttraceId
    pbin = db.getProgramBinaryByTargetAndExperiment(target.id, experiment.id)

    disasm = getExperimentPayloadFromProgramBinary(pbin)

    template = render_template("plot.html",
                               plotType="TTest",
                               ttest=ttest,
                               target=target,
                               experiment=experiment,
                               stid=stid,
                               pbin=pbin,
                               disasm=disasm)

    db_close()

    return template
Example #3
0
def plot_view_corrolation_statistic(tid):
    """
    Render a the plot.html template for viewing a single corrolation-statistic
    trace.
    """

    db = db_connect()

    corr = db.getCorrolationTraceById(tid)
    target = corr.target
    experiment = corr.experiment
    stid = corr.statisticTraceid
    pbin = db.getProgramBinaryByTargetAndExperiment(target.id, experiment.id)

    disasm = getExperimentPayloadFromProgramBinary(pbin)

    template = render_template("plot.html",
                               plotType="Corrolation",
                               corr=corr,
                               target=target,
                               experiment=experiment,
                               stid=stid,
                               pbin=pbin,
                               disasm=disasm)

    db_close()

    return template
Example #4
0
def list_targets():
    """
    Shows the page which lists all of the available target platforms.
    """
    db = db_connect()
    
    targets  = db.getAllTargets().all()
    devices  = db.getAllDevices().all()
    cores    = db.getAllCores().all()
    boards   = db.getAllBoards().all()

    targets.sort(key = lambda x : x.core.name)
    cores.sort(key = lambda x : x.name)

    template = render_template(
        "targets/list.html",
        targets = targets,
        devices = devices,
        cores   = cores,
        boards  = boards
    )

    db_close()

    return template
Example #5
0
def render_selection(tids):
    """
    Plot a set of traces over one-another.
    """

    sel = [int(i) for i in tids.split(",")]

    db = db_connect()

    traces = []
    labels = []

    for tid in sel:
        stat_trace = db.getStatisticTraceById(tid)
        traces.append(stat_trace.getValuesAsNdArray())
        labels.append(stat_trace.name)

    figure = makePlotFigure(traces,
                            slabels=labels,
                            xlabel="Sample",
                            width_in=15,
                            height_in=8)

    rsp = makePlotResponse(figure)

    db_close()

    return rsp
Example #6
0
def show_results(eid, tid):
    """
    Render page showing experiment results for a particular target and
    experiment combination.
    """
    db = db_connect()

    experiment = db.getExperimentById(eid)
    target = db.getTargetById(tid)

    ttests = db.getTTraceSetsByTargetAndExperiment(target.id,
                                                   experiment.id).all()

    blobs = db.getTraceSetBlobByTargetAndExperiment(
        target.id,
        experiment.id,
    ).all()

    corrs = db.getCorrolationTraceByTargetAndExperiment(
        target.id, experiment.id).all()

    pbin = db.getProgramBinaryByTargetAndExperiment(target.id, experiment.id)

    template = render_template("experiments/results.html",
                               target=target,
                               experiment=experiment,
                               blobs=blobs,
                               ttests=ttests,
                               corrs=corrs,
                               pbin=pbin)

    db_close()

    return template
Example #7
0
def plot_statistic_trace(eid, tid, stid):
    """
    Render a the plot.html template for viewing a single statistic trace.
    """

    db = db_connect()
    pbin = None
    disasm = None

    target = db.getTargetById(tid)
    experiment = db.getExperimentById(eid)

    pbin = db.getProgramBinaryByTargetAndExperiment(target.id, experiment.id)

    disasm = getExperimentPayloadFromProgramBinary(pbin)

    trace = db.getStatisticTraceById(stid)

    template = render_template("plot.html",
                               plotType=str(trace.stat_type),
                               target=target,
                               experiment=experiment,
                               stid=trace.id,
                               strace=trace,
                               pbin=pbin,
                               disasm=disasm)

    db_close()

    return template
Example #8
0
def route_jinja(path):
    t_wordcloud = []
    db_connection, db_cursor = db.db_connect()
    if db_cursor:
        t_wordcloud = db.db_select_word_cloud(db_cursor)
    db.db_close(db_connection, db_cursor)

    return render_template('jinja.html', t_wordcloud=t_wordcloud)
Example #9
0
def route_device(p_address=None, p_address_type=None, p_limit=100):
    time_now = time.strftime("%H:%M", time.localtime())

    t_device = []
    db_connection, db_cursor = db.db_connect()
    if db_cursor:
        t_device = db.db_select_device(db_cursor, p_address, p_address_type,
                                       p_limit)
    db.db_close(db_connection, db_cursor)
    return render_template('device.html', date=time_now, t_device=t_device)
Example #10
0
def route_scan_data_car():
    time_now = time.strftime("%H:%M", time.localtime())
    t_scan_data_car = []

    db_connection, db_cursor = db.db_connect()
    if db_cursor:
        t_scan_data_car = db.db_select_scan_data_car(db_cursor)
    db.db_close(db_connection, db_cursor)
    return render_template('scan_data_car.html',
                           date=time_now,
                           t_scan_data_car=t_scan_data_car)
Example #11
0
def list_experiments():
    """
    Shows the page which lists all of the available target platforms.
    """
    db = db_connect()

    experiments = db.getAllExperiments()

    template = render_template("experiments/list.html",
                               experiments=experiments)

    db_close()

    return template
Example #12
0
def render_statistic_trace(tid):
    """
    Render a single statistic trace using matplotlib.
    """

    db = db_connect()

    strace = db.getStatisticTraceById(tid)
    nptrace = strace.getValuesAsNdArray()

    tgtId = request.args.get("tgtid", None)
    expId = request.args.get("eid", None)
    ttestId = request.args.get("ttid", None)
    corrId = request.args.get("corrId", None)

    title = ""
    xlabel = "Trace Sample"
    ylabel = ""
    ylines = []

    if (ttestId):
        ttest = db.getTTraceSetsById(ttestId)
        title += "TTest: " + str(ttest.parameterDict) + " "
        ylabel = "T-Statistic Value"
        ylines.append(4.5)
        ylines.append(-4.5)

    if (corrId):
        corr = db.getCorrolationTraceById(corrId)
        title += corr.corrType + ": " + ttest.randomTraceSet.parameters + " "

    if (expId):
        title += db.getExperimentById(expId).fullname + " "

    if (tgtId):
        title += db.getTargetById(tgtId).name + " "

    figure = makePlotFigure([nptrace], [],
                            title,
                            xlabel=xlabel,
                            ylabel=ylabel,
                            ylines=ylines)

    rsp = makePlotResponse(figure)

    db_close()

    return rsp
Example #13
0
def parse_file_infite():
    filename = FILE
    while True:
        timeBefore = time.time()
        newName = filename + 'stat' + str(int(time.time()))
        if path.isfile(filename):
            conn, curr = db.db_connect()
            rename(filename, newName)
            mainlog = open(newName, 'a+')
            mainlog.write('\nFrom MAILER-DAEMON')
            mainlog.close()
            mainlog = open(newName, 'a+')
            process_file(mainlog, conn, curr)
            db.db_close(conn, curr)
        if time.time() - timeBefore < 60:
            time.sleep(60)
Example #14
0
File: parser.py Project: shmuga/p2p
def parse_file_infite():
    filename = FILE
    while True:
        timeBefore = time.time()
        newName = filename + 'stat' + str(int(time.time()))
        if path.isfile(filename):
            conn,curr = db.db_connect()
            rename(filename, newName)
            mainlog = open(newName,'a+')
    	    mainlog.write('\nFrom MAILER-DAEMON');
    	    mainlog.close()
    	    mainlog = open(newName, 'a+')
            process_file(mainlog, conn, curr)
            db.db_close(conn, curr)
        if time.time() - timeBefore < 60:
            time.sleep(60)
Example #15
0
def show_device(id):
    """
    Renders a page which lists all the information on a particular device.
    """
    db = db_connect()

    device = db.getDeviceById(id)
    targets = db.getTargetsByDevice(device.id)
    
    template = render_template(
        "targets/device.html",
        device = device,
        targets = targets
    )

    db_close()

    return template
Example #16
0
def show_experiment(id):
    """
    Render page showing all information on a particular experiment.
    """
    db = db_connect()

    experiment = db.getExperimentById(id)
    targets = db.getTargetsByExperiment(experiment.id).all()

    targets.sort(key=lambda x: x.core.name)

    template = render_template("experiments/show.html",
                               targets=targets,
                               experiment=experiment)

    db_close()

    return template
Example #17
0
def show_target(id):
    """
    Renders a page which lists all the information on a particular target.
    """
    db = db_connect()

    target = db.getTargetById(id)
    experiments = db.getExperimentsByTarget(target.id)
    
    template = render_template(
        "targets/target.html",
        target = target,
        experiments = experiments
    )

    db_close()

    return template
Example #18
0
def show_board(id):
    """
    Renders a page which lists all the information on a particular board.
    """
    db = db_connect()

    board = db.getBoardById(id)
    targets = db.getTargetsByBoard(board.id)
    
    template = render_template(
        "targets/board.html",
        board = board,
        targets = targets
    )

    db_close()

    return template
Example #19
0
def show_core(id):
    """
    Renders a page which lists all the information on a particular core.
    """
    db = db_connect()

    core = db.getCoreById(id)
    targets = db.getTargetsByCore(core.id)
    
    template = render_template(
        "targets/core.html",
        core = core,
        targets = targets
    )

    db_close()

    return template
Example #20
0
def download_binary(pid):
    """
    Download a program binary.
    """

    db = db_connect()

    pbin = db.getProgramBinaryById(pid)

    rsp = make_response(pbin.binary)
    rsp.headers.set("Content-Type", "application/octet-stream")
    rsp.headers.set("Content-Disposition",
                    "attachment",
                    filename="%s-%s-program.elf" %
                    (pbin.target.name, pbin.experiment.name))

    db_close()

    return rsp
Example #21
0
def download_disassembly(pid):
    """
    Download a program disassembly.
    """

    db = db_connect()

    pbin = db.getProgramBinaryById(pid)

    rsp = make_response(pbin.disasm)
    rsp.headers.set("Content-Type", "text/plain")
    rsp.headers.set("Content-Disposition",
                    "attachment",
                    filename="%s-%s-program.dis" %
                    (pbin.target.name, pbin.experiment.name))

    db_close()

    return rsp
Example #22
0
def main():
    parser = argparse.ArgumentParser()
    parser.add_argument('-q',
                        help='the qq number you want to lookup',
                        dest='qq_num',
                        default=None,
                        required=True)
    parser.add_argument('-s',
                        help='the start timestamp you want to spider',
                        dest='start_date',
                        default=settings.default_end_time)
    parser.add_argument('-F',
                        help='whether the data is forced updated',
                        dest='force_update',
                        action='store_true',
                        default=False)
    args = parser.parse_args()
    qzonesecret(args.qq_num,
                over_time=args.start_date,
                force_update=(args.force_update is True))
    db.db_close()
Example #23
0
def route_ajax_db():
    time_now = time.strftime("%H:%M:%S", time.localtime())

    if request.method == "GET":
        restrict = request.args.getlist('restrict')
        query = request.args.get('query')
    elif request.method == "POST":
        restrict = request.form.getlist('restrict')
        query = request.form.get('query')
    else:
        restrict = []
        query = ""

    t_result = []
    db_connection, db_cursor = db.db_connect()
    if db_cursor:
        if query == "db_select_scan_bucket":
            t_result = db.db_select_scan_bucket(db_cursor)
        elif query == "db_select_recap":
            t_result = db.db_select_recap(db_cursor, restrict)
        db.db_close(db_connection, db_cursor)

    return jsonify(time=time_now, result=t_result)
Example #24
0
def _stop_db(_):
    db_close()
Example #25
0
#!/usr/bin/python
# BLE V2: Collect of BLE

import db

import os.path
import time

from bluepy.btle import Scanner

if __name__ == '__main__':
    scanner = Scanner()
    while not os.path.exists('stop'):
        time.sleep(1)
        devices = scanner.scan(5)

        ts = int(time.time())
        db_connection, db_cursor = db.db_connect()
        for dev in devices:
            db.db_insert_device(db_cursor, dev.addr, dev.addrType, dev.rssi,
                                ts)
            for (adtype, name, value) in dev.getScanData():
                db.db_insert_scan_data(db_cursor, dev.addr, dev.addrType,
                                       adtype, name, value, ts)
        db.db_close(db_connection, db_cursor)
Example #26
0
    try:
        # Set up DB connection, table, and load data
        engine = db.db_connect(args.user, args.password, args.db_url)
        char_table = db.create_char_table(engine)
        for char in characters:
            db.insert_character(engine, char_table, characters[char])

        # Pull names and films from DB
        characters = engine.execute(
            "SELECT name, films from characters").fetchall()
        print(len(characters))

        # Prep and print to console
        films = set(
            reduce(lambda x, y: x + y,
                   [c.films.split("|") for c in characters]))
        characters_by_film = [{
            "film":
            f,
            "character": [c.name for c in characters if f in c.films]
        } for f in films]
        print(json.dumps(characters_by_film, indent=2))
        db.db_close(engine)

    except Exception as e:
        print(e)

    finally:
        db.db_close(engine)
Example #27
0
		create_history(crs, data)




#########
# Example
########

# db connection
con = sql_connect(DBNAME)
crs = con.cursor()

# setup db, load balance
init_profile(con)
init_balance(crs)

# buying
test_buy = buy_trade(crs, 'btc_idr', '124833800', '2000000')
tr_status_done(crs, TR_TYPE[0], test_buy)

# sell
sell_trade(crs, test_buy, '144833800')
tr_status_done(crs, TR_TYPE[1], test_buy)

# move to history table
check_trade(crs, test_buy)

# close connection
db_close(con)