首页 > 其他分享 >S-Clustr(影子集群) Simple SCC伪代码编译器,工业控制DSL结构语言,递归函数调用

S-Clustr(影子集群) Simple SCC伪代码编译器,工业控制DSL结构语言,递归函数调用

时间:2024-09-04 15:23:27浏览次数:14  
标签:RUN Simple STOP DSL 编译器 CALL 版本 DEF

项目地址:https://github.com/MartinxMax/S-Clustr/releases

<iframe allowfullscreen="true" data-mediaembed="csdn" frameborder="0" id="U9SDXLfz-1725434284792" src="https://live.csdn.net/v/embed/421872"></iframe>

200

S-Clustr Simple DSL

语法

内置函数示例
RUN(启动设备)RUN:<ID>
STOP(停止设备)STOP:<ID>
TIME(MS延时)TIME:<Delay/Ms>
函数示例
DEF(定义函数名,空形参)DEF Function:
DEF(函数名,带形参)DEF Function:var,var2
CALL(调用函数)CALL Function:
CALL(调用函数,传递参数)CALL Function:1,2

示例

该语言不属于市面上主流的编程语言。而是专独立于影子集群的编程语言。

示例代码

DEF START_STATION_A:
    RUN:1
    RUN:2
    RUN:3
    CALL START_STATION_B:
END

DEF START_STATION_B:
    RUN:8
    RUN:7
    RUN:6
END

DEF STOP_ALL:
    STOP:1
    STOP:2
    STOP:3
    STOP:6
    STOP:7
    STOP:8
END

DEF MAIN:
    RUN:3
    CALL START_STATION_A:
    TIME:2000
    CALL STOP_ALL:
END

image.png

生成载荷在目录./sccopt/20240904141701.clustr

密钥:Fhfkb0ZzUAGX

image.png

所生成的clustr包是经过加密的。在不确定密钥的前提下无法被其他人逆向分析破解。

启动服务端

$ python3 S-Clustr_Server.py

image.png

在项目主目录中,scctest.py用于测试。
八个块代表模拟的八个被控设备端(红色停止状态,绿色启动状态)

image.png

启动影子集群客户端,填写rhost,key,rport后使用load <key> <path>命令载入包执行

S-Clustr(v1.1.0 Simple)> load Fhfkb0ZzUAGX ./sccopt/20240904141701.clustr

image.png

你可以编写其他逻辑程式来控制设备的行为。
不仅仅局限于IOT设备,例如可以将A节点服务器下的设备迁移到B节点服务器连接。亦或者可以让红绿灯(路灯)做到花样跑马灯的效果。

image.png

注意

1.Simple版本与Ring版本所采用的协议结构是不同的。这将意味着Simple版本与Ring版本将无法通信。
2.Ring版本采用新的Java处理连接,分布式去中心化,环形网络节点共享,匿名性高,支持节点跳跃控制。主要用于辅助规模较大的APT活动。插件:Nets3e(照片拍摄获取,独立加密协议),H4Vdo(锁屏播放视频)。
3.Simple版本较为简单便携,适合小规模使用。主要为点对点加密传输控制。匿名性中等。

预告

1.SCC编译器预兼容Ring版本[未兼容],Simple版本[已兼容]
2.工业控制设备载荷将增加至1+n个,包含ABB机械臂后门,SIEMENS 其他PLC类型后门,HMI人机交互控制屏系统后门。

b859746cc6.jpg

标签:RUN,Simple,STOP,DSL,编译器,CALL,版本,DEF
From: https://blog.csdn.net/qq_51886509/article/details/141892534

