MOSREF provides a secure, portable and dynamic environment for the development, deployment and management of network and host security auditing tools.
Be the first to post a text review of Mosquito SREF. Rate and review a project by clicking thumbs up or thumbs down in the right column.
- 7/29/2006, MOSREF Beta Three * Fixed a bug in lib/socks-server related to parsing shared authentication secrets. * The proxy command now accepts an optional shared authentication secret. * Report failed affiliation attempts and reset state. * The nodes command no longer causes a node to assign a listener port number if one has not been previously assigned. * Modified the network monitor to handle EWOULDBLOCK correctly -- this signal occurs frequently on win32 when under load. * Modified the bridge monitor to silently drop fail messages. * Fixed spawn-command to properly close when the child does. * Modified the shell command to no longer require the sword-of-damocles trick. - 7/28/2006, MOSREF Scanner Improvements * Added (peer-addr stream), and altered network monitor to use getpeername to detect a successful connection instead of the less portable technique of sending zero bytes. * MOSVM will automatically expand the number of file descriptors available to MOSVM to the maximum permitted for the current user on POSIX systems. * Added (close-stream stream), which immediately closes the specified stream. Unlike (send 'close stream), this will not permit the continued transmission of queued data. * Fixed erroneous help documentation for scan. * Fixed recover command; now correctly uses the edge node, not the current node for the listener. * Worker processes in the scanner use a randomized initial delay in an effort to ease impact on weak TCP/IP implementations. Previously, the workers would start in a synchronized fashion, initiating up to a thousand connections at the same time. * Adjusted the scanner defaults in favor of higher reliability, lower speed scanning. * On successful affiliation, the peer address of the node is reported to the console. - 7/23/2006, MOSREF Drone Recovery * When a bridge is closed, all lanes and the bridge-lanes channel are sent a close notification. * When a drone loses connection, all console displays are notified with an alert, and the drone is marked as offline. * When a command attempts to transmit a command to an offline node, an error is posted and the command rejected. * The mosref command now considers the initial address and port arguments optional. The user may subsequently use set addr and set port. * The old prompt for windows users has been removed. * The cp command now defaults to the console, instead of the current node, for file location. * The drone command now defaults to the console, instead of the current node, for file location. * Renamed mosref/base to mosref/transport. * Merged mosref/endpoint into mosref/transport. * close-listener now causes the listener to emit a close message. * MOSREF console now exits when the last display closes. * Moved old set behavior to with. * Added a simpler set command that simply updates the property without possibly resetting it. * Modified shell parser to recognize x=y as set x=y * Revised the drone command to use patch and listener, to broker multiple control connections to a single port. * Added a clear command that clears one or more properties on the current node. * Added (channel-prepend! channel value) to core primitives. * Added mosref/listener module, which manages multiple session listeners grouped by ports and selected by a random 16 byte session key. * Added mosref/patch module. * Added (patch in out) to mosref/patch, which spawns a process that will transmit all data received from an input to an output until the input signals a close. ( The close will be forwarded, as well. ) * Added (patch2 left right) to mosref/patch, which patches left to right and right to left. * Consoles tag themselves with a platform. * Drones tag themselves with a platform after they complete affiliation. * When a node tries to construct a listener for the first time, if a portno has not been assigned, it will randomly select one. * Replaced ad-hoc property parsers, validators and formatters with a more formal property specification framework. * The service identification number and console ecdh key associated with a drone node is now stored in the drone record. * Drone node records are now created before the server waits for the drone. * After affiliation, drone records are updated with online status. * The recover command causes a node to listen again for the affiliation of a known offline drone. - 7/20/2006, MOSREF Drone Proxying * Added lib/socks-server, a partial implementation of logic required for implementing a SOCKS4 proxy server. * Added (format-socks4-response granted portno addr) to lib/socks-server * Added (parse-socks4-request str) -> (auth proto addr portno) to lib/socks-server * Added the proxy command, which creates a proxy on the console that forwards incoming TCP connections to the current node. * Added lib/socks-client, an implementation of a socks4 client library. * Added spawn-socks4-proxy to lib/socks-server, an extensible socks4 proxy. * Added close support to lanes in lib/bridge; sending close to a lane will cause the remote lane to receive a close message and the respective xmit recv tags to be reclaimed. Note that this is a "half-close", both sides must send 'close to completely remove themselves from the bridge. - 7/17/2006, MOSREF Drone Bridges * Added (make-reserved-lane bridge) -> lane to lib/bridge; unlike make-lane, lanes created on one end of a bridge do not appear in the bridge-lanes channel on the remote end -- they must be picked up with find-reserved-lane * Added (find-reserved-lane bridge tag) -> lane to lib/bridge * Exposed (lane-tag lane) -> str from lib/bridge * Added test cases for find-reserved-lane, lane-tag and make-reserved-lane to * Added properties to nodes, and the set command to manage properties. * Added (node-tcp-listen node portno) to mosref/cmd/drone; yields a list of close-func and lanes containing information received by a remote tcp listener. * Drones may now act as bridges for other drones by tunnelling the control protocol for the remote drone inside the control protocol for the bridging drone. - 7/16/2006, MOSREF Shell Refactor All commands for the MOSREF shell can now be found in mosref/cmd/<verb>.ms; the drone programs required to implement these commands are included in the command modules, instead of cluttering the mosref/node module. The overall intent is to greatly simplify the effort required to add new commands. - 7/15/2006, MOSREF Drone Port Scanning * Added the scan command to the mosref shell to perform TCP port scans from the current node. * Overhauled the scan task generator in mosref/scanner to generate scan tasks in constant memory. - 7/15/2006, Generic Iteration With the introduction of coroutines, it has become obvious that lib/iterate is too rooted in the old Lisp notion of map and for-each. All of the functions in lib/iterate -- except for find, list-index, and find-tail -- now accept dictionaries, sets, and functions instead of just lists. Functions are called each time the iterator wants an item, and may throw 'done to indicate that they are out of items. * Added lib/catch, which contains macros to simplify writing guards. * Added (catch-cond conds stmt ..) to lib/catch * Added (catch-case cases stmt ..) to lib/catch * Added (join-iters iter0 iterN ..) -> iter to lib/iterate * Added (integer-range min max) -> iter to lib/iterate - 7/14/2006, Multiple Monitors Multiple monitors may now wait on a single channel -- this is needed by the mosref scanner, since a single channel is expected to generate work for multiple workers. Now, when more than one process is waiting on an empty channel, the first process to wait on the channel will get the next event, and so on, in a round robin fashion. For simplicity, it is no longer possible a process to wait on multiple channels. This was only used in unit tests in MOSVM and MOSREF, and was of limited utility. * removed prev and next members from channel * replaced channel monitor member with first_mon, last_mon * modified mqo_is_stream_reading to use first_mon, not monitor member. * modified mqo_add_monitor to support multiple monitors * modified mqo_remove_monitor to support multiple monitors * renamed mqo_clear_monitors to mqo_clear_monitor * modified mqo_clear_monitors to employ mqo_remove_monitor instead of taking direct action on the channel fields. * modified mqo_trace_channel to trace multiple monitors * modified uses in unit tests of multiple-wait. ( The wait/doom functions ) - 7/14/2006, Coroutines Added MOSREF's permutations generator can be very expensive in terms of memory, which means MOSVM's crude mark-and-sweep GC will consume increasing amounts of CPU time. ( O(n) ) Coroutines can moderate that cost, making scanning nodes much faster when dealing with large scan spaces. * Added the lib/coro module, which supplies a macro for defining coroutine generator functions. * Added the (define-coro formals . body) macro to lib/coro * Modified mosref/scanner to use coroutines to generate scan tasks.
- 7/29/2006, MOSREF Beta Three * Fixed a bug in lib/socks-server related to parsing shared authentication secrets. * The proxy command now accepts an optional shared authentication secret. * Report failed affiliation attempts and reset state. * The nodes command no longer causes a node to assign a listener port number if one has not been previously assigned. * Modified the network monitor to handle EWOULDBLOCK correctly -- this signal occurs frequently on win32 when under load. * Modified the bridge monitor to silently drop fail messages. * Fixed spawn-command to properly close when the child does. * Modified the shell command to no longer require the sword-of-damocles trick. - 7/28/2006, MOSREF Scanner Improvements * Added (peer-addr stream), and altered network monitor to use getpeername to detect a successful connection instead of the less portable technique of sending zero bytes. * MOSVM will automatically expand the number of file descriptors available to MOSVM to the maximum permitted for the current user on POSIX systems. * Added (close-stream stream), which immediately closes the specified stream. Unlike (send 'close stream), this will not permit the continued transmission of queued data. * Fixed erroneous help documentation for scan. * Fixed recover command; now correctly uses the edge node, not the current node for the listener. * Worker processes in the scanner use a randomized initial delay in an effort to ease impact on weak TCP/IP implementations. Previously, the workers would start in a synchronized fashion, initiating up to a thousand connections at the same time. * Adjusted the scanner defaults in favor of higher reliability, lower speed scanning. * On successful affiliation, the peer address of the node is reported to the console. - 7/23/2006, MOSREF Drone Recovery * When a bridge is closed, all lanes and the bridge-lanes channel are sent a close notification. * When a drone loses connection, all console displays are notified with an alert, and the drone is marked as offline. * When a command attempts to transmit a command to an offline node, an error is posted and the command rejected. * The mosref command now considers the initial address and port arguments optional. The user may subsequently use set addr and set port. * The old prompt for windows users has been removed. * The cp command now defaults to the console, instead of the current node, for file location. * The drone command now defaults to the console, instead of the current node, for file location. * Renamed mosref/base to mosref/transport. * Merged mosref/endpoint into mosref/transport. * close-listener now causes the listener to emit a close message. * MOSREF console now exits when the last display closes. * Moved old set behavior to with. * Added a simpler set command that simply updates the property without possibly resetting it. * Modified shell parser to recognize x=y as set x=y * Revised the drone command to use patch and listener, to broker multiple control connections to a single port. * Added a clear command that clears one or more properties on the current node. * Added (channel-prepend! channel value) to core primitives. * Added mosref/listener module, which manages multiple session listeners grouped by ports and selected by a random 16 byte session key. * Added mosref/patch module. * Added (patch in out) to mosref/patch, which spawns a process that will transmit all data received from an input to an output until the input signals a close. ( The close will be forwarded, as well. ) * Added (patch2 left right) to mosref/patch, which patches left to right and right to left. * Consoles tag themselves with a platform. * Drones tag themselves with a platform after they complete affiliation. * When a node tries to construct a listener for the first time, if a portno has not been assigned, it will randomly select one. * Replaced ad-hoc property parsers, validators and formatters with a more formal property specification framework. * The service identification number and console ecdh key associated with a drone node is now stored in the drone record. * Drone node records are now created before the server waits for the drone. * After affiliation, drone records are updated with online status. * The recover command causes a node to listen again for the affiliation of a known offline drone. - 7/20/2006, MOSREF Drone Proxying * Added lib/socks-server, a partial implementation of logic required for implementing a SOCKS4 proxy server. * Added (format-socks4-response granted portno addr) to lib/socks-server * Added (parse-socks4-request str) -> (auth proto addr portno) to lib/socks-server * Added the proxy command, which creates a proxy on the console that forwards incoming TCP connections to the current node. * Added lib/socks-client, an implementation of a socks4 client library. * Added spawn-socks4-proxy to lib/socks-server, an extensible socks4 proxy. * Added close support to lanes in lib/bridge; sending close to a lane will cause the remote lane to receive a close message and the respective xmit recv tags to be reclaimed. Note that this is a "half-close", both sides must send 'close to completely remove themselves from the bridge. - 7/17/2006, MOSREF Drone Bridges * Added (make-reserved-lane bridge) -> lane to lib/bridge; unlike make-lane, lanes created on one end of a bridge do not appear in the bridge-lanes channel on the remote end -- they must be picked up with find-reserved-lane * Added (find-reserved-lane bridge tag) -> lane to lib/bridge * Exposed (lane-tag lane) -> str from lib/bridge * Added test cases for find-reserved-lane, lane-tag and make-reserved-lane to * Added properties to nodes, and the set command to manage properties. * Added (node-tcp-listen node portno) to mosref/cmd/drone; yields a list of close-func and lanes containing information received by a remote tcp listener. * Drones may now act as bridges for other drones by tunnelling the control protocol for the remote drone inside the control protocol for the bridging drone. - 7/16/2006, MOSREF Shell Refactor All commands for the MOSREF shell can now be found in mosref/cmd/<verb>.ms; the drone programs required to implement these commands are included in the command modules, instead of cluttering the mosref/node module. The overall intent is to greatly simplify the effort required to add new commands. - 7/15/2006, MOSREF Drone Port Scanning * Added the scan command to the mosref shell to perform TCP port scans from the current node. * Overhauled the scan task generator in mosref/scanner to generate scan tasks in constant memory. - 7/15/2006, Generic Iteration With the introduction of coroutines, it has become obvious that lib/iterate is too rooted in the old Lisp notion of map and for-each. All of the functions in lib/iterate -- except for find, list-index, and find-tail -- now accept dictionaries, sets, and functions instead of just lists. Functions are called each time the iterator wants an item, and may throw 'done to indicate that they are out of items. * Added lib/catch, which contains macros to simplify writing guards. * Added (catch-cond conds stmt ..) to lib/catch * Added (catch-case cases stmt ..) to lib/catch * Added (join-iters iter0 iterN ..) -> iter to lib/iterate * Added (integer-range min max) -> iter to lib/iterate - 7/14/2006, Multiple Monitors Multiple monitors may now wait on a single channel -- this is needed by the mosref scanner, since a single channel is expected to generate work for multiple workers. Now, when more than one process is waiting on an empty channel, the first process to wait on the channel will get the next event, and so on, in a round robin fashion. For simplicity, it is no longer possible a process to wait on multiple channels. This was only used in unit tests in MOSVM and MOSREF, and was of limited utility. * removed prev and next members from channel * replaced channel monitor member with first_mon, last_mon * modified mqo_is_stream_reading to use first_mon, not monitor member. * modified mqo_add_monitor to support multiple monitors * modified mqo_remove_monitor to support multiple monitors * renamed mqo_clear_monitors to mqo_clear_monitor * modified mqo_clear_monitors to employ mqo_remove_monitor instead of taking direct action on the channel fields. * modified mqo_trace_channel to trace multiple monitors * modified uses in unit tests of multiple-wait. ( The wait/doom functions ) - 7/14/2006, Coroutines Added MOSREF's permutations generator can be very expensive in terms of memory, which means MOSVM's crude mark-and-sweep GC will consume increasing amounts of CPU time. ( O(n) ) Coroutines can moderate that cost, making scanning nodes much faster when dealing with large scan spaces. * Added the lib/coro module, which supplies a macro for defining coroutine generator functions. * Added the (define-coro formals . body) macro to lib/coro * Modified mosref/scanner to use coroutines to generate scan tasks.
- 7/29/2006, MOSREF Beta Three * Fixed a bug in lib/socks-server related to parsing shared authentication secrets. * The proxy command now accepts an optional shared authentication secret. * Report failed affiliation attempts and reset state. * The nodes command no longer causes a node to assign a listener port number if one has not been previously assigned. * Modified the network monitor to handle EWOULDBLOCK correctly -- this signal occurs frequently on win32 when under load. * Modified the bridge monitor to silently drop fail messages. * Fixed spawn-command to properly close when the child does. * Modified the shell command to no longer require the sword-of-damocles trick. - 7/28/2006, MOSREF Scanner Improvements * Added (peer-addr stream), and altered network monitor to use getpeername to detect a successful connection instead of the less portable technique of sending zero bytes. * MOSVM will automatically expand the number of file descriptors available to MOSVM to the maximum permitted for the current user on POSIX systems. * Added (close-stream stream), which immediately closes the specified stream. Unlike (send 'close stream), this will not permit the continued transmission of queued data. * Fixed erroneous help documentation for scan. * Fixed recover command; now correctly uses the edge node, not the current node for the listener. * Worker processes in the scanner use a randomized initial delay in an effort to ease impact on weak TCP/IP implementations. Previously, the workers would start in a synchronized fashion, initiating up to a thousand connections at the same time. * Adjusted the scanner defaults in favor of higher reliability, lower speed scanning. * On successful affiliation, the peer address of the node is reported to the console. - 7/23/2006, MOSREF Drone Recovery * When a bridge is closed, all lanes and the bridge-lanes channel are sent a close notification. * When a drone loses connection, all console displays are notified with an alert, and the drone is marked as offline. * When a command attempts to transmit a command to an offline node, an error is posted and the command rejected. * The mosref command now considers the initial address and port arguments optional. The user may subsequently use set addr and set port. * The old prompt for windows users has been removed. * The cp command now defaults to the console, instead of the current node, for file location. * The drone command now defaults to the console, instead of the current node, for file location. * Renamed mosref/base to mosref/transport. * Merged mosref/endpoint into mosref/transport. * close-listener now causes the listener to emit a close message. * MOSREF console now exits when the last display closes. * Moved old set behavior to with. * Added a simpler set command that simply updates the property without possibly resetting it. * Modified shell parser to recognize x=y as set x=y * Revised the drone command to use patch and listener, to broker multiple control connections to a single port. * Added a clear command that clears one or more properties on the current node. * Added (channel-prepend! channel value) to core primitives. * Added mosref/listener module, which manages multiple session listeners grouped by ports and selected by a random 16 byte session key. * Added mosref/patch module. * Added (patch in out) to mosref/patch, which spawns a process that will transmit all data received from an input to an output until the input signals a close. ( The close will be forwarded, as well. ) * Added (patch2 left right) to mosref/patch, which patches left to right and right to left. * Consoles tag themselves with a platform. * Drones tag themselves with a platform after they complete affiliation. * When a node tries to construct a listener for the first time, if a portno has not been assigned, it will randomly select one. * Replaced ad-hoc property parsers, validators and formatters with a more formal property specification framework. * The service identification number and console ecdh key associated with a drone node is now stored in the drone record. * Drone node records are now created before the server waits for the drone. * After affiliation, drone records are updated with online status. * The recover command causes a node to listen again for the affiliation of a known offline drone. - 7/20/2006, MOSREF Drone Proxying * Added lib/socks-server, a partial implementation of logic required for implementing a SOCKS4 proxy server. * Added (format-socks4-response granted portno addr) to lib/socks-server * Added (parse-socks4-request str) -> (auth proto addr portno) to lib/socks-server * Added the proxy command, which creates a proxy on the console that forwards incoming TCP connections to the current node. * Added lib/socks-client, an implementation of a socks4 client library. * Added spawn-socks4-proxy to lib/socks-server, an extensible socks4 proxy. * Added close support to lanes in lib/bridge; sending close to a lane will cause the remote lane to receive a close message and the respective xmit recv tags to be reclaimed. Note that this is a "half-close", both sides must send 'close to completely remove themselves from the bridge. - 7/17/2006, MOSREF Drone Bridges * Added (make-reserved-lane bridge) -> lane to lib/bridge; unlike make-lane, lanes created on one end of a bridge do not appear in the bridge-lanes channel on the remote end -- they must be picked up with find-reserved-lane * Added (find-reserved-lane bridge tag) -> lane to lib/bridge * Exposed (lane-tag lane) -> str from lib/bridge * Added test cases for find-reserved-lane, lane-tag and make-reserved-lane to * Added properties to nodes, and the set command to manage properties. * Added (node-tcp-listen node portno) to mosref/cmd/drone; yields a list of close-func and lanes containing information received by a remote tcp listener. * Drones may now act as bridges for other drones by tunnelling the control protocol for the remote drone inside the control protocol for the bridging drone. - 7/16/2006, MOSREF Shell Refactor All commands for the MOSREF shell can now be found in mosref/cmd/<verb>.ms; the drone programs required to implement these commands are included in the command modules, instead of cluttering the mosref/node module. The overall intent is to greatly simplify the effort required to add new commands. - 7/15/2006, MOSREF Drone Port Scanning * Added the scan command to the mosref shell to perform TCP port scans from the current node. * Overhauled the scan task generator in mosref/scanner to generate scan tasks in constant memory. - 7/15/2006, Generic Iteration With the introduction of coroutines, it has become obvious that lib/iterate is too rooted in the old Lisp notion of map and for-each. All of the functions in lib/iterate -- except for find, list-index, and find-tail -- now accept dictionaries, sets, and functions instead of just lists. Functions are called each time the iterator wants an item, and may throw 'done to indicate that they are out of items. * Added lib/catch, which contains macros to simplify writing guards. * Added (catch-cond conds stmt ..) to lib/catch * Added (catch-case cases stmt ..) to lib/catch * Added (join-iters iter0 iterN ..) -> iter to lib/iterate * Added (integer-range min max) -> iter to lib/iterate - 7/14/2006, Multiple Monitors Multiple monitors may now wait on a single channel -- this is needed by the mosref scanner, since a single channel is expected to generate work for multiple workers. Now, when more than one process is waiting on an empty channel, the first process to wait on the channel will get the next event, and so on, in a round robin fashion. For simplicity, it is no longer possible a process to wait on multiple channels. This was only used in unit tests in MOSVM and MOSREF, and was of limited utility. * removed prev and next members from channel * replaced channel monitor member with first_mon, last_mon * modified mqo_is_stream_reading to use first_mon, not monitor member. * modified mqo_add_monitor to support multiple monitors * modified mqo_remove_monitor to support multiple monitors * renamed mqo_clear_monitors to mqo_clear_monitor * modified mqo_clear_monitors to employ mqo_remove_monitor instead of taking direct action on the channel fields. * modified mqo_trace_channel to trace multiple monitors * modified uses in unit tests of multiple-wait. ( The wait/doom functions ) - 7/14/2006, Coroutines Added MOSREF's permutations generator can be very expensive in terms of memory, which means MOSVM's crude mark-and-sweep GC will consume increasing amounts of CPU time. ( O(n) ) Coroutines can moderate that cost, making scanning nodes much faster when dealing with large scan spaces. * Added the lib/coro module, which supplies a macro for defining coroutine generator functions. * Added the (define-coro formals . body) macro to lib/coro * Modified mosref/scanner to use coroutines to generate scan tasks.
Be the first person to add a text review.
Copyright © 2009 Geeknet, Inc. All rights reserved. Terms of Use
Thanks for your rating!
Would you also like to write a review?
Thanks for your review!
Get credit for your review by logging in via OpenID. Click your account provider: