首页
相册
统计
留言
更多
网安工具
CTF工具
关于
Search
1
椭圆曲线加密算法原理(ECC)
5,324 阅读
2
SMBGhost(CVE-2020-0796)漏洞利用
4,302 阅读
3
关于gdb调试
4,065 阅读
4
Arduino使用CubeCell开发板进行LORA无线通信
3,852 阅读
5
Diffie-Hellman密钥协商算法
3,542 阅读
深度学习
技术随笔
应急响应
漏洞复现
流量分析
溯源
入侵检测
Linux
eBPF
服务配置
渗透测试
信息收集
横向攻击
密码学
web安全
CTF
登录
Search
标签搜索
单片机
密码学
Windows
BPF
Python
Linux
Mysql
APP开发
软考
Cobalt Strike
flutter
入侵检测
HSM's Blog
累计撰写
53
篇文章
累计收到
11
条评论
首页
栏目
深度学习
技术随笔
应急响应
漏洞复现
流量分析
溯源
入侵检测
Linux
eBPF
服务配置
渗透测试
信息收集
横向攻击
密码学
web安全
CTF
页面
相册
统计
留言
网安工具
CTF工具
关于
搜索到
9
篇与
的结果
2023-06-30
蓝队安全加固建议
windows主机加固建议在无业务需求的情况下,建议关闭135、137、138、139、445、3389端口;(关端口)如有运维需求无法关闭以上端口,建议设置访问源白名单,可通过主机防火墙或者EDR类 设进行设置;(白名单)有条件的情况下安装EDR类设备进行防护,没有条件的可以使用火绒或者开启windows defender进行防护;(HIDS)修改主机密码为强密码,各主机尽量使用不同的密码(包括主机上的一些应用,如数据库、 FTP、中间件、VPN、邮箱、OA、IM等);(弱密码)windows安全补丁,能打的尽量都打了;(打补丁)中间件、OA等重要应用管理后台能关的尽量都关了,尤其是互联网侧;(关闭不必要的服务)清理或加固内网密码本,尤其是邮箱、共享文件夹、运维机本地的密码本。 (安全设备密码加固)Linux应急加固在无业务需求的情况下,建议关闭22端口;如有运维需求无法关闭以上端口,建议设置访问源白名单,可通过iptables或者EDR类设进行设置;有条件的情况下安装EDR类设备进行防护;修改主机密码为强密码,各主机尽量使用不同的密码(包括主机上的一些应用,如数据库、 FTP、中间件、VPN、邮箱、OA、IM等); ps:root账户如果能删了最好!!!中间件、OA等重要应用的管理后台能关的尽量都关了,尤其是互联网侧。
2023年06月30日
50 阅读
0 评论
1 点赞
2023-06-29
Windows应急响应排查
Windows网络与进程排查应急响应排查(1)检查端口连接情况,是否有远程连接、可疑连接。检查方法: netstat -ano 查看目前的网络连接,定位可疑的 ESTABLISHED 根据 netstat 定位出的 pid,再通过tasklist命令进行进程定位 tasklist | findstr “PID” (2)进程检查方法:开始--运行--输入msinfo32,依次点击“软件环境→正在运行任务”就可以查看到进程的详细信息,比如进程路径、进程ID、文件创建日期、启动时间等。打开D盾_web查杀工具,进程查看,关注没有签名信息的进程。通过微软官方提供的 Process Explorer 等工具进行排查 。应急响应知识详细netstatnetstat -ano 命令可查看当前的网络连接情况常见的网络连接状态有以下几种:LISTENING:侦听状态ESTABLISHED:建立连接CLOSE_WAIT:对方主动关闭连接或网络异常导致连接中断在排查过程中,一般会使用【netstat-ano|findstr "ESTABLISHED"】命令查看目前的网络连接,定位可疑的ESTABLISHED。tasklisttasklist命令用于显示计算机上正在运行的进程列表可以先使用netstat -ano查看端口连接信息,然后使用tasklist | findstr PID 进行排查tasklist /svc #显示正在运行的进程及其关联的服务tasklist /m #列出当前运行的进程以及每个进程加载的模块(DLL)wmicwmic process命令可用来获取进程相关的信息,常用命令如下:wmic process get name,ExecutablePath,processid,parentprocessid /format: csv以csv格式来显示进程的名称、可执行文件路径、进程ID、父进程ID信息wmic process where processid=[PID] get parentprocessid以PID的值作为条件来获取其父进程的PID工具火绒剑、processhacker、processexplorer、科来processhackerprocessexplorerWindows启动项排查注册表排查由于放置在特定的启动文件夹中的程序在用户登录时系统会自动执行,所以这些目录经常被攻击者用来自启动后门,系统当中常见的系统启动文件夹如下。位于以下目录中的程序将在指定用户登录时启动C:\Users[Username]\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\StartupC:\Documents and Settings[Username]\「开始」菜单\程序\启动位于以下目录中的程序将在所有用户登录时启动C:\ProgramData\Microsoft\windows\Start Menu\Programs\StartupC:\Documents and Settings\All Users\「开始」菜单\程序\启动注册表是Microsoft Windows中的一个重要数据库、用于存储系统和应用程序的系统信息,下方为Windows注册表当中的五大根键HKCR:该根键包括启动应用程序所需的全部信息,包括拓展名,应用程序与文档之间的关系,驱动程序名,DDE和OLE信息,编号和应用程序与文档的图标等。HKCU:该根键包括当前登录用户的配置信息,包括环境变量,个人程序以及桌面设置等HKLM:该根键包括本地计算机的系统信息,包括硬件和操作系统信息,安全数据和计算机专用的各类软件设置信息HKU:该根键包括计算机的所有用户使用的配置数据,这些数据只有在用户登录系统时才能访问HKCC:该根键包括当前硬件的配置信息,其中的信息是从HKEY_LOCAL_MACHINE中映射出来的Windows系统上有许多注册表项可以用来设置在系统启动或用户登录时运行指定的程序,很多攻击者会对此类注册表进行滥用,以建立持久化后门,下列是一些常见的注册表启动项。1)Run键是最常见的自启动注册表项,该键位置是[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run][HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run]其下的所有程序在每次启动登录时都会按顺序自动执行。2)还有一个不被注意的Run键,位于注册表[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run][HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\Run]3)RunOnce键,位于[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce][HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce]4)load键[HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows]下的load键值的程序也可以自启动。5)Winlogon键,位于[HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon][HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]下面的Notify、Userinit、Shell键值也会有自启动的程序,而且其键值可以用逗号分隔,从而实现登录的时候启动多个程序。工具:火绒剑、autorunsWindows计划任务排查打开【计算机管理】—>【系统工具】—>【任务计划程序】—>【任务计划程序库】选项或者执行【taskschd.msc】命令,可以查看任务计划的名称、状态、触发器等详细信息。在命令行中输入【schtasks】命令,可获取任务计划的信息,该命令是一个功能强大的超级命令行计划工具,获取任务计划时要求必须是本地Administrators组的成员。使用【schtasks /query /v /fo LIST】命令可获取计划任务的详细信息Windows服务排查排查时打开【运行】对话框,输入【services.msc】命令,便可打开服务窗口,查看所有的服务项,包括服务的名称、描述、状态等IFEO注入(映像劫持)排查IFEO(Image File Execution Options)是Windows系统的一个注册表项,路径为\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options。当用户启动计算机的程序后,系统会在注册表的IFEO中查询所有的程序子键,如果存在与该程序名称相同的子健,就读取对应子键的Dubugger键值。如果该键值未被设置,就默认不做处理,否则直接用该键值所指定的程序路径来代替原始的程序。通过编辑Dubugger的值,攻击者可以通过修改注册表的方式创建粘滞键后门,而不需获取TrustedInstaller权限。Windows 系统日志排查系统日志分析方法:a、前提:开启审核策略,若日后系统出现故障、安全事故则可以查看系统的日志文件,排除故障,追查入侵者的信息等。b、Win+R打开运行,输入“eventvwr.msc”,回车运行,打开“事件查看器”。c、导出应用程序日志、安全日志、系统日志,利用Log Parser进行分析。WEB访问日志分析方法:a、找到中间件的web日志,打包到本地方便进行分析。b、推荐工具:Window下,推荐用 EmEditor 进行日志分析,支持大文本,搜索效率还不错。Linux下,使用Shell命令组合查询分析Windows日志记录着Windows系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件,掌握计算机在特定时间的状态,以及了解用户的各种操作行为,为应急响应提供很多关键信息。Windows系统日志分类1)系统日志系统日志记录系统中各种驱动程序在运行中出现的重大问题、操作系统的多种组件在运行中出现的重大问题及应用软件在运行中出现的重大问题等。2)应用程序日志记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃及数据。3)安全性日志安全性日志主要记录了各种与安全相关的事件。构成该日志的内容主要包括:各种登录与退出系统的成功或不成功的信息、特权使用、账号管理、策略变更等各类日志内容。Windows系统日志存储位置上述三类日志的存储位置如下在Windows 2000 专业版/Windows XP/Windows Server 2003(注意日志文件的后缀名是evt)系统中:系统日志的位置为C:\WINDOWS\system32\config\SysEvent.Evt安全性日志的位置为 C:\WINDOWS\System32\config\SecEvent.Evt应用程序日志的位置为C:\WINDOWS\system32\config\AppEvent.Evt在Windows Vista/Windows 7/Windows 8/Windows 10/Windows Server 2008及以上版本系统中:系统日志的位置为 %SystemRoot%\System32\Winevt\Logs\System.evtx安全性日志的位置为%SystemRoot%\System32\Winevt\Logs\Security.evtx应用程序日志的位置为%SystemRoot%\System32\Winevt\Logs\Application.evtxWindows系统日志事件IDWindows系统中的每个事件都有其相应的事件ID,下图是应急响应中常用的事件ID旧版本指Windows 2000 专业版/Windows XP/Windows Server 2003,新版本指Windows Vista/Windows 7/Windows 8/Windows 10/Windows Server 2008等。Windows系统将登录类型显示为数字,下图是数字及其对应说明。登录相关日志事件ID对应的描述。日志清除相关时间IDhttps://blog.csdn.net/m0_51683653/article/details/129732661工具everything、D盾、LastActivityView、UserAssistView、BrowsingHistoryView 排查维度:使用everything对文件生成时间进行排序D盾可以监控特定目录下的文件生成LastActivityView可以查看exe文件运行、目录操作、浏览器运行、用户登录等行为UserAssistView查看程序的使用记录,可以根据时间进行排序BrowsingHistoryView查看浏览器的历史记录实操Windows账户排查1. 检查系统账号安全查看服务器是否有弱口令,远程管理端口是否对公网开放。检查方法:据实际情况咨询相关服务器管理员。2. 查看服务器是否存在可疑账号、新增账号。检查方法:打开 cmd 窗口,输入lusrmgr.msc命令,查看是否有新增/可疑的账号,如有管理员群组的(Administrators)里的新增账户,如有,请立即禁用或删除掉。3. 查看服务器是否存在隐藏账号、克隆账号。检查方法:a、打开注册表,查看管理员对应键值。b、使用D盾_web查杀工具,集成了对克隆账号检测的功能。wmic在命令行中输入【wmic useraccount get name,sid】命令,可查看到系统当中的所有用户的用户名以及SID信息。注册表排查在运行窗口输入【regedit】打开【注册表编辑器】窗口,选择【HKEY_LOCAL_MACHINE】—>【SAM】选项,为该项添加【使用可从此对象继承的权限项目替换所有子对象的权限项目】权限,使当前用户拥有SAM的读取权限,添加权限完成后按【F5】键,刷新后即可访问子项并查看用户信息,然后继续选择【SAM】—>【Domains】—>【Account】—>【Users】—>【Names】查看是否有异常的账户。工具:D盾直接使用D盾查看异常账户
2023年06月29日
52 阅读
0 评论
1 点赞
2023-06-29
Linux应急响应排查
1、Linux网络与进程排查检查异常端口使用netstat 网络连接命令,分析可疑端口、IP、PID netstat -antlp|more检查异常进程检查异常进程 ps aux | grep pid网络连接netstat -pantu lsof -i 进程ps -ef 可以查看到父进程 ps -aux 可以查看到进程的资源占用率 2、Linux 自启动排查启动项是恶意病毒实现持久化驻留的一种常用手段,可以使用以下方法可以查找启动项相关内容。使用【cat /etc/init.d/rc.local】命令,可查看init.d文件夹下的rc.local文件内容使用【ls -alt /etc/init.d】命令,然后查看init.d文件夹下所有文件的详细内容3、Linux 计划任务排查任务计划也是维持权限和远程下载恶意软件的一种手段。在Linux系统中一般有以下两种方法可以查看任务计划。在命令行中输入【crontab -l】命令,可查看当前的任务计划,也可以指定用户进行查看,如输入命令【crontab -u root -l】,可查看root用户的任务计划。crontab -l -u user #(-u可指定用户)一般在Linux系统中的任务计划文件是以cron开头的,可以利用 ls 命令配合通配符 即【ls /etc/cron】筛选出etc目录下的所有以cron开头的文件,对文件内的详细内容进行排查。4、Linux 服务排查在 Linux 服务排查时可以使用【systemctl list-unit-files】命令列出系统当中的所有服务信息,在排查时重点排查处于自启动状态的服务。systemctl list-unit-files5、Linux 日志排查Linux系统中的日志一般存放在目录“/var/log/”下,常见的日志文件功能如下。/var/log/wtmp:记录登录进入、退出、数据交换、关机和重启,即last。/var/log/cron:记录与定时任务相关的日志信息。/var/log/messages:记录系统启动后的信息和错误日志。/var/log/auth.log:记录系统授权信息,包括用户登录和使用的权限机制等。/var/log/userlog:记录所有等级用户信息的日志。/var/log/lastlog:记录登录的用户,可以使用命令lastlog查看。/var/log/secure:记录大多数应用输入的账号与密码,以及登录成功与否。查找有哪些IP在暴力破解:grep "Failed password" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr查看登录成功的用户及IP:grep "Accepted" /var/log/secure | awk '{print $9,$11}' |sort | uniq -c | sort -nr查看登录成功日期、用户名、IP地址:grep "Accepted " /var/log/secure|awk '{print $1,$2,$3,$9,$11}'lastb:查看登录失败的用户信息,读取/var/log/btmplast:查看用户成功登录信息,读取/var/log/wtmplastlog:查看用户最后登录系统时间,读取/var/log/lastlog登录日志lastb 登录失败的日志 lastlog 所有用户最后一次的登录记录 登录成功登录成功的时间、用户名、IPgrep "Accepted" /var/log/secure | awk '{print $1,$2,$3,$9,$11}’ 登录成功的源IP、次数grep "Accepted" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr 本机登录情况more /var/log/secure | grep -E "sshd:session.*session opened“ 新增用户more /var/log/secure | grep "new user" 在文件中查找文件中的某个字符串grep -r -l "cd" ./定位爆破root账户的IP和次数grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more 爆破不存在的用户名(收集用户名字典)grep "invalid" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more 筛选爆破失败的IP和次数grep "Failed password" /var/log/secure|grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0- 9]?)"|uniq –c 其他查看定时任务日志:more /var/log/cron*查看定时执行脚本:日志分析工具:Journal,使用方法自行在知识库上查找 工具下载知识库 https://anfu.atrust.sangfor.com/工具库 https://pms.atrust.sangfor.com/tools/index.html#/6、Linux 历史命令排查历史命令通过.bash_history查看帐号执行过的系统命令1、root的历史命令histroy2、打开/home各帐号目录下的.bash_history,查看普通帐号的历史命令3、历史操作命令的清除:history -c但此命令并不会清除保存在文件中的记录,因此需要手动删除.bash_profile文件中的记录。https://developer.aliyun.com/article/1160651历史命令在应急响应中,通过命令【history】可查看历史命令,bash中默认命令记录为1000个。命令保存在主文件夹内的“.bash_history”中。history 历史下载的脚本,通过wget/curl下载的后缀为sh/pl/py的脚本。history | grep -E "(wget|curl).*\.(sh|pl|py)" more /root/.bash_history | grep -E "((wget|curl).*\.(sh|pl|py))" | grep -v grep 历史增加的账号history| egrep "(useradd|groupadd)" | grep -v grep 可疑历史命令:使用过入侵工具的操作行为,一般以代理工具为主。history | grep -E "(whois|sqlmap|nmap|fscan|frp|nps|proxy|msfconsole|msf)" | grep -v grep 不同用户的历史命令 /home/test/.bash_history 7、Linux 可疑文件排查可以对敏感目录的文件进行分析(/tmp、/usr/bin、/usr/sbin、~/.ssh)通过列出攻击日期内变动的文件,可发现相关的恶意软件,可以使用【find】命令对某一时间段内增加的文件进行查找。-atime -n +n:按文件访问时间来查找文件,-n指n天以内,+n指n天前。-mtime -n +n:按文件更改时间来查找文件,-n指n天以内,+n指n天前。-ctime -n +n:按文件改动(指改动了文件属性或元数据)时间来查找文件,-n指n天以内,+n指n天前。也可以通过分析文件的方法对Webshell进行查找,利用Webshell中常出现的一些关键字,对文件进行初筛,缩小排查的范围。find /var/www/ -name "*.php" -print0 | xargs -0 egrep 'assert|phpspy|c99sh|milw0rm|eval|gunerpress|base64_decode|sPIDer_bc|shell_exec|passthru|$\_POST[eval(str_rot13)|.chr(|${\"\_P|eval($\_R|file_put_contents(.*$\_'ls、ps等命令很可能被攻击者恶意替换,所以可以使用 【rpm -Vf /usr/bin/】【rpm -Vf /usr/sbin/】对系统命令进行排查,每个文件的输出中可能包含一些标志符号,用于指示文件的不一致情况,例如文件大小、校验和、权限等。以下是一些常见的标志符号及其含义:S:文件的大小不匹配5:文件的 MD5 校验和不匹配T:文件的修改时间不匹配文件首先要关注一些经常存在可疑现象的目录;用户目录:/root、/home/xx 临时目录:/tmp、/var/tmp 网站目录 放命令的目录:/bin、/sbin、/usr/bin、/usr/sbin 接下来直接ls -alt按照时间排序即可,时间最近的文件最可疑8、Linux 用户排查l可以使用【stat /usr/sbin/useradd】【stat /usr/sbin/userdel】命令来查看useradd和userdel命令的时间变化信息分析超级权限账户,在命令行中输入【awk -F: '{if ($3==0) print $1}' /etc/passwd】命令,可查到账户UID为0的账户,如果出现root之外的其他UID为0的账户,需要重点排查。在命令行中输入【cat /etc/passwd|grep '/bin/bash'】命令,可查看可登录的账户在命令行中输入【awk -F: 'length ($2) ==0 {print $1}' /etc/shadow】命令,可查看是否存在空口令账户用户 主要是查找uid为0的用户 直接cat /etc/passwd即可查看 检查是否有UID为0的用户more /etc/passwd | egrep -v '^#|^(\+:\*)?:0:0:::' | awk -F: '{if($3==0) print $1}' grep '^root:x:0:' /etc/passwd检查UID相同的用户,防止克隆用户awk -F: '{a[$3]++}END{for(i in a)if(a[i]>1)print i}' /etc/passwd 排查除root用户外,root组是否还有其他用户,其实就是检查GID是否为0more /etc/group | grep -v '^#' | gawk -F: '{if ($1!="root"&&$3==0) print $1}' 账号安全1、查询特权用户特权用户(uid 为0) [root@localhost ~]# awk -F: '$3==0{print $1}' /etc/passwd2、查询可以远程登录的帐号信息[root@localhost ~]# awk '/$1|$6/{print KaTeX parse error: Expected 'EOF', got '}' at position 2: 1}̲' /etc/shadow 3… " | grep "ALL=(ALL)"3、禁用或删除多余及可疑的帐号usermod -L user 禁用帐号,帐号无法登录,/etc/shadow第二栏为!开头userdel user 删除user用户userdel -r user 将删除user用户,并且将/home目录下的user目录一并删除
2023年06月29日
24 阅读
0 评论
0 点赞
2023-06-26
常见webshell的流量特征
1. 菜刀流量特征webshell文件PHP: <?php @eval($_POST['caidao']);?> ASP: <%eval request("caidao")%> ASP.NET: <%@ Page Language="Jscript"%><%eval(Request.Item["caidao"],"unsafe");%>1.1 菜刀webshell的静态特征“eval”,eval函数用于执行传递的攻击payload,这是必不可少的;base64_decode($_POST[z0])**,**base64_decode($_POST[z0])将攻击payload进行Base64解码,因为菜刀默认是使用Base64编码,以避免被检测;&**z0**=QGluaV9zZXQ..,该部分是传递攻击payload,此参数z0对应$_POST[z0]接收到的数据,该参数值是使用Base64编码的,所以可以利用base64解码可以看到攻击明文。注:有少数时候eval方法会被assert方法替代。$_POST**也会被**$_GET、$_REQUEST替代。z0是菜刀默认的参数,这个地方也有可能被修改为其他参数名。1.2 菜刀webshell的动态特征请求包中:ua头为百度爬虫请求体中存在eval,base64等特征字符请求体中传递的payload为base64编码,并且存在固定的:QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIpO0BzZXRfdGltZV9saW1pdCgwKTtpZihQSFBfVkVSU0lPTjwnNS4zLjAnKXtAc2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKDApO307ZWNobygiWEBZIik7Jbase64解码:@ini_set("display_errors","0");@set_time_limit(0);if(PHP_VERSION<'5.3.0'){@set_magic_quotes_runtime(0);};echo("X@Y");请求体中执行结果响应为明文,格式为X@Y 结果 X@Y之中2. 蚁剑(base64加密):2.1 蚁剑webshell静态特征请求头特征User-Agent头信息会不断变换,并且可以看出很多古老的请求头请求体特征蚁剑提供5种不同的编码方式根据不同的编码方式去识别必传输的代码字段编码方式编码结果(URL解码后,123为连接密码)default123=@ini_set("display_errors", "0");@set_time_limit(0);$opdir=@ini_get("open_basedir");if($opdir)base64123=@eval(@base64_decode($_POST['uf25e391d03fb9']));&uf25e391d03fb9=QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwgIjChr123=@eVAl(cHr(64).ChR(105).ChR(110).ChR(105).ChR(95).ChR(115).ChR(101).ChR(116).ChR(40).ChR(34)....Chr16123=@eVAl(cHr(0x40).ChR(0x69).ChR(0x6e).ChR(0x69).ChR(0x5f).ChR(0x73).ChR(0x65).ChR(0x74).ChR(0x28).ChR(0x22).ChR(0x64).ChR(0x69).Rot13123=@eval(@str_rot13($_POST['ve7bf5650ee5dd']));&hba6[...]NQ==&m0a121ca631242=5G&ve7bf5650ee5dd=**@vav_frg**("qvfcynl_reebef", "0");@frg_gvzr_yvzvg(0);$bcqve=@vav_trg("bcra_onfrqve");vs($bcqve) {2.2 蚁剑webshell动态特征响应包的结果返回格式为 随机数 结果 随机数3. 冰蝎(AES对称加密)冰蝎2.0 webshell木马动态特征在了解冰蝎3.0之前,先看看2.0是怎么交互等2.0中采用协商密钥机制。第一阶段请求中返回包状态码为200,返回内容必定是16位的密钥Accept: text/html, image/gif, image/jpeg, ; q=.2, /*; q=.2 建立连接后 所有请求 Cookie的格式都为: Cookie: PHPSESSID=; path=/;冰蝎3.0 webshell木马动态特征请求头特征每一个请求头中存在:Pragma: no-cacheCache-Control: no-cache Accept: text/html, application/xhtml+xml, application/xml;q=0.9, image/webp,image/apng, /; q=0.8, application/signed-exchange; v=b3; q=0.9请求体特征通过观察,发现会有大量加密经过加密的数据包。配置连接后,打开会进去phpinfo界面,可观测包的长度大致判断,第一次会出现两个请求,MIME类型分别为text和script。(第一次访问)如下所示。当content-length长度为5xxx时,回应包数据比较少(执行命令)payload的加密内容结尾大部分都有=冰蝎4.0 webshell木马特征请求头特征http请求头Accept: application/json, text/javascript, /; q=0.01 Accept-Encoding: identityAccept-Language: zh-CN,zh;q=0.9,en-US;q=0.8,en;q=0.7通讯默认使用长连接:Connection: Keep-Alive请求体特征跟冰蝎4.0类似4. 哥斯拉(base64加密)请求头特征所有请求中 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,_/_;q=0.8 所有响应中 Cache-Control: no-store, no-cache, must-revalidate,以上两个只能作为弱特征参考同时在所有请求中Cookie中后面都存在;特征请求行为特征哥斯拉继菜刀、蚁剑、冰蝎之后具有更多优点的Webshell管理工具特征检测发送一段固定代码(payload),http响应为空发送一段固定代码(test),执行结果为固定内容发送一段固定代码(getBacisInfo)请求体特征php,asp则为普通的一句话木马选择默认脚本编码生成的情况下,jsp会出现xc,pass字符和Java反射(ClassLoader,getClass().getClassLoader()),base64加解码等特征请求头除了前面几个,后面的大部分为13xx
2023年06月26日
59 阅读
0 评论
3 点赞
2022-11-15
Pcap文件格式
Pcap文件格式具体信息可以参考:https://wiki.wireshark.org/Development/LibpcapFileFormat#file-formatGlobal Header为实际的 pcap 文件,HEX 格式显示,黄色部分为Global Header, 长度为24B。绿色部分为Packet Header 16B.golbal header 定义如下:typedef struct pcap_hdr_s { guint32 magic_number; /* magic number */ guint16 version_major; /* major version number */ guint16 version_minor; /* minor version number */ gint32 thiszone; /* GMT to local correction */ guint32 sigfigs; /* accuracy of timestamps */ guint32 snaplen; /* max length of captured packets, in octets */ guint32 network; /* data link type */ } pcap_hdr_t;字段说明:magic_number:长度 4B,用来识别文件的字节顺序。0xa1b2c3d4代表顺序读取,0xd4c3b2a1 代表从后向前读取数据。version_major: 长度2B,因为magic_number 为0xd4c3b2a1,从后向前读取,所以 主版本号为00 02,version_minor:长度2B,00 04,所以这个pcap 文件版本号为2.4。thiszone:长度4B, 时区。GMT和本地时间的相差,用秒来表示。如果本地的时区是GMT,那么这个值就设置为0.这个值一般也设置为0sigfigs:长度4B,时间戳精度,一般设置为0。snaplen:长度4B,最大存储长度, 0xff ff (65535)network:长度4B,数据链路类型。01为 ETHERNETLINKTYPE_ nameLINKTYPE_ valueCorresponding DLT_ nameDescriptionLINKTYPE_ETHERNET1DLT_EN10MBIEEE 802.3 Ethernet (10Mb, 100Mb, 1000Mb, and up); the 10MB in the DLT_ name is historical.Packet Headertypedef struct pcaprec_hdr_s { guint32 ts_sec; /* timestamp seconds */ guint32 ts_usec; /* timestamp microseconds */ guint32 incl_len; /* number of octets of packet saved in file */ guint32 orig_len; /* actual length of packet */ } pcaprec_hdr_t; /*pcapRecordHeader--> packet Header*/字段说明:ts_sec:长度4B,时间戳(秒)表1-1:55 fd 80 61 因为是逆向读取所以是 61 80 fd 55,十进制是1635843413 sts_usec:长度4B,时间戳(微妙)表1-1:04 d4 c4 1d 因为是逆向读取所以是 1d c4 d4 04 十进制是499438596 usincl_len:长度 4B,抓取到的 Packet Data 的数据长度 00 00 05 9a, 十进制是 1434 Byteorig_len:长度4B,网络中实际Packet Data的长度,多数情况下和incl_len 相等。
2022年11月15日
128 阅读
0 评论
0 点赞
2022-06-04
蓝队溯源反制技术
HW的起源和演变过程概述护网行动网络攻防演习是由公安机关所组织的,覆盖政府、能源、交通、卫生以及金融教育等行业中去集中的网络攻防演练行动,其时间约为2-3周。攻击方式:组织其120-130支攻击队伍,对各个行业重点单位目标系统对其重点攻击,检验防守方对攻击的防护以及看目标单位的系统安全性,以积分的方式对其确定防守方的排名。参演方攻击方:由公安机关授权的国家科研机构、安全公司/团队组成。防守方:防守企业。指挥部:根据攻防双方报告的信息,进行评分。HW前的蓝队准备系统安全系统:Windows * 打补丁使用沙箱:BufferZone,SandBox,360沙箱,Returnil,Private Workplace等沙箱软件。配置蜜罐软件:着重讲解HFish蜜罐检测内网警告:分析日志报告社工防守安全预防钓鱼:HW钓鱼方式有很多种,防不胜防,列如:一封邮件,标题:关于2022护网暂停通知.doc。物理层面:物理层面无人机绑定大菠萝对其打入内网进行渗透。HFish蜜罐系统download: https://hfish.io/#/Hfish蜜罐是一款成熟的蜜罐系统,该蜜罐系统具有多种服务协议,搭建简单,有手就行反制物理黑客-无人机劫持IOT技术通过智能收集在没有其他控制器的情况下控制DJI无人机。对DJI Spark来说,控制器是可以单独售卖也可以与Spark Combo一起售卖,在没有控制器的情况下,手机应用就是唯一可以控制DJI Spark的,无人机会创建一个WIFI热点来供应用连接,热点使用WPA2协议确保安全的,并且同时只允许一个用户连接。web-socket接口可以完全访问FIWI网络设定,通过建立web-socket服务器的网络连接,攻击者可以看到WIFI网络的设定并与另一个人的无人机建立连接,但是如果改变了设置,无人机就会与用户断开连接,攻击者就会变成无人机的独有者。https://github.com/embedi/dji-ws-tools/blob/master/dji_ws_exploit.py简单暴力,直接使用aireplay-ng打WIFI,从而导致无人机失联状态。防伪后缀名文件钓鱼第一种后缀欺骗方式第二种后缀欺骗方式蓝队溯源反制技术情报收集IP反查http://ip.aa2.cn/https://ipwhois.cnnic.net.cn/index.jsp批量ip归属https://ip.tool.chinaz.com/siteiphttp://www.jsons.cn/ipbatch/https://ip.tool.chinaz.com/https://www.cip.cc/威胁情报推荐地址https://x.threatbook.cn/https://ti.dbappsecurity.com.cn/样本查询地址https://www.virustotal.com/gui/home/upload精准定位https://www.ipuu.net/https://chaipip.com/aiwen.html利用钓鱼邮件溯源在邮件头部信息中查看X-Originating-IP选项,可以获取发送者的IP地址。Windows RDP日志溯源Windows系统系统日志位于计算机管理->系统工具->事件查看器->Windows日志4648日志代码,RDP登陆成功,可溯源到IP地址4625日志代码,RDP登陆失败,可溯源到IP地址Linux日志文件溯源/var/log/mysql.log | Mysql登陆日志/var/log/httpd/access.log | httpd登陆日志/用户/.bashrc | 记录用户操作日志/var/log/auth.log | 包含系统授权信息,包括用户登陆和使用的权限机制等信息/var/log/lastlog | 记录登陆的用户,可以使用命令lastlog查看/var/log/secure | 记录大多数应用输入的账号与密码,登陆成功与否/var/log/cron | 记录crontab命令是否被正确的执行https://github.com/JeffXue/web-log-parser 日志分析工具WAF红队攻击特征信息cobalt strike反制大部分的时间我们就可以直接去看WAF得到有关的攻击信息,当WAF被报警的时候,我们得到的就是攻击者发来的payload,其中有命令执行反弹shell,我们就可以直接溯源到对方的IP地址。其中sqlmap的特征最为明显,因为注入语句被编码了好几次,并且一眼就看出来尝试在注入。另外还有fastjson,weblogic,shiro中间件漏洞等,大部分都会被WAF检测到。cobalt strike我们可以使用python脚本进行爆破cs服务器,爆破完成后我们即可控制其该红队cs服务器。可以使用csbruter工具进行爆破。暴力反制cobalt strike如果cs无法爆破出来,我们可以将自己的cs目标IP和端口修改成所反制的源地址IP和端口,之后上传杀毒网站。对方会上线无数个来自杀毒病毒库分析的机器,并且其造成一定的骚扰。
2022年06月04日
1,264 阅读
0 评论
0 点赞
2022-05-28
关于网络安全应急响应流程和措施
应急响应的基本流程应急响应基本流程可以分为五个部分,分别为响应、阻断、分析、清除和加固。响应这里不讨论应急响应人员能不能到现场,这里讨论通用场景。1. 判断事件类型事件类型分为7类: 大规模沦陷、挖矿病毒、勒索病毒、无文件落地、不死(顽固)马、钓鱼应急响应、数据劫持 。去应急肯定会收到通知:ga的通报、客户自己发现的情况、现场安服发现的问题。根据这些情报先判断出需要出应急的是什么事件类型。但是要记住“情报是带有失真率和主观性的,并且以上场景很多情况下并不会单独出现。”最后还是需要应急人员自己靠经验与客观事实去判断。2. 保持第一现场第一现场包含: 第一发现人、第一情报、失陷主体/群体、主体/群体行为、失陷环境。 这个“保持”是指在尽可能实现的情况下去保留。因为谁被打穿了都会慌,一慌都会推卸责任(包括我自己),或者消灭痕迹,这无疑是帮助了攻击者实现渗透的最后一步。这个“第一”是指最先发现情况的人,这个人所说的情况。发现的被攻陷的主体,最好是用镜像把系统和流量先扒拉下来。时间越延迟,这个“第一”事实的失真率越高,所以要安服和应急人员做好配合。3. 信息收集这一步与渗透测试的第一步信息收集无异,即使前面两个高度失真,这一步仍可以让整个响应起死回生,但是这一步没做好将会影响后续所有操作。信息收集主要是做: 流量、日志、可疑进程的内存、失陷系统镜像、恶意样本、客户资产收集、资产相关漏洞测试报告、防御设备的日志。 【请注意:确认有索取这些信息的权限】阻断所谓阻断只有三步:关站、关服务、拔网线。1. 切断网络情况分很多种:失陷后业务仍正常运行、失陷后业务受滞、失陷后业务停摆。不同的情况,网络切断因地制宜。切断网络的目的:观察病毒行为、观察流量特征、阻断对内通信、阻断对外连接。举个例子:一个医院大规模失陷,但是业务正常运作,这时候可以选择切断部分不重要的主机去观察行为。2. 阻断传播传播包括:对内传播(感染)、对外传播(外联)对内传播(感染):进程注入/迁移、第三方软件感染、服务传播(ftp/ssh爆破等)对外传播(外联):挖矿行为、外联攻击、c2通信阻断传播应从:软件层面、流量层面、代码层面、网络层面。例如:排查软件被劫持、排查流量发现无文件落地、利用代码审计发现容器加载内存马、阻断网络发现通过服务传播的病毒。3. 隔离核心资产/隔离受害主体(群体)这一步是应急响应的最终目的,无论实施过程如何、无论使用什么工具都必须保证被保护与沦陷方的隔离。隔离核心资产是为了做到三个原则:保护、避害、不损害。隔离受害主体(群体)是为了保护第一现场、收集攻击者信息等。分析分析是前提是提炼,提炼出关键信息分析。而提炼的前提是熟悉,了解攻击手法,红蓝同源。1. 日志、流量、样本分析分析三大件:日志、流量、样本。日志主要注意的是:时间、动作、结果;这个行为什么时候开始、什么时候结束,这个动作是登陆、退出、修改等、造成的结果是登陆成功/失败、上传/下载了文件、执行了代码等。流量主要注意的是:状态码、交互过程、数据合理性;每一次交互的状态码,交互过程中是否符合该种协议的正确交互过程,每个字段的填充、每次流量的渲染是否正常。样本主要注意的是:启动方式、伪装方式、作用;根据启动方式去选择沙箱或者分析工具;伪装方式判断是否加壳做免杀和打击方式;根据作用去判断受害范围。粗略的分为静态和动态,日志属于静态信息需要应急人员清晰分辨出日志表达的内容和快速筛选出可疑的点。流量和样本属于动态信息,应急人员需要拥有一定的渗透能力去分辨交互行为。2. 行为分析&还原攻击过程从行为出发,还原攻击路径,推演攻击过程。行为分析基于三大件分析,结合系统表现出来的情况做分析,例如:启动项、启动脚本、进程、内存等。还原攻击过程需要对攻击大致的情况有一个综合判断,可以理解为——威胁模型建立(SDL),必须具备渗透能力,再此基础上放入沙箱重新复现攻击过程,对后续的步骤提供帮助。清除我们要做的与渗透无异——“做好清除,藏好自己”。1. 非对抗情况下在不存在对抗的情况下,最极端就是全盘重装,稍次就是数据迁移后对系统盘重装。在普通情况下,我们可以进行针对性的杀进程、删文件、杀软清除。2. 存在对抗情况下对抗情况就是:顽固马与不死马存在,或者被持续攻击(apt)。这样的情况下,首选是在允许情况下打补丁,再恢复。找到攻击行为的源头,先补上漏洞再清除。加固加钱才是硬道理。 加固没啥好讲的,打补丁、对系统进行限制(网络隔离、行为管理等)、升级防御设备、完善防御流程(防御设备的部署、人员的部署、规则库的升级)
2022年05月28日
2,789 阅读
0 评论
1 点赞
2022-03-31
浅谈零信任安全SDP技术
1. 了解零信任安全和SDP技术1.1 什么是零信任安全?未来的安全趋势是零信任网络。 传统的网络一般都是用一台防火墙将网络分为可信任区域,不可信任区域,DMZ区域,而80%的威胁来自内部。并且传统的基于边界的网络安全方法是先连接,后信任,在网络边界验证用户身份,确定用户是否值得信任。如果用户被认定为是可信任的,就能进入网络,而一旦通过边界进入到网络内部,访问基本就通行无阻了。反之,用户会被拦截在外。这种保护方式有很多种称谓:城堡护城河式保护,类似于中世纪的城堡一样,防外不防内,或者蜗牛式保护,外壳坚硬而内部柔弱。传统网络安全架构默认内网是安全的,认为网络安全就是边界安全,因此通过在边界部署大量的安全产品如通过防火墙、WAF、IPS、网闸等设备对网络边界进行层层防护,而相对不重视甚至忽视企业内网的安全,但是业界的调查表明,高达80%的网络安全事件源于内网,或者内外勾结,因此屯重兵于边界并不能够使用户的网络变得更安全。零信任安全建立在一个简单的、众所周知的前提之上:不信任网络内部和外部的任何人/设备/系统;不信任传统网络边界保护,而代之以微边界保护。零信任最早由市场研究机构Forrester在2010年左右提出,后来Gartner和Forrester由对零信任概念、应用场景、迁移方式进行了完善和补充。零信任并非对安全的颠覆,甚至算不上重大创新,零信任的主要理念或者原则都是网络安全领域存在已久的公认原则:最小特权原则(least privilege)需要知道原则(need to know)深层防御原则(defense in depth)1.2 SDP技术SDP(软件定义边界)也被称为“黑云”(Black Cloud)是基于策略创建安全边界,用于将服务与不安全的网络隔离开。SDP要求在获得对受保护服务器的网络访问之前,先对端点进行身份验证和授权。然后,在请求系统和应用程序基础设施之间实时创建加密连接。SDP将用户的数据和基础设施等关键IT资产隐藏在用户自己的黑云里,无论这些资产位于公有云或者私有云,位于DMZ区或者数据中心,使得这些关键IT资产对外是不可见的。因为如果黑客无法知道目标在何方,那么攻击将无法进行。2. 为什么需要SDP?SDP的安全模型融合了设备身份验证、基于身份的访问和动态配置连接三大组件,为了阻止大部分类型的网络攻击,类似像DDos攻击、中间人攻击、服务器查询、OWASP、ATP等。SDP要求用户拿出多种身份验证信息,比如时间、位置、终端情况等等,用以证实该用户的身份,或者验证用户能否被信任。SDP还能够脚本化,以便能够检查除设备信息之外的更多情况。SDP能够收集并分析其他数据源,以提供上下文,帮助进行用户授权动作。这能确保在合法用户试图访问新设备或不同设备上资源的时候,有足够的信息可供验证用户并授权访问。一旦用户可被验证,我们就可以确信用户是谁(可能是骗子或狗狗),SDP在用户和所请求的资源间创建一条安全的加密隧道,保护二者之间的通信。而且,网络的其他部分则被设为不可见。通过隐藏网络资源,SDP可减小攻击界面,并清除用户扫描网络和在网络中横向移动的可能性。3. SDP的逻辑组成SDP包括三个主要部分:SDP客户端、SDP控制器、SDP网关。以及五个安全保护组件:单数据包授权、Mutual TLS、设备校验、动态防火墙、应用绑定。详细结构如下图:DP控制器是SDP的大脑,主要进行主机认证和策略下发,还可以用于认证和授权SDP客户端、配置到SDP网关的连接。也就是说,SDP控制器可以给访问者与被访问的资源之间搭建一条动态细粒度的“访问隧道”。一提到访问隧道,其标志性人物就是VPN技术,VPN技术发展至今已经成为十分成熟的远程访问技术了,但纵然如此也是存在两点缺陷: VPN提供的访问控制是十分粗粒度的,要么全都可以访问,要么都不能访问。VPN只是一种远程控制技术,并不会帮助保护内部用户 。SDP控制器建立的访问规则只对被授权的用户和服务开放,密钥和策略也是动态和仅供单次使用的。通过这种类似“白名单”的访问控制形式,网络中未被授权的陌生访问在TCP链接建立阶段就是完全被屏蔽和拒绝的,这种“临时并单一”的访问控制方式,将私有云资源对非法用户完全屏蔽,极大减少了网络的被攻击面。4. SDP工作方式将所有服务置于“拒绝所有”的SDP网关后方打开防火墙建立连接之前先认证设备上的用户使用动态防火墙机制,当DDos攻击发生时允许SDP尽可能快的丢弃攻击数据包SDP通过使目标服务器对未授权设备不可见来预防攻击以上四点是对SDP工作流程的核心概述,SDP要求端点在对被保护的服务器进行网络访问前首先进行认证和授权,然后,在端点和应用基础设施之间建立起实时的加密连接访问通路。具体的工作流如下:客户端在进行数据访问前,首先要通过控制平面和SDP控制器、应用服务器建立认证、授权通道,在认证通过并获得访问授权后,SDP控制器确定一个客户端可以被授权通信的主机列表,然后客户端才能在数据平面建立起与应用服务器之间的数据访问通道,允许正常访问的流量通过, 因此这种访问控制模型天然具备抵御资源消耗性攻击(DDos)的特征 。通过将资源隐藏在SDP网关后面,所有希望发起访问的用户都要提供唯一ID、客户端证书和加密密钥,然后通过认证才能正常访问, 理论上这是一种防御DDos攻击的有效手段,但对于以提供公共服务为主的用户来说,实现起来是有难度的,例如给所有公网用户发证书并不现实,实现成本将会非常高。5. SDP部署方式虽然所有SDP实施方案都保持相同的工作流,但是针对不同的应用场景会有不同的实现方式。云安全联盟列出了以下四种SDP部署方式:SDP部署方式客户端-网关方式客户端-服务器方式服务器-服务器方式客户端-服务器-客户端方式5.1 客户端-网关模型在客户端-网关模型中,敏感资源在SDP连接接受主机(AH),也就是SDP服务端后面受到保护,这样AH就充当客户端和受保护服务器之间的网关。此模型可以在企业网络内执行,以减轻常见的横向移动攻击,中间人攻击等。或者此模型放置在Internet上时,资源与未授权的用户就被AH当作网关隔离开了,使得资源对未授权用户不可见,以减轻DDos攻击、SQL注入、XSS攻击、CSRF攻击等等。5.2 客户端-服务器模型客户端到服务器的实施在功能和优势上与客户端-网关模型类似。然而,在这种情况下,受保护的服务器将运行可接受连接主机(AH)的软件,而不是位于运行该软件的服务器前面的网关。客户端-网关模型的实施和客户端-服务器模型的实施之间的选择通常基于受保护的服务器数量、负载平衡方法、服务器的弹性以及其他类似的拓扑因素。5.3 服务器-服务器模型在服务器到服务器的实施模型中,可以保护提供代表性状态传输(REST: Representational State Transfer)服务、简单对象访问协议(SOAP)服务、远程过程调用(RPC)或 Internet 上任何类型的应用程序编程接口(API)的服务器,使其免受网络上所有未经授权的主机的攻击。例如,对于 REST 服务,启动 REST 调用的服务器将是 SDP 连接发起主机(IH),提供 REST 服务的服务器将是可以接受连接的主机(AH)。为这个用例实施一个软件定义边界可以显著地减少这些服务的负载,并减轻许多类似于上面提到的攻击。这个概念可以用于任何服务器到服务器的通信。5.4 客户端-服务器-客户端模型客户端到服务器到客户端的实施在两个客户端之间产生对等关系,可以用于 IP 电话、聊天和视频会议等应用程序。在这些情况下,软件定义边界会混淆连接客户端的 IP 地址。作为一个微小的变化,如果用户也希望隐藏应用服务器,那么用户可以有一个客户端到客户端的配置6. SDP的防御6.1 SDP的5重防御机制:(1)SPA(单包授权认证):网关只有接收到了客户端发出的SPA包,验证合法之后,才对该客户端的IP开放指定端口。这个技术可以屏蔽绝大多数非法用户的网络攻击,让漏洞扫描、DDoS等攻击方式都失效。(2)MTLS(双向认证):网关跟客户端的通信是加密的,而且是双向认证,网关认证用户,用户也要认证网关。双向的认证保证了中间人攻击无法奏效。(3)动态防火墙:经过SPA认证后,网关会放行指定端口。但端口放行是暂时的,几秒内没有操作,端口就会自动关闭。最大限度提高防护强度。(4)设备验证:SDP不止验证用户身份,还要验证用户设备。设备的验证包括设备健康状态的验证,如是否装了杀毒软件等等。设备验证还包括设备证书的验证,只有合法设备才会安装证书,证书参与通信数据的加密过程。保证连接都是来自合法设备的。(5)应用绑定:用户只能访问有授权的应用。这符合“最小化授权”原则,保证了威胁无法横向蔓延。6.2 防DDOS常见的DDoS攻击有三种:(1)http攻击:与服务器建立大量http连接,让服务器耗尽精力,无力服务正常用户。(2)Tcp syn攻击:通过向服务器发送大量syn包,让服务器始终处于等待状态。(3)udp反射攻击:伪造udp请求发给第三方dns或ntp服务器,把udp包中的发起者改为攻击目标的IP,让第三方服务器反射并放大自己的攻击,对攻击目标造成大量冲击。SDP针对三种攻击的防护机制分别是:(1)http攻击:SDP根本不与非法用户建立http连接。(2)Tcp syn攻击:SDP会把所有非法syn包直接丢掉,不会等待。(3)udp反射攻击:SDP可以对一些非公开的dns或ntp进行保护,避免恶意udp包触达这些服务。6.3 SDP防漏洞扫描通常黑客的攻击都是从探测端口,收集情报开始的。黑客后续怎么进攻完全依赖于前期收集到的目标的弱点。所以能否扫描到目标的端口,对接下来的进攻是至关重要的。如果用Nmap扫描工具对SDP网关做一次扫描的话,结果一定是下图这样。图中第三行显示,Nmap对SDP网关的IP地址进行了所有端口的扫描,结果发现,没有一个端口是开放的。没有端口开放,对黑客来说,就代表了这里根本没有运行任何服务。也就是说,SDP网关在黑客眼里是“隐形”的。没有人能攻击他看不到的东西。当然,在合法用户的眼里,SDP网关肯定不是隐形的。不然合法用户也无法正常工作了。合法用户来的时候,SDP网关会在防火墙上创建一个特定的规则,如下图所示。他会只针对这个合法用户的IP创建一条放行规则——允许来自合法用户IP的数据包通过。这条规则是针对合法用户的IP的,来自其他IP的非法请求还是无法通过SDP网关。通过这个功能,SDP网关相当于给被保护系统加了一层隐身防护罩。黑客看不到被保护系统,像SQL注入、漏洞攻击、 XSS, CSRF等等攻击根本无从发起。这是一个相当简洁有效的防护手段。在SDP网关面前,绝大多数网络攻击都是失效的。7. SDP适用场景总结SDP架构需要用户安装客户端,所以SDP对终端的安全控制更强,客户端和网关联动能产生更严密的防护效果。但客户端也限制了SDP的应用场景。一些公开的网站没法用SDP保护。SDP特别适用于合作伙伴、供应商、第三方人员、分支机构等等特定人群访问业务系统的场景。这些系统需要在互联网上开放,以便第三方人员访问。但是又不需要向全世界所有人开放,引来黑客攻击。这种场景下,SDP能保证合法用户正常连接,对未知用户“隐形”。SDP在这类场景下是相当能打的。
2022年03月31日
3,091 阅读
0 评论
1 点赞
2020-08-05
SMBGhost(CVE-2020-0796)漏洞利用
1. CVE-2020-0796漏洞命名:smbghost/deepblue......Microsoft Server Message Block 3.1.1(SMBv3)协议处理某些请求的方式中存在远程执行代码漏洞,可以在目标smb服务器或客户端上执行代码。为了利用针对服务器的漏洞,未经身份验证的攻击者可以将特制数据包发送到目标SMBv3服务器;若要利用针对客户端的漏洞,未经身份验证的攻击者将需要配置恶意的SMBv3服务器,并诱使用户连接到该服务器。危险等级:高危2. 靶机操作系统:Windows10 1909ip:192.168.100.149防火墙:关闭3. 影响范围Windows 10 Version 1903 for 32-bit SystemsWindows 10 Version 1903 for x64-based SystemsWindows 10 Version 1903 for ARM64-based SystemsWindows Server, Version 1903 (Server Core installation)Windows 10 Version 1909 for 32-bit SystemsWindows 10 Version 1909 for x64-based SystemsWindows 10 Version 1909 for ARM64-based SystemsWindows Server, Version 1909 (Server Core installation)只影响 SMB v3.1.1,1903和19094. 漏洞检测使用检测工具scanner.py进行检测https://github.com/iobincn/tools/tree/master/CVE/CVE-2020-0796/SMBGhost-master5. 攻击利用攻击脚本https://github.com/iobincn/tools/tree/master/CVE/CVE-2020-0796/CVE-2020-0796-PoC-master攻击准备打开CVE-2020-0796-PoC-master执行sudo python setup.py install安装相关依赖库执行./CVE-2020-0796.py 192.168.100.149进行攻击目标机器蓝屏,如图:其实是可以其他操作的,比如getshell,可以使用不同的exploit实现6. 使用Metasploit进行漏洞利用等待以后再进行实验和更新整理7.使用该漏洞实现本地提权下载源码https://github.com/hex520/tools/blob/master/CVE/CVE-2020-0796/cve-2020-0796-local.exe 或者编译好的exploit将exploit.exe传到靶机上,打开CMD,执行exploit.exe即可提权到System用户权限
2020年08月05日
4,302 阅读
0 评论
0 点赞