相关文章

  • 人工智能环境与编译器安装
    1.环境与编译器安装本文是为没有Python基础的同学,学习Python相关语法知识准备的1.Python环境安装第一步:进入【Python官网】第二步:选择你的系统,如果是Windows系统直接点击下载即可,否则选项你对应的操作系统Linux/UNIX、macOS第三步:选择合适Python版本包(一般不要选择最新......
  • c语言编译器IDE的6键钢琴程序代码
    #include<stdio.h>#include<SDL2/SDL.h>#include<SDL2/SDL_mixer.h>//FunctionforloadingmusictoMix_MusicstaticMix_Music*loadMusic(constchar*path){Mix_Music*music=Mix_LoadMUS(path);if(music==NULL){fprintf(stderr,“M......
  • c语言编译器IDE小钢琴程序代码
    #include<stdio.h>#include<SDL2/SDL.h>#include<SDL2/SDL_mixer.h>//FunctionforloadingmusictoMix_MusicstaticMix_Music*loadMusic(constchar*path){Mix_Music*music=Mix_LoadMUS(path);if(music==NULL){fprintf(stderr,“M......
  • 【树莓派开发】gcc编译器中出现warning: #pragma once in main file
    众所周知,#pragmaonce语句是防止头文件重复包含非常常用的一条语句VS编译器在创建.h文件的时候会自动帮你在开头添加这个语句但是在gcc编译器下,这个语句就可能会出现一些问题所使用编译器:VS2019(windows10)树莓派(linux-gcc)warning:#pragmaonceinmainfile在我尝试在linux环境......
  • 高效达人必备!Simple Sticky Notes让灵感与任务不再遗漏!
    前言阿尔伯特·爱因斯坦所言:“我们不能用制造问题时的同一水平思维来解决它。”这句话深刻地揭示了创新与突破的必要性。正是基于这样的理念,SimpleStickyNotes这款桌面便签软件以其独特的创新视角和实用性,在众多同类软件中脱颖而出。它源自于开发团队对于高效工作与便捷生......
  • php htmlspecialchars()、htmlentities()、addslashes() 的区别
    1差别htmlspecialchars()和htmlentities()唯一的差别是对于不认识的编码是否转义。比如,对于西欧编码ISO-8859-1来说,中文字符是“不认识的编码” 2举个例子说明差别2.1转义不认识的编码有差别$str='中文字符';echo"\nhtmlentities会转义:——\n";echohtmlen......
  • SimpleTranslationAIAgent:基于C#与LLM的翻译AI Agent
    基于C#与LLM通过简单对话即可实现文件到文件的翻译任务该软件是MIT协议完全开源免费的,但是调用LLM的API可能需要费用,但是没关系,赛博菩萨硅基流动与智谱AI等都有免费的模型可调了。这个TranslationAIAgent只是一个简单的AIAgent示例应用,可能很多人都不需要它。开源出来主要是......
  • SimpleTranslationAIAgent借助SiliconCloud API 构建自己的专属翻译助手
    SimpleTranslationAIAgent介绍SimpleTranslationAIAgent是一款基于C#与LLM通过简单对话即可实现文件到文件的翻译任务的简单应用,基于WPF与SemanticKernel构建。该软件是MIT协议完全开源免费的,但是调用LLM的API可能需要费用,但是没关系,赛博菩萨硅基流动有免费的模型可调了。这个......
  • ElasticSearch学习笔记(三)RestClient操作文档、DSL查询文档、搜索结果排序
    文章目录前言5RestClient操作文档5.4删除文档5.4修改文档5.5批量导入文档6DSL查询文档6.1准备工作6.2全文检索查询6.3精准查询6.4地理坐标查询6.5复合查询6.5.1相关性算分6.5.2布尔查询7搜索结果处理7.1排序7.1.1普通字段排序7.1.2地理坐标排序......
  • linux编程——认识GCC编译器
    目录一、引言二、GCC编译器简介三、GCC的主要特点四、GCC的使用方法五、GCC的高级功能六、总结一、引言  在Linux编程的广阔世界中,GCC(GNUCompilerCollection)编译器无疑是一个至关重要的工具。对于广大的开发者来说,熟练掌握GCC编译器的使用,能够极大地......