首页 > 其他分享 >SNCScan:针对SAP安全网络通信(SNC)的安全分析与评估工具

SNCScan:针对SAP安全网络通信(SNC)的安全分析与评估工具

时间:2024-05-31 19:31:32浏览次数:23  
标签:SNC DIAG SNCScan 参数 工具 SAP sncscan

关于SNCScan

SNCScan是一款针对SAP安全网络通信(SNC)的安全分析与评估工具,该工具旨在帮助广大研究人员分析SAP安全网络通信(SNC),并分析和检测SNC配置与SAP组件中的潜在问题。

SNC系统参数

SNC基础

SAP协议,例如DIAG或RFC,本身并没有提供较高的安全保护。为了提高安全性并确保身份验证、完整性和加密,则需要使用到SNC(安全网络通信)。SNC可以通过对数据应用已知的加密算法来保护使用SAP系统(使用了RFC、DIAG或路由协议)中各种客户端和服务器组件之间的数据通信路径,以提高其安全性。目前SNC提供有三种不同级别的数据保护,可用于SNC安全连接:

1、仅身份认证:验证通信方的身份;

2、完整性保护:保护数据防止被篡改;

3、机密性保护:对传输的数据进行加密;

SNC参数

每一个SAP系统都可以使用SNC参数进行配置以提升通信安全。SNC连接的等级由保护参数的质量确定,其中包括:

1、snc/data_protection/min:SNC连接所需的最低安全等级;

2、snc/data_protection/max:最高安全等级,由SAP系统初始化;

3、snc/data_protection/use:默认安全等级,由SAP系统初始化;

SNC还提供了其他的参数来处理针对系统的配置选项,比如snc/only_encrypted_gui参数,该参数可以确保强制加密SAPGUI连接。

读取SNC参数

只要SAP系统配置正确且能够发送SNC消息,那么无论为SNC指定哪个IP、端口和CN,它都能够响应有效的SNC请求。该响应中包含了SAP系统针对SNC连接的要求,并且能将其用于获取SNC参数,并检查目标SAP系统是否启用了SNC,以及设置了哪些SNC参数。

工具下载

由于该工具基于Python 3.8开发,因此我们首先需要在本地设备上安装并配置好Python 3.8+环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/usdAG/sncscan.git

然后切换到项目目录下,使用pip工具和项目提供的requirements.txt文件安装该工具所需的其他依赖组件:

cd sncscan

python3 -m pip install -r requirements.txt

或者使用下列命令,并运行setup.py脚本完成工具的安装配置:

python3 setup.py test
python3 setup.py install

工具使用

当前版本的SNCScan支持读取SAP路由和DIAG(SAP GUI)连接的SNC配置数据。

SAP路由

SAP路由有可能支持SNC,也有可能不支持,也不存在更细粒度的SNC参数配置了,下列命令可以检测目标是否激活了SNC:

sncscan -H 10.3.161.4 -S 3299 -p router

DIAG / SAP GUI

一个SAP GUI所使用的DIAG连接其SNC配置可能更加通用,下列命令可以读取并查看目标的系统参数概况:

sncscan -H 10.3.161.3 -S 3200 -p diag

下列命令可以直接扫描多个目标:

sncscan -L /H/192.168.56.101/S/3200,/H/192.168.56.102/S/3206

通过SAP路由扫描:

sncscan --route-string /H/10.3.161.5/S/3299/H/10.3.161.3/S/3200 -p diag

工具运行截图

许可证协议

本项目的开发与发布遵循GPL-3.0开源许可协议。

项目地址

SNCScan:【GitHub传送门

标签:SNC,DIAG,SNCScan,参数,工具,SAP,sncscan
From: https://blog.csdn.net/FreeBuf_/article/details/139359923

