Hackers protection at websockets level

This commit is contained in:
Luis Fernando Molina committed 2021-10-25 14:56:03 +02:00
1 parent 00c47b2065
commit 27c7c8ea0b
3 files changed
+35 -9

No files matched your search

+1 -1
View File
@@ -8,7 +8,7 @@ if (process.env.PACKAGED_PATH) {
exports.newEnvironment = function () {
let thisObject = {
DEMO_MODE: true,
DEMO_MODE: false,
BASE_PATH: basePath,
WEB_SERVER_URL: 'localhost',
PLATFORM_WEB_SOCKETS_INTERFACE_PORT: 18041,
-3
View File
@@ -1,8 +1,5 @@
exports.newEventServer = function newEventServer() {
const MODULE = "Events Server"
const LOG_INFO = false
let thisObject = {
initialize: initialize,
finalize: finalize,
+34 -5
View File
@@ -9,7 +9,7 @@
const WEB_SOCKET = SA.nodeModules.ws
let socketServer
let port = global.env.PLATFORM_WEB_SOCKETS_INTERFACE_PORT
let port = global.env.PLATFORM_WEB_SOCKETS_INTERFACE_PORT
return thisObject
@@ -36,13 +36,42 @@
socket.on('message', onMenssage)
function onMenssage(message){
function onMenssage(message) {
try {
if (LOG_INFO === true) {
console.log('Message Received: ' + message.substring(0, 1000))
if (global.env.DEMO_MODE === true) {
/*
In DEMO MODE we will accept Task / Sessioins Running or Stopping if you are requesting this from localhost only.
*/
if (socket._socket.remoteAddress !== "::1") {
if (
message.toString().indexOf('"eventType":"Run Task"') >= 0
||
message.toString().indexOf('"eventType":"Stop Task"') >= 0
||
message.toString().indexOf('"eventType":"Run Trading Session"') >= 0
||
message.toString().indexOf('"eventType":"Stop Trading Session"') >= 0
||
message.toString().indexOf('"eventType":"Resume Trading Session"') >= 0
||
message.toString().indexOf('"eventType":"Run Learning Session"') >= 0
||
message.toString().indexOf('"eventType":"Stop Learning Session"') >= 0
||
message.toString().indexOf('"eventType":"Resume Learning Session"') >= 0
) {
console.log('Trying to execute a Task while in DEMO MODE. Some hacking has taken place!')
console.log('Hacker IP Address is: ' + socket._socket.remoteAddress)
return
}
}
}
if (LOG_INFO === true) {
console.log('Message Received: ' + message.toString().substring(0, 10000))
}
let messageArray = message.toString().split('|*|')
let origin = messageArray[0]