Note
This project is undergoing active development. There is no official release date as of now. Stand by.
SPYGAZER (PeekingGlass Server) is an HTTP application layer (L7) webserver aimed at establishing an informational collective dominion over the current subnetwork in which it is configured/hosted.
- Informational Collective Dominion - the substratum in which SPYGAZER operates is as follows: Have a "spyglass view" of the current network in which the PeekingGlass HTTP TCP/IP server has been established.
-
Bottle - a lightweight WSGI micro web-framework used by the web application for path/request routing functionality.
- Web Server Gateway Interface (WSGI) - standard specification (PEP 3333) upon which servers and python web applications/frameworks can communicate. Read more here.
-
Bootstrap - for the user-interface, files are hosted statically by SPYGAZER.
-
gevent
,geventwebsocket
- for server-side request routing throughout the front-end (Bottle) web application server. -
Client-side Javascript for communicating with the python WSGI websocket server.
-
Made with ❤️
To be determined.
The associated documentation will be available/produced as:
-
A
.pdf
(Portable Document File) file subsequently made accessible when the project is open sourced with a public release coming in version 1.0.0. -
A Github markdown based "wiki" page. (NOTE: This will be posted shortly after the
.pdf
file is integrated into this public repository) -
Each subsequent main route (i.e, /spygazer/subshell, /spygazer/dashboard) will have available help upon clicking the associated button.
- This will include general documentation for the current page, and a listing breakdown of the functionality of said page.
- Documentation for the entire SPYGAZER web application may be built into the server directory itself at a later point in time.
Warning
All images depicted are a work-in progress and are not final.
- Live animated background.
- Real-time server updates within the dashboard viewport panel.
- This will be integrated into the main dashboard before release.
- Added the ability to search through processes for information which concerns the following:
- Name of the process.
- Status of the process: Running, Sleeping, Idle. (ALL supported process state types can be seen in the image below)
- Process states can be filtered with the click of a button via the "Process Stats" dropdown menu within the Process Managers sub-window context.
- ANY/* other text that is contained within the bounds of the process container.
- Support for CSS (Cascading Style Sheets) font-family and font-size custom user defined declarations via JavaScript DOM manipulation will come before release.
Note
For remote clients using a mobile device, custom JavaScript and CSS styling has been built into the application beyond that of the original bootstrap base functionality. This will correctly position elements justly to accomodate for a narrower virtual viewport.
psutli_test.py
- Totally not a typo ;)
-
Command execution on the fly.
-
In-built Python3 script manager (run, import).
-
Server wide shutdown capability (must provide server shutdown key).
-
Variable range text marking (highlighting).
- Useful for color coding specific lines, characters or entire fields of text within the bounds of the console context.
-
Quick-access color customization options.
- No need to access the navigation bar "Terminal Settings" in order to change color options.
-
Command and UI based
clear
functionality.- Recursively delete the necessary child-elements to "reset" the screen origin back to default behavior.
- NOTE: Default behavior = reloading the URI
/spygazer/subshell
- NOTE: Default behavior = reloading the URI
- Recursively delete the necessary child-elements to "reset" the screen origin back to default behavior.
-
"Click-back" to console/terminal for responsive minimization of the navagation bar.
- Allows both mobile and desktop operators to actively reposition the navbar when resuming console command invocations.
-
Back-end websocket server network status (ONLINE/OFFLINE) profiling detection.
-
Custom packet crafted Traceroute/ICMP facilities to extrapolate information pertaining to the functionality of the websocket server.
Above Image: When testing in the latest release of the Firefox
web browser.