Commit Graph

291 Commits

Author SHA1 Message Date
MaxXor 3e457d8a06 Improved reusing of buffers after restarting listen 2015-06-05 23:27:59 +02:00
MaxXor 9aef2df7f7 Small fix 2015-06-05 23:12:10 +02:00
MaxXor 3bdd5aa294 Implemented pooled buffer manager to socket 2015-06-05 23:07:37 +02:00
MaxXor fcf25b76a0 Fixed #265 2015-06-05 18:40:15 +02:00
MaxXor 242ff96e7f Removed redundant variable 2015-06-04 20:09:19 +02:00
MaxXor 9085cd6cb6 Merge pull request #259 from yankejustin/ClientInputSafety
Better server validation
2015-06-03 20:05:48 +02:00
MaxXor 58b2c2d2d4 Fixed getting startup items with same name 2015-06-03 15:18:37 +02:00
yankejustin 2d083782fc Moved validation a bit higher
If the packet's "Filename" property is null or empty, we can avoid
making an unnecessary string for the downloadPath by placing the
validation above it.
2015-06-02 18:30:44 -04:00
yankejustin 81c9b238c8 MiscHandler validation
Added more restrictive validation for the "Misc" Handlers.
2015-06-02 18:21:15 -04:00
yankejustin bf5b517eca SurveillanceHandler validation
Added more restrictive validation for the "Surveillance" handlers.
2015-06-02 18:14:45 -04:00
yankejustin a4defce568 SystemHandler validation
Added more restrictive validation for the "System" handlers.
2015-06-02 18:06:16 -04:00
yankejustin 51464e6d28 Fixed possible server crash
If the client cannot give us anything, don't crash over it. :)
We can't use these entries so just leave.
2015-06-02 13:19:35 -04:00
MaxXor 836b77d13e Improved check for illegal chars in path 2015-06-01 18:50:20 +02:00
MaxXor 90f30caafb Improved Download Path
Using now "User@PC" instead of "IP".
2015-06-01 11:44:48 +02:00
MaxXor 42113fb1d8 Small change 2015-05-31 21:24:17 +02:00
MaxXor 0b55140bcf Fixed bug when server stops listening 2015-05-31 21:12:00 +02:00
MaxXor 51979463f5 Fixed Listview Column order (#248) 2015-05-31 20:36:40 +02:00
MaxXor f30ebef324 Fixed memory leak (#209) 2015-05-31 20:21:25 +02:00
MaxXor 3ff0b38585 Added #245
Improved client & server
closes #245
2015-05-31 19:22:00 +02:00
MaxXor 6a4125cf18 Added more documentation to Client 2015-05-30 09:23:35 +02:00
MaxXor f195e9fb51 Documentation fix 2015-05-30 08:47:27 +02:00
yankejustin a254164424 Documented OnClientState for Server's client
Added documentation for the Server's client's OnClientState.
2015-05-29 20:06:25 -04:00
yankejustin 978b64b564 Final tweaks to the server documentation 2015-05-29 20:02:06 -04:00
yankejustin 0f281d4af3 Added and fixed some server documentation
Changed a few lines of documentation and added some more documentation
on another part.
2015-05-29 19:59:54 -04:00
yankejustin 8edeb8b968 Added more documentation for the server
Added some more documentation for the Server's server object.
2015-05-29 19:55:13 -04:00
yankejustin 4be0073f83 Added documentation for the server
Added some documentation for the Server's server object.
2015-05-29 19:03:24 -04:00
yankejustin 5450421900 Added documentation for server's client
Added some documentation for the server's client object.
2015-05-29 18:39:18 -04:00
MaxXor 971708f17b Fixed small typo 2015-05-29 23:39:22 +02:00
MaxXor 5c6f6d89d7 Added missing file 2015-05-29 23:35:11 +02:00
MaxXor 39f9618f21 Fixed cross-thread issues & added lock to Clients
ref #231
2015-05-29 23:34:57 +02:00
MaxXor 556c2c46f9 Added static modifier 2015-05-29 10:27:18 +02:00
MaxXor 24673509c5 Partial fix #231 2015-05-29 00:25:40 +02:00
MaxXor 9d29ed9803 Merged changes from master 2015-05-27 22:49:00 +02:00
MaxXor 47de4f8aa0 Small corrections 2015-05-27 22:46:07 +02:00
yankejustin be78162f63 Changes to output handling of commands
Added an "IsError" property to the ShellCommandResponse to denote if the
response should be handled a certain way (if it is a response to a
ShellCommand error, then print it differently).
Also correctly queues up two different threads on shell initialization.
These ManualResetEvents now will signal the Shell's redirected output to
handle either the output, or the error output. Not at the same time
(will cause deadlocking).
We now append the text instead of concatenating. Not sure how much more
efficient this is, but it is certainly more readable.
2015-05-27 14:46:10 -04:00
d3agle 21b805518b #220 fix
Fixes disconnection/removal of clients when stopping listen server
2015-05-27 12:00:50 -05:00
Skid 902bdb5db3 Added Password Recovery
Password Recovery for Firefox (36+), Chrome, Yandex, Internet Explorer
and Opera
2015-05-27 23:57:57 +09:30
Skid 1d2b838b78 Password Recovery Server Side
Work in progress, so don't think this'll work
2015-05-27 21:00:35 +09:30
MaxXor bceaf04811 Added Removing of Programs from Autostart 2015-05-26 23:11:16 +02:00
MaxXor dbd95e4398 UPnP fix 2015-05-26 22:13:11 +02:00
d3agle 7e13fa080e small behavior fix #213 update 2015-05-26 14:55:23 -05:00
MaxXor 3e009117af Fixed #207 2015-05-26 19:35:28 +02:00
MaxXor c9facfc295 Added #121 (Update from File)
closes #121
2015-05-26 15:55:52 +02:00
MaxXor 6a6b253c0e Added extension methods 2015-05-22 22:12:30 +02:00
MaxXor a18e799f9a Merge pull request #162 from MaxXor/pr/161
Code Improvements
2015-05-21 20:55:15 +02:00
MaxXor 4fe601a87b Small changes to code 2015-05-21 20:35:57 +02:00
yankejustin 9e175378fc Must use static readonly instead of const
Instead of using const, we must use static readonly...
2015-05-21 12:23:54 -04:00
yankejustin 8cbab66bf8 Forgot to initialize const string array 2015-05-21 12:20:45 -04:00
yankejustin 21261270d8 Moved string array to class-level
Moved string array for file size units to a class-level const string
array for performance.
2015-05-21 12:14:41 -04:00
yankejustin 8b20dee5e1 More meaningful exceptions
FileSplit provides more meaningful exceptions.
2015-05-21 12:12:02 -04:00
UbbeLoL 6f316655dd Add support for mouse input for multiple monitors 2015-05-21 10:32:24 +02:00
yankejustin d022e55cc7 Slight performance boost
Break out of the loop when a subtype's derived type is found to match.
2015-05-20 09:52:26 -04:00
MaxXor 3a80b3459c Improved code readability in Renamer 2015-05-20 09:27:11 +02:00
d3agle 4e390742a5 IDisposable TypeloadException fix
Ignore renaming types that implement interfaces.

I hope this is the correct way to do this, I couldn't find a way to find
a specific interface to exclude from obfuscation
2015-05-19 18:06:10 -05:00
DragonzMaster 88f67c717a Small Change to Reverse Proxy
Changing the way was used to calculate send/received data by reverse
proxy
-This change will view the value with decimal point (2 num) to make the
values more accurate
-Changing the func name used from "GetFileSize" to "GetDataSize" ( Found
in xServer.Core.Helper )
2015-05-19 22:17:03 +02:00
yankejustin 983068e0ec Fixed redundant type specification
Fixed redundant type specification for the rest of the packets.
2015-05-18 21:53:25 -04:00
yankejustin 3990494d47 Fixed redundant type specification
Fixed redundant type specification for the server's packets.
2015-05-18 21:01:38 -04:00
yankejustin 6c12e0b7ec Respect the packet's type
One of the overloaded Send methods for the client and the server now
accepts the generic parameter.
2015-05-18 20:43:15 -04:00
MaxXor 8866103318 Reformatted UnsafeStreamCodec 2015-05-18 18:07:22 +02:00
yankejustin af20dd54e3 Disposing IDisposable Resources
Dispose of unmanaged resources used by the server's UnsafeStreamCodec
and JpgCompression (because it is pretty related to the
UnsafeStreamCodec). Made sure that the UnsafeStreamCodec was being
disposed of before being re-assigned.
Note: I did not reflect these changes to the client's UnsafeStreamCodec
because the implementation of the client's codec is a bit different in
the CommandHandler. This different implementation caused instability in
the client. In the server, I noticed decreased memory consumption and
decreased fluctuation in the memory used.
2015-05-18 01:10:25 -04:00
yankejustin af591e1d3a Formatted code of UnsafeStreamCodec
Formatted the code for UnsafeStreamCodec for readability and consistency
with the rest of the code in the program.
2015-05-18 00:37:12 -04:00
yankejustin d1e04a98a8 Removed clearing of local lists + setting to null
Setting objects to null would be optimized out. Clearing lists probably
would not be optimized out. There is no need to explicitly clear a list
of items or setting objects to null in C#. We must let the Garbage
Collector have its way.
2015-05-17 23:58:08 -04:00
yankejustin 95a271554b Removed unnecessary comment
Removed commented-out (archived) code.
2015-05-17 23:54:40 -04:00
yankejustin ab19a9fbef Make the lock readonly
Made the lock for the codec readonly. This makes it impossible for a
spot (excluding constructors) from touching the lock. Tampering with the
lock means that, if something acquires the lock and enters critical
code, the lock can be changed and the critical code's thread safety can
be violated.
2015-05-17 23:24:13 -04:00
MaxXor 4fcdf3b4d4 Merge pull request #141 from AnguisCaptor/master
Reverse Proxy Updates & Load Balancer
2015-05-16 21:22:09 +02:00
DragonHunter 42d7382fff Reverse Proxy Updates & Load Balancer
Added a Load Balancer, this will try balancing all the proxy connections
over multiple clients (keep refreshing ipchicken.com to see the cool
effect)
Resolve the DNS Hostname of the Target server at the Remote Client to
reduce DNS Leaks
2015-05-16 20:39:35 +02:00
MaxXor 6e49359542 Merge pull request #139 from yankejustin/SeparateCommandHandlers
Separated the command handlers
2015-05-16 18:27:25 +02:00
DragonHunter 4bdfb18b8e Improved Reverse Proxy UI
Ability to kill connections
Improved the refreshing of the OpenConnection ListView
2015-05-16 17:41:28 +02:00
yankejustin ac93887af3 Separated the CommandHandler
Divided the server's CommandHandler class into partial classes.
2015-05-15 21:15:44 -04:00
MaxXor ce72b4edc9 Revert "CPU/RAM usage of each process" 2015-05-15 18:58:50 +02:00
MaxXor a5f35130f6 Merge pull request #136 from yankejustin/CpuRamUsage
CPU/RAM usage of each process
2015-05-15 18:28:03 +02:00
MaxXor b7a8efc1ba Small change 2015-05-15 09:37:37 +02:00
yankejustin ae04753f0d Changed server packets for CPU and memory usage
Added two more properties on the GetProcessesResponse packet to provide
properties on CPU and memory usage.
2015-05-14 14:04:46 -04:00
yankejustin 464e6cc343 Changes to AsyncReceive
Improved a bit...
See if it fixed https://github.com/MaxXor/xRAT/issues/131
2015-05-14 13:39:29 -04:00
MaxXor 4b4c7d6441 Minor fixes 2015-05-14 11:06:17 +02:00
MaxXor 4aef0554ff Fixed disconnection of clients
fixed #125
2015-05-12 23:24:25 +02:00
d3agle a87c2bd153 Reverse Proxy Form fix 2015-05-10 12:42:17 -05:00
MaxXor c6afc0c24e Merge pull request #116 from MaxXor/pr/113
Added Socks5 Reverse Proxy
closes #103
2015-05-10 19:03:09 +02:00
MaxXor a2a5f59c67 Improved Reverse Proxy 2015-05-10 19:02:10 +02:00
DragonHunter 6b581b731c Fixed Stopping the proxy server
A error will occur when stopping the proxy server when there are clients
connected
2015-05-10 18:14:07 +02:00
MaxXor 11032266c9 Improved NoIP.org Integration 2015-05-10 18:11:22 +02:00
DragonHunter b7cad28b83 Tiny fix for class re-namer
Class re-namer fix for Reverse Proxy
2015-05-10 17:34:02 +02:00
DragonHunter ce7c75c56c More error checks & more reliable
Proxy is now more reliable and works a lot better
More error checks
2015-05-10 15:34:49 +02:00
DragonHunter ee74b6112d Initial release of the Reverse Proxy
Supports HTTPS
Supports Socks5
Tested both HTTPS and Socks5 with Proxifier
2015-05-10 13:11:27 +02:00
MaxXor e776e1dab9 Merge pull request #82 from yankejustin/master
Added documentation for the Server's Build folder
2015-05-05 20:01:21 +02:00
yankejustin ad115dd5cd Added documentation for Renamer
Added a little bit of documentation for the Server's Renamer.
2015-05-05 12:21:45 -04:00
yankejustin 7b5ef8a15c Added documentation for IconInjector
Added documentation for most of the Server's IconInjector.
2015-05-05 12:17:08 -04:00
yankejustin 7b2667d7ea Added documentation for Clientbuilder
Added documentation for the Server's ClientBuilder.
2015-05-05 12:08:20 -04:00
MaxXor e50ea69d43 Fixed crash when downloading files over 2MB (#75) 2015-05-05 09:19:08 +02:00
MaxXor b1ffa97a85 Added ability to enable/disable keylogger 2015-05-04 18:29:21 +02:00
MaxXor c39bff3a6f Merge pull request #73 from MaxXor/dev
Added Keylogger
2015-05-04 16:22:28 +02:00
MaxXor 7cb3a406ff Improved adding of new Logs to Listview 2015-05-03 13:38:46 +02:00
MaxXor e8d8e8d58e More fixes to Keylogger 2015-05-01 15:09:45 +02:00
MaxXor b1f6ba7ffd Correctly read and append blocks 2015-04-29 22:00:02 +02:00
MaxXor a08e002f84 Changed max packet size
Prevents crash in Remote Desktop for packets bigger than 1MB
2015-04-29 21:58:47 +02:00
d3agle f1942aa253 Fixed some logic
fixed a few logic errors
2015-04-23 10:46:54 -05:00
d3agle 62826a39e6 Added Hookless Keylogger
-added hookless keylogger class with unicode support
-logs on keylogger class are saved in html format
-added keylogger form using webbrowser to load the log as an html file
-added context menu keylogger option under surveillance
-started keylogger setting enable/disable on client file execution
(didn't complete this, wasn't sure how to do it properly.  just added
the setting in the settings class and in program class for the logic.
only thing left is the server side stuff)

left todo:
-encryption/decryption of logs if desired
-options to enable/disable when building client, etc...
2015-04-22 14:39:52 -05:00
MaxXor 0600ac1707 Removed unused variable 2015-04-22 15:52:58 +02:00
MaxXor c4b0ba3fc3 Fixed & improved some cross thread calls (#66) 2015-04-22 15:45:03 +02:00
MaxXor 64a9156d41 Added option to enable/disable Client Tooltips 2015-04-21 21:46:48 +02:00
Abdullah Saleem bfb20ce933 SystemInfo as ToolTip 2015-04-22 00:08:55 +05:00
MaxXor df5ce2f893 Fixed code formatting
Replaced all tabs in code with 4 spaces and did some general renaming.
2015-04-21 20:27:52 +02:00
MaxXor 3237a80924 Closed #60 2015-04-14 20:42:48 +02:00
MaxXor 21cdd34546 Removed redundant type cast 2015-04-14 20:36:32 +02:00
d3agle abd31f9a94 Fixed Remote Desktop Bug
Fixed a bug where changing resolutions while Remote Desktop is running
would crash both the client + server.  This fix ensures that the Remote
Desktop features continues to run accurately after changing resolutions
on the client.
2015-04-14 04:58:48 -05:00
MaxXor 27cda8f80b Fixed Remote Desktop crash
- Fixed Remote Desktop crash when using multiple monitors with different
resolution
2015-04-13 09:16:44 +02:00
MaxXor bc12b91f15 Fixed #52 2015-04-09 19:24:56 +02:00
Justin Yanke d495eddac5 Fixed a possible CrossThreadException
Fixed a potential CrossThreadException. Would have gotten an error if this method was called by a different Thread because FrmSi's 'lstSystem' would be accessed by the wrong Thread.
2015-04-09 12:46:12 -04:00
Justin Yanke 7acde73f3d Removed unnecessary null check
Removed unnecessary null check for FrmSi (already checked in the method).
2015-04-09 12:23:56 -04:00
yankejustin d5cb5b9c92 Performance and clean-up for both SafeQuickLZ
Slightly improved performance for the SafeQuickLZ on the server and
client, code clean-up, and consistency improvements.
2015-04-07 13:23:09 -04:00
yankejustin 295daca123 Some code consistency improvements
Made some code more consistent to the code in the solution.
2015-04-07 12:46:14 -04:00
yankejustin 8ecd568acf Fixed the loop that attempts to forward a port
If the endpoint was null, the loop would break anyways, not allowing up
to 5 retries (only got 1 try).
2015-04-07 12:38:34 -04:00
yankejustin b927aae0f8 Make sure to dispose of old Socket
Made sure the server disposed of the Socket when Server.Listen(ushort)
is called if the Socket was created before (called Server.Listen(ushort)
previously but stopped listening).
2015-04-07 12:27:56 -04:00
MaxXor 539a9b3d5b Changed KeepAlive Interval 2015-04-06 20:49:34 +02:00
MaxXor 12a0da6288 Improved KeepAlive and Extension Methods 2015-04-06 20:33:34 +02:00
MaxXor 29a5a258ea Fixed another cross threading bug 2015-04-06 20:33:00 +02:00
MaxXor aacd1e0f33 Merge pull request #46 from Abdullah2993/master
Added new KeepAlive method
2015-04-06 19:58:09 +02:00
Abdullah Saleem 957ae2c0ef New KeepAlive Added
Previous method of keep alive removed.
2015-04-06 22:40:54 +05:00
MaxXor a2091564fd Fixed tabs 2015-04-06 19:35:48 +02:00
d3agle f624028755 Small fix for RDP
moved static field to property so command handler gets the initial -1
check starting rdp
2015-04-06 12:20:00 -05:00
Abdullah Saleem 46bd17c4fa Cross-Thread exception handled
Cross-Thread exception  on Uninstall
2015-04-06 22:12:56 +05:00
MaxXor ee19378725 Use object initializer 2015-04-06 10:46:10 +02:00
MaxXor c61de89cea Merge pull request #43 from d3agle/master
Fixed Server crash when closing the Remote Desktop form while it's still running
2015-04-06 10:38:20 +02:00
MaxXor 2ba4ed82ff Merge pull request #41 from d3agle/master
Form disposal on client disconnection
2015-04-06 10:35:26 +02:00
MaxXor bec3e7daab Fixed File Upload & Execute (#39) 2015-04-06 10:06:33 +02:00
Abdullah Saleem 860b59ac7d Configurable KeepAlive added 2015-04-05 15:41:26 +05:00
d3agle d2530396e4 Bugfix #2 with Remote Desktop
added try catch blocks due to server application crashing while closing
the remote desktop form.  If timed right, while closing the remote
desktop form, the command handler would be in the midst of accessing an
already disposed form causing server to hang.
2015-04-04 21:10:42 -05:00
d3agle 9058ec53cc Form disposal on client disconnection
Added disposal method to dispose of all userstate forms for client upon
disconnection of the client from the server
2015-04-04 16:48:52 -05:00
MaxXor 5d20aad9d6 Fixed File Download in File Manager (#36) 2015-04-04 17:22:20 +02:00
MaxXor 720930f583 Fixed #38 2015-04-03 10:18:52 +02:00
MaxXor d140ca438e Improved Remote Desktop
- Added ability to change quality of remote desktop
- Fixed another cross threading crash
2015-04-02 10:26:57 +02:00
MaxXor 43ea61b537 Fixed Remote Desktop crash when resizing window 2015-04-01 16:24:48 +02:00
MaxXor 2a157a4df0 Cleanup 2015-03-31 22:37:38 +02:00
DragonHunter 5e3e2704f6 Probably fixed Remote Desktop Memory Leak
Probably fixed Remote Desktop Memory Leak, needs more testing but
overall stays between 50-100MB
Added UnsafeStreamCodec
2015-03-31 20:38:16 +02:00
MaxXor 5b54dcb52f More fixes 2015-03-31 18:45:31 +02:00
MaxXor 261dff32a9 Fixed reconnect of client 2015-03-31 18:34:29 +02:00
MaxXor a54c6db38f Fixing new bugs 2015-03-31 18:15:48 +02:00
DragonHunter 73620c796b Stable Client & Compression Fix
Fixed the compression / encryption order (Compression always failed)
Made the Client more stable but theres a bug with the Keep Alive
packets, need to be checked
2015-03-31 16:35:42 +02:00
DragonHunter 5b62fd3f60 Fixed Control Cross Threading
Fixed crash fix Control Cross Threading when a client connects
2015-03-31 09:43:54 +02:00
MaxXor 68d9627503 Removed unecessary variable
- Removed unecessary namespaces in code
- Changed xRAT file description
2015-03-27 11:13:02 +01:00
MaxXor 763de6a86c Faster creation of random file names 2015-03-21 19:14:00 +01:00
MaxXor 7a0fd84428 Small change 2015-03-20 14:52:49 +01:00
MaxXor 6a5ac88b2d Fixed wrong All Time Connected Clients
Each client has now an unique identifier (hashed MAC-address)
2015-03-20 14:45:58 +01:00
MaxXor b4100ecab0 Small fixes 2015-03-20 14:16:29 +01:00
yankejustin d5ad3c69b3 Removed unnecessary brackets
Removed unnecessary brackets to increase code readability in the other
ProtoBuf\Meta\ValueMember.cs so they are identical.
2015-03-19 12:12:18 -04:00
MaxXor 5855fc9adf Removed unnecessary ThreadStart 2015-03-18 18:58:17 +01:00
MaxXor 76ca01a420 Minor null reference fix 2015-03-18 18:12:45 +01:00
MaxXor 1a13442c12 Fixed tabs in code 2015-03-18 18:12:09 +01:00
yankejustin c6b57f8110 Dispose of the memory stream in Helper class
Disposes of the memory stream created in the server's helper class that
converts an image.
2015-03-17 18:35:53 -04:00
yankejustin 79f9ca0cba Made sure the TcpClient will always kill itself
Placed TcpClient in a try-finally to make sure it will never linger if
it (likely) cannot connect successfully.
2015-03-17 18:30:12 -04:00