Code Monkey home page Code Monkey logo

docs's People

Contributors

aaaaalbert avatar aborovtsov1994 avatar ankitbhatia32 avatar awwad avatar bestchai avatar choksi81 avatar decidedlygray avatar devansh-patel avatar heatherm avatar hieusydo avatar justincappos avatar kellender avatar linkleonard avatar lukpueh avatar monzum avatar paoga87 avatar sam-maverick avatar sanjaytr avatar semicolonexpected avatar srinivas11789 avatar sstenchever avatar us341 avatar vchrombie avatar vladimir-v-diaz avatar wecsam avatar weissri avatar yyzhuang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docs's Issues

Reproduce grants/endowment footer?

The Trac wiki's footer reads

This material is based upon work supported by the National Science Foundation under Grant No. (CNS-0834243). Any opinions, findings, and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of GPO Technologies, Corp., the GENI Project Office, or the National Science Foundation.

@JustinCappos, shall we add a grants (or similar) page to the docs repo (or some other place)?

Fix inter-page links

The previous Seattle Trac wiki pages now live in this repo, and are kept in Markdown format (see #4). Some of the converted pages still contain wiki: links that we could not automatically convert. We need to find and update these links!

Here's how to generate a file listing containing old wiki links, courtesy of @lukpueh:

grep -lr --include="*.md" "wiki:\|\.wiki" .

Looking forward to your PRs!

Port Trac wiki contents to Git

We should phase out the old Trac wiki, and port its contents to GitHub instead. (I will push the relevant stuff from the existing trac.db SQLite database separately.)

What the dump gives us is the page name, version number, Unix timestamp, Trac author, actual page content, and comment. These should be used as follows:

  • page name --> file name (and file path for names that start with "Archive/" etc.)
  • version number + comment --> commit message (a la "Add version " + VERSION + " of page '" + TITLE + "'\n\n" + COMMENT)
  • Unix timestamp --> commit timestamp
  • Trac author --> GitHub ID (as far as we know it)
  • Page contents --> file contents

For example, a page named CHinst by albert in version 1 of date 1495729526 should become a file of the same name, author aaaaalbert, and appropriate commit message / timestamp.

The same page name in version 2 of date 1495814460 should go to the same file name, again with appropriate message / timestamp.

Thus, the conversion needs to start with the earliest Trac timestamp, and work its way forward in time.


Here is how I generate the wiki dump (generally following the ideas in https://gist.github.com/sgk/1286682 ):

import sqlite3
import pickle

SQL = '''
  select
      name, version, time, author, text, comment
    from
      wiki w
'''

conn = sqlite3.connect('trac.db')
result = conn.execute(SQL)
outfile = open("trac_wiki_dump.pickle", "wb")
outlist = []
for line in result:
  outlist.append(line)

pickle.dump(outlist, outfile)
outfile.close()

Is it possible to lock the repy application files to prevent modification?

It's come to my attention that the RePy application files are mutable due to a student injecting stuff into the repy.py file as one of their attack cases.

While that is a good attack, I do think it might be good to have a method of preventing that as depending on how it was done it could corrupt the build. While this student cleaned up after themselves and provided a script to sanitize the repy.py file others might not have the foresight and it might create problems.

Loop through AB storage reference monitors on Windows

Under this section in the AB storage assignment part two, it says:

Then you can type the following in the bash shell to execute the testcases with the reference monitors:

for referencemonitor in reference_monitor_*; do for testcase in <net_id>_*; do python repy.py restrictions.default encasementlib.r2py $referencemonitor $testcase; done; done

This will print out the output from each program.

If you want to spot the referencemonitor that failed during the test run, you could add debug print statements during run as follows,

for referencemonitor in reference_monitor_*; do echo $referencemonitor under test; for testcase in <net_id>_*; do python repy.py restrictions.default encasementlib.r2py $referencemonitor $testcase; done; done

This will print out the name of each reference monitor before it starts executing the testcases against it.

If you are a Windows user and you create your own solution that does the same thing, please post it on the forum.

Here is the equivalent command on Windows:

FOR %r IN (reference_monitor_*) DO @FOR %a IN (<net_id>_*) DO @python repy.py restrictions.default encasementlib.r2py %r %a

If you want the code to echo the name of each reference monitor:

FOR %r IN (reference_monitor_*) DO @(ECHO %r under test & FOR %a IN (<net_id>_*) DO @python repy.py restrictions.default encasementlib.r2py %r %a)

Convert files to use Markdown formatting

The documentation files should be updated to use Markdown. This involves renaming them to use the .md file extension, but also converting the previoous Trac wiki markup.

However, see also #2 --- don't go and blindly convert things. Start with RepyV1/2 docs+tutorial, clearinghouse, custom installer builder docs. Then proceed to the other things.

Any help is appreciated! Just add your GiHub handle and the page you will be converting as a comment below.

You can use the tractomd.py-script for some limited automatic conversion!

scaffolding threads

It would be good to have a simple exercise/tutorial to get students more comfortable with using threads. A complete solution to the security exercises assumes a good knowledge of threads and how to apply them. Many students may have this knowledge, so I view this as filling in a gap for some students.

Add an intro / TOC page

We should have a "landing page" of sorts so that readers are guided through / pointed at appropriate places to start learning about Seattle. The Trac wiki start page could be a starting point.

Test failures on fresh install

I've cloned + built the the project, but am seeing errors when running the suggested tests. This is the output for the Affix component when running python utf.py -a from ~/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR on fresh install:

Note : I'm running this with Python 2.7.11 :: Anaconda 4.0.0 (x86_64).

Some of the errors I see have issues already opened: SeattleTestbed/affix#69, so I wonder if the tests are a good source of information about correct setup?

Please advise.

TEST_TARGET_DIR [master] $ python utf.py -a
Testing module: affix
	Running: ut_affix_canihear_advertise_emptyresponse.r2py     [ PASS ]
	Running: ut_affix_canihear_advertise_error.r2py             [ PASS ]
	Running: ut_affix_coord-nat_multiple_conn_tcp.r2py          [ PASS ]
	Running: ut_affix_coord-nat_simple_udp.r2py                 [ PASS ]
	Running: ut_affix_coordination-nat.r2py                     [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "repy.py", line 133, in execute_namespace_until_completion
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 957, in __do_func_call
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "ut_affix_coordination-nat.r2py", line 53, in <module>
  "coordinationaffix.r2py", line 200, in openconnection
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emulcomm.py", line 1382, in openconnection
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emulcomm.py", line 1232, in _timed_conn_initialize

User traceback:
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "ut_affix_coordination-nat.r2py", line 53, in <module>
  "coordinationaffix.r2py", line 200, in openconnection

Exception (with class 'exception_hierarchy.ConnectionRefusedError'): The connection was refused!
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
Standard out :
..............................Produced..............................

..............................Expected..............................
Test Passed

--------------------------------------------------------------------------------
	Running: ut_affix_coordination-noop.r2py                    [ PASS ]
	Running: ut_affix_logging_tryallmethods.r2py                [ PASS ]
	Running: ut_affix_makemehear_works.r2py                     [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emultimer.py", line 113, in wrapped_func
  "ut_repyv2api_tcpconnectiontest.r2py", line 87, in launch_server
  "coordinationaffix.r2py", line 91, in listenforconnection
  "makemehearaffix.r2py", line 132, in listenforconnection

User traceback:
  "ut_repyv2api_tcpconnectiontest.r2py", line 87, in launch_server
  "coordinationaffix.r2py", line 91, in listenforconnection
  "makemehearaffix.r2py", line 132, in listenforconnection

Exception (with class 'exception_hierarchy.AddressBindingError'): MakeMeHearAffix: Error looking up or contacting canihear servers. Exception encountered: CanIHearError('Did not find any servers advertising canihear',)
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
	Running: ut_affix_namingandresolveraffix-works.r2py         [ PASS ]
	Running: ut_affix_natforwarder_exceedclientlimit.r2py       [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "repy.py", line 133, in execute_namespace_until_completion
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 957, in __do_func_call
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "ut_affix_natforwarder_exceedclientlimit.r2py", line 57, in <module>
  "tcprelayaffix.r2py", line 168, in openconnection

User traceback:
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "ut_affix_natforwarder_exceedclientlimit.r2py", line 57, in <module>
  "tcprelayaffix.r2py", line 168, in openconnection

Exception (with class 'exception_hierarchy.TimeoutError'): Connection timed out while negotiating connection with the forwarder '192.168.0.4:12345'.
---

..............................Expected..............................
Unable to connect to any NAT Forwarder.

--------------------------------------------------------------------------------
Standard out :
..............................Produced..............................
[1538233218.3811] INFO: Started TCP NAT Forwarder listener on '192.168.0.4' port '12345'
[1538233231.1602] INFO: Incoming connection from '192.168.0.4:63100'
[1538233231.1605] INFO: Got connection from 192.168.0.4:63100
[1538233231.1962] DEBUG: 192.168.0.4:63100 said REGISTER_NAT_SERVER,192.168.0.4:63100
[1538233231.1968] INFO: Server '192.168.0.4:63100' at 192.168.0.4:63100 requesting to register
[1538233231.1971] DEBUG: Registered server 192.168.0.4:63100
[1538233231.2022] INFO: Registered server '192.168.0.4:63100' at 192.168.0.4:63100 successfully. 18 server slots remain.
First conn
[1538233239.1085] INFO: Incoming connection from '192.168.0.4:63101'
[1538233239.1086] INFO: Got connection from 192.168.0.4:63101
[1538233239.1091] DEBUG: 192.168.0.4:63101 said INITCONN_CLIENT,192.168.0.4:63100
[1538233239.1092] INFO: Received a request from client '192.168.0.4:63101' to connect to a server.
[1538233239.1095] INFO: Incoming TCP connection request from '192.168.0.4:63101' for server '192.168.0.4:63100'

..............................Expected..............................
0 server slots remain.
Max servers reached.

--------------------------------------------------------------------------------
	Running: ut_affix_natforwarder_exceedserverlimit.r2py       [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emultimer.py", line 113, in wrapped_func
  "ut_affix_natforwarder_exceedserverlimit.r2py", line 123, in tcp_forwarder_listener
  "ut_affix_natforwarder_exceedserverlimit.r2py", line 612, in logmsg

User traceback:
  "ut_affix_natforwarder_exceedserverlimit.r2py", line 123, in tcp_forwarder_listener
  "ut_affix_natforwarder_exceedserverlimit.r2py", line 612, in logmsg

Exception (with type 'exceptions.AttributeError'): ImportedModule instance has no attribute 'time_seconds_from_1900_to_1970'
---

..............................Expected..............................
Unable to connect to any NAT Forwarder.

--------------------------------------------------------------------------------
Standard out :
..............................Produced..............................
Setting up NAT forwarder.
NAT forwarder started.

..............................Expected..............................
0 server slots remain.
Max servers reached.

--------------------------------------------------------------------------------
	Running: ut_affix_natforwarder_serversocketcloseduringsetup.r2py [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emultimer.py", line 113, in wrapped_func
  "ut_affix_natforwarder_serversocketcloseduringsetup.r2py", line 118, in tcp_forwarder_listener
  "ut_affix_natforwarder_serversocketcloseduringsetup.r2py", line 607, in logmsg

User traceback:
  "ut_affix_natforwarder_serversocketcloseduringsetup.r2py", line 118, in tcp_forwarder_listener
  "ut_affix_natforwarder_serversocketcloseduringsetup.r2py", line 607, in logmsg

Exception (with type 'exceptions.AttributeError'): ImportedModule instance has no attribute 'time_seconds_from_1900_to_1970'
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
	Running: ut_affix_natforwarder_subsequentsessions.r2py      [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emultimer.py", line 113, in wrapped_func
  "ut_repyv2api_tcpconnectiontest.r2py", line 87, in launch_server
  "tcprelayaffix.r2py", line 216, in listenforconnection

User traceback:
  "ut_repyv2api_tcpconnectiontest.r2py", line 87, in launch_server
  "tcprelayaffix.r2py", line 216, in listenforconnection

Exception (with class 'exception_hierarchy.AddressBindingError'): AddressBindingError('Could not find any usable source port in the range [63115] on IP address 192.168.0.4.',)
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
	Running: ut_affix_noop.r2py                                 [ PASS ]
	Running: ut_affix_openconnectioncoordinationaffix.r2py      [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emultimer.py", line 113, in wrapped_func
  "ut_repyv2api_tcpconnectiontest.r2py", line 57, in connect_and_send_message
  "coordinationaffix.r2py", line 200, in openconnection
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emulcomm.py", line 1382, in openconnection
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emulcomm.py", line 1232, in _timed_conn_initialize

User traceback:
  "ut_repyv2api_tcpconnectiontest.r2py", line 57, in connect_and_send_message
  "coordinationaffix.r2py", line 200, in openconnection

Exception (with class 'exception_hierarchy.ConnectionRefusedError'): The connection was refused!
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
	Running: ut_affix_simple-coordination.r2py                  [ PASS ]
	Running: ut_affix_simple-natpunch.r2py                      [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emultimer.py", line 113, in wrapped_func
  "ut_affix_simple-natpunch.r2py", line 27, in server
  "tcprelayaffix.r2py", line 216, in listenforconnection

User traceback:
  "ut_affix_simple-natpunch.r2py", line 27, in server
  "tcprelayaffix.r2py", line 216, in listenforconnection

Exception (with class 'exception_hierarchy.AddressBindingError'): AddressBindingError("Unable to connect to any NAT Forwarder (['128.223.8.113:63161']) using localip/actual_ip:localport 192.168.0.4/192.168.0.4:12345",)
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
	Running: ut_affix_simple-noop.r2py                          [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "repy.py", line 133, in execute_namespace_until_completion
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 957, in __do_func_call
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "ut_affix_simple-noop.r2py", line 52, in <module>
  "baseaffix.r2py", line 207, in openconnection
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emulcomm.py", line 1382, in openconnection
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/emulcomm.py", line 1247, in _timed_conn_initialize

User traceback:
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "ut_affix_simple-noop.r2py", line 52, in <module>
  "baseaffix.r2py", line 207, in openconnection

Exception (with class 'exception_hierarchy.TimeoutError'): Timed-out connecting to the remote host!
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
Standard out :
..............................Produced..............................

..............................Expected..............................
Test Passed

--------------------------------------------------------------------------------
Testing module: affixframework
	Running: ut_affixframework_build-empty-stack.r2py           [ PASS ]
	Running: ut_affixframework_create_affix_bad_arg.r2py        [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "repy.py", line 133, in execute_namespace_until_completion
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 957, in __do_func_call
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "ut_affixframework_create_affix_bad_arg.r2py", line 4, in <module>
  "dylink.r2py", line 433, in _dy_import_module
  "dylink.r2py", line 325, in dylink_import_module
  "dylink.r2py", line 135, in _dy_module_code

User traceback:
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "ut_affixframework_create_affix_bad_arg.r2py", line 4, in <module>
  "dylink.r2py", line 433, in _dy_import_module
  "dylink.r2py", line 325, in dylink_import_module
  "dylink.r2py", line 135, in _dy_module_code

Exception (with class '.RepyImportError'): Failed to locate the module! Module: 'affixmisc.r2py' Cannot openfile non-existent file "affixmisc.r2py" without creating it!
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
Standard out :
..............................Produced..............................

..............................Expected..............................
PASS

--------------------------------------------------------------------------------
	Running: ut_affixframework_create_invalid_affix.r2py        [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "repy.py", line 133, in execute_namespace_until_completion
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 957, in __do_func_call
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "ut_affixframework_create_invalid_affix.r2py", line 4, in <module>
  "dylink.r2py", line 433, in _dy_import_module
  "dylink.r2py", line 325, in dylink_import_module
  "dylink.r2py", line 135, in _dy_module_code

User traceback:
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "ut_affixframework_create_invalid_affix.r2py", line 4, in <module>
  "dylink.r2py", line 433, in _dy_import_module
  "dylink.r2py", line 325, in dylink_import_module
  "dylink.r2py", line 135, in _dy_module_code

Exception (with class '.RepyImportError'): Failed to locate the module! Module: 'affixmisc.r2py' Cannot openfile non-existent file "affixmisc.r2py" without creating it!
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
Standard out :
..............................Produced..............................

..............................Expected..............................
PASS

--------------------------------------------------------------------------------
	Running: ut_affixframework_createaffix.r2py                 [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "repy.py", line 133, in execute_namespace_until_completion
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 957, in __do_func_call
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "ut_affixframework_createaffix.r2py", line 7, in <module>
  "dylink.r2py", line 433, in _dy_import_module
  "dylink.r2py", line 325, in dylink_import_module
  "dylink.r2py", line 135, in _dy_module_code

User traceback:
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "ut_affixframework_createaffix.r2py", line 7, in <module>
  "dylink.r2py", line 433, in _dy_import_module
  "dylink.r2py", line 325, in dylink_import_module
  "dylink.r2py", line 135, in _dy_module_code

Exception (with class '.RepyImportError'): Failed to locate the module! Module: 'affixmisc.r2py' Cannot openfile non-existent file "affixmisc.r2py" without creating it!
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
Standard out :
..............................Produced..............................

..............................Expected..............................
PASS

--------------------------------------------------------------------------------
	Running: ut_affixframework_push_affix.r2py                  [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "repy.py", line 133, in execute_namespace_until_completion
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 957, in __do_func_call
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "ut_affixframework_push_affix.r2py", line 13, in <module>

User traceback:
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "ut_affixframework_push_affix.r2py", line 13, in <module>

Exception (with type 'exceptions.TypeError'): __init__() takes exactly 2 arguments (1 given)
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
Standard out :
..............................Produced..............................

..............................Expected..............................
PASS

--------------------------------------------------------------------------------
	Running: ut_affixframework_register_affix.r2py              [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "repy.py", line 133, in execute_namespace_until_completion
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 957, in __do_func_call
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "ut_affixframework_register_affix.r2py", line 7, in <module>
  "dylink.r2py", line 433, in _dy_import_module
  "dylink.r2py", line 325, in dylink_import_module
  "dylink.r2py", line 135, in _dy_module_code

User traceback:
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "ut_affixframework_register_affix.r2py", line 7, in <module>
  "dylink.r2py", line 433, in _dy_import_module
  "dylink.r2py", line 325, in dylink_import_module
  "dylink.r2py", line 135, in _dy_module_code

Exception (with class '.RepyImportError'): Failed to locate the module! Module: 'affixmisc.r2py' Cannot openfile non-existent file "affixmisc.r2py" without creating it!
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
Standard out :
..............................Produced..............................

..............................Expected..............................
PASS

--------------------------------------------------------------------------------
	Running: ut_affixframework_register_parallel_affix.r2py     [ FAIL ]
--------------------------------------------------------------------------------
Standard error :
..............................Produced..............................
---
Uncaught exception!
---
Following is a full traceback, and a user traceback.
The user traceback excludes non-user modules. The most recent call is displayed last.

Full debugging traceback:
  "repy.py", line 133, in execute_namespace_until_completion
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 957, in __do_func_call
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/namespace.py", line 1219, in wrapped_function
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/virtual_namespace.py", line 116, in evaluate
  "/Users/person/Code/infosec/repy_v2/DEPENDENCIES/affix/scripts/TEST_TARGET_DIR/safe.py", line 610, in safe_run
  "ut_affixframework_register_parallel_affix.r2py", line 7, in <module>
  "dylink.r2py", line 433, in _dy_import_module
  "dylink.r2py", line 325, in dylink_import_module
  "dylink.r2py", line 135, in _dy_module_code

User traceback:
  "dylink.r2py", line 544, in <module>
  "dylink.r2py", line 405, in dylink_dispatch
  "dylink.r2py", line 518, in evaluate
  "ut_affixframework_register_parallel_affix.r2py", line 7, in <module>
  "dylink.r2py", line 433, in _dy_import_module
  "dylink.r2py", line 325, in dylink_import_module
  "dylink.r2py", line 135, in _dy_module_code

Exception (with class '.RepyImportError'): Failed to locate the module! Module: 'affixmisc.r2py' Cannot openfile non-existent file "affixmisc.r2py" without creating it!
---

..............................Expected..............................
None
--------------------------------------------------------------------------------
Standard out :
..............................Produced..............................

..............................Expected..............................
PASS

--------------------------------------------------------------------------------
Testing module: repyv2api
	Running: ut_repyv2api_tcpconnectiontest.r2py                [ PASS ]

Broken Link To Paper

Hi, I noticed that you had a broken link in ABStorageOne assignment to one of your papers

The following link is an excellent source for information about security layers: [http://isis.poly.edu/~jcappos/papers/cappos_seattle_ccs_10.pdf]

Assignment instructions are confusing causing problems with online format class

In the last semester, it became apparent that the instructions in docs/EducationalAssignments/ are often confusing, and do not cover the scope of what is required during the assignment.

Most common issue was that the instructions don't do a good enough job of introducing the compatibility requirements that need to be built into the reference monitor so it will not break the functionality of the entire environment.

Example: The majority of students failed to build their reference monitor with support for cases when the file was reopened after closing. This caused issues during the second assignment, when we could not test the quality of the security monitor, because they had not understood the whole scope of the assignment.

Online format classes aggravate this issue significantly. I propose clarifying the requirements of the assignments for future classes. I will also volunteer myself to do so if there is no other candidate.

Custominstallerbuilder docs should use SeattleTestbed/installer-packaging

The current custominstallerbuilder ("CIB") documentation does not reflect the latest changes to the process of building new base installers. I'll sketch below what high-level information is helpful to understand the overall build/ship workflow, and what specific steps the documentation should mention.


Preliminaries

The CIB does two interesting things dynamically: It creates a vesselinfofile (given a user session), and adds it to a pregenerated (g)zip archive. The resulting archive is a customized installer which is cashed and can be re-downloaded under a static URL.

The pregenerated (g)zip file is called a "base installer", i.e. a Seattle installer without the vesselinfo.This file must be re-generated whenever the Seattle version is updated, but note that updating it is not part of the function or role of the CIB: The CIB only needs the end result which is an updated set of base installers. The installer packaging tools exist for generating base installers.

It doesn't matter to the CIB where (e.g. on which machine, by which user, in which subdir) exactly its base installers are created. What matters is that the base installer files are copied into a preconfigured directory where the CIB expects them.

Setting up CIB for the first time

  • git clone the CIB repo
  • Run the buildscripts to generate a Repy runtime for the CIB. (This local runtime is totally independent and separate of the runtimes that are included in a typical Seattle base installer, although it likely uses identical copies of many Seattle files as the base installer contains.)
  • Configure the CIB Django project.
  • Configure Apache and mod_wsgi to make the CIB accessible from the Web.

This yields a CIB that does not have base installers yet.

Build new base installers

See also https://github.com/SeattleTestbed/installer-packaging/blob/master/README.md . You'd also do this when a new Seattle version should be shipped.

  • git clone https://github.com/SeattleTestbed/installer-packaging.git
  • Run the buildscripts
  • Run the packaging script

Putting CIB and base installers together

Lastly, copy the base installers into the directory that the CIB expects.

Create instructions for Git + Python on Windows

Our buildscripts require Python and Git to work together. Setting up these on Windows can be tricky, especially regarding how / where Python is added to the $PATH environment variable, is / isn't installed for all users, and so on.

We should perhaps find one or two simple, standardized use cases that we document in a step-by-step tutorial.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.