相关文章

  • SAP ABAP 对工作区列遍历或按条件访问
    需要对字段数量多的工作区或动态工作区进行数据处理时,列遍历可使代码更加的简洁高效。(๑¯ω¯๑)重新发一遍,丢合集里示例代码:点击查看代码TYPES:BEGINOFtyp_kna1,kunnrTYPEkna1-kunnr,"客户编号name1TYPEkna1-name1,"送达方名......
  • SAP ABAP 字符串去除重复字符的两种方法
    ABAP里如何去除字符串内的重复字符,在这提供两种方法。第一种是直接对字符串多次循环进行排除,但考虑到性能问题要尽量减少循环次数。第二种是把字符串里字符转成内表一列,去重后拼回一个字符串。方法一示例代码:点击查看代码DATAmarkTYPEc.......
  • SpringBoot直连SAP,IJ IDEA开发与Windows,linux部署
    一、sapjco引入1.1、sapjco介绍sapjco3.jar,连接SAP所需的jar包,linux与windows系统通用libsapjco3.so,linux系统下连接sap所需的动态链接库sapjeco3.dll,windows系统下连接sap所需的动态链接库我使用的版本为sapjco3.0.10<dependency><groupId>com.sap</groupId> <artif......
  • java版微信公众号开发(八)获取jsapi_ticket,生产JS-SDK签名
    jsapi_ticket是公众号用于调用微信JS接口的临时票据。只用正确的签名才能使用JS调用微信接口,小编在这里整理一个一套完整的获取方法。废话不多说,直接上干货。//importjava.security.MessageDigest;/***获取位置信息签名*@AuthorFM_南风*@Date2024......
  • SAP:观察I_CALLBACK_USER_COMMAND 参数(按钮点击事件)
    1、从函数级SLVC_FULLSCREEN里复制 一个在”GUI状态“ 下的“STANDARD_FULLSCREEN”标准全屏幕到 程序Z16_04里。 标准工具添加 定义按钮(关闭、保存)主程序代码:*&---------------------------------------------------------------------**&ReportZ16_04*&利用......
  • ASAP7nm PDK介绍
    ASAP7nmPDK介绍概述最近在调研后面教学用的PDK,考虑到需要给学生发的PDK尽量绕开版权问题,因此FoundryPDK是不敢用的,大概把Synopsys家的SAED28_32nm,Cadence家的GPDK45nm,以及几个开源PDK都大概看了一下,目前倾向于用ASAP7nm这个PDK。来说一下主要的分析和考量,首先C家和S家给的PDK......
  • 4 SAP前台操作手册-MM模块-采购管理-采购申请创建、修改、显示-ME51N ME52N ME53N
    0总体说明SAP实施项目中,到了第3个阶段-系统实现,在这个阶段,因为蓝图汇报已经结束,配置也差不多完成了,自开发还在进行中,SAP标准功能下,可以进行基础业务的前台操作了,在实现阶段的尾端,客户指定的关键用户(俗称KU-KeyUser)会进行前台业务操作和练习,提高熟练程度,同时需要在外部SAP顾......
  • 2 SAP前台操作手册-MM模块-采购管理-(标准/委外/寄售)采购信息记录创建、修改、显示、
    0总体说明SAP实施项目中,到了第3个阶段-系统实现,在这个阶段,因为蓝图汇报已经结束,配置也差不多完成了,自开发还在进行中,SAP标准功能下,可以进行基础业务的前台操作了,在实现阶段的尾端,客户指定的关键用户(俗称KU-KeyUser)会进行前台业务操作和练习,提高熟练程度,同时需要在外部SAP顾......
  • SAP:REUSE_ALV_LIST_DISPLAY 函数实现此类型ALV
    *&Report-1类型程序的主要功能是通过WRITE语句为用户提供方便的报表数据.*&与此功能类似的就是利用FUNCTIONALV创建的报表。利用*&REUSE_ALV_LIST_DISPLAY函数实现此类型ALV。*&---------------------------------------------------------------------**&Report......
  • SAP: REUSE_ALV_GRID_DISPLAY 函数实现此类型ALV
     *&Report-1类型程序的主要功能是通过WRITE语句为用户提供方便的报表数据.*&与此功能类似的就是利用FUNCTIONALV创建的报表。利用*&REUSE_ALV_GRID_DISPLAY函数实现此类型ALV。*----------------------------------------------------------------------**&-----......