目录
1、简述:
1)SMB(全称是Server Message Block)是一个网络协议名,它能被用于Web连接和客户端与服务器之间的信息沟通
——————
2)判断:445端口
——————
3)IPC$连接:走的445端口,功能即实现文件共享
2、工具:
PsExec、impacket-smbexec、services等
1、简述:
1)PsExec:是一种轻量级 telnet-replacement,可用于在其他系统上执行进程,为控制台应用程序提供完全交互性,而无需手动安装客户端软件。
——————
2)(远程命令行工具)PsExec 最强大的用途包括对远程系统和远程启用工具(如 IpConfig)启动交互式命令提示符,否则无法显示有关远程系统的信息。
——————
3)注意:一些防病毒扫描程序报告一个或多个工具感染了“远程管理员”病毒。 PsTools 中没有含有病毒,但它们已被病毒使用,这就是为什么它们触发病毒通知的原因
——————
4)使用条件:
目标开启ipc$ (该共享默认开启,依赖445端口),连接到admin$
ipc$连接需要账号密码(工作组:使用管理员、域环境:使用域用户/域管理员、域控:使用域管理员)
目标防火墙开发445端口(默认禁止连接)
杀软检测不出被病毒使用(微软自带的,在白名单里)
——————
5)官方文档:
psexec [\\computer[,computer2[,...] | @file]][-u user [-p psswd][-n s][-r servicename][-h][-l][-s|-e][-x][-i [session]][-c executable [-f|-v]][-w directory][-d][-<priority>][-a n,n,...] cmd [arguments]文档中包含相关参数
2、使用:
1、常用参数:
-u 用户名,如果在域内:域\用户名 -p 密码 -accepteula 第一次运行不弹出确认框 -s system权限运行 -i 运行该程序,以便它与远程系统上指定会话的桌面进行交互。如果没有指定会话,进程将在控制台会话中运行 (-i cmd = cmd.exe) (账号密码 = -hashes :$HASH$)
2、情况:
情况一:未建立IPC$的情况
1、建立连接,并以管理员运行cmd.exe .\PsExec.exe -accepteula \\*.*.*.* -u administrator -p 密码 -s cmd.exe /c "命令如whoami"
——————
情况二:已经建立IPC$的情况
1、建立正常连接 net use \\192.168.*.*\ipc$ "密码" /user:"Administrator" 2、已建立连接后 .\PsExec.exe -accepteula \\*.*.*.* -s cmd.exe /c "whoami"
3、插件
cs-psexec
1、简述:
1、impacket:
1)简述:Impack是一组用于处理网络协议的Python类的集合。Impack专注于提供对数据包的低级编程访问,并为某些协议(例如SMB1-3和MSRPC)提供协议实现本身。数据包可以从头开始构建,也可以从原始数据中解析,面向对象的API使处理协议的深层层次结构变得简单。该库提供了一组工具作为示例,说明可以在该库的上下文中完成什么
——————
2)项目地址:
exe版本:
py版本:
3)UAC(User Account Control:用户账户控制):(从Win7开始)Windows系统引入的一种新的安全机制,这是一种通知用户是否对应用程序使用硬盘和系统文件授权,从而防止恶意程序损坏系统的机制
Win10中关闭UAC方法:控制面板--->用户账户--->更改用户账户控制设置--->对话框中设置合适的等级(最低:从不通知)
——————
命令操作:
# 管理员运行cmd,输入以下命令(参数0为关闭,1为恢复默认) C:\Windows\System32\cmd.exe /k %windir%\System32\reg.exe ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v EnableLUA /t REG_DWORD /d 0 /f
4)RID:
RID=1000+:指派给用户、计算机和组
RID=500-999:保留起来、表示在每个Windows计算机和域中
2、PsExec-impacket
1、简述:
1)相关参数
1、lget {file} #下载目标机器中的文件。 2、lput {src_file, dst_path} #上传文件到目标机器。 3、-codec #解码命令执行的返回结果——————
2)原理:通过smb上传一个服务程序到c:\windows(ADMIN$)目录,服务程序通过管道进行后续的命令执行的输入输出
——————
3)注:原版psexec.py上传会被拦截,需要绕过杀软(需要对服务程序修改尝试绕过杀软,如修改管道名称--->重新生成RemComSvc--->转成hex)
——————
4)命名:上传会随机英文字符串,使用PsExec.py提供的参数命名(防止名字容易被察觉异常)
2、使用:
1、工具的准备(impacket中,服务程序位于/impacket/examples/remcomsvc.py文件中(二进制数据),需要修改其中的二进制数据绕过杀软)
1、通过IPC$(smb协议)建立连接、上传服务程序到c:\windows(ADMIN$)目录(管理员权限,且防火墙端口开放)
2、打开管道,连接目标服务控制管理器SCM,创建、启动服务(serviceinstall.py进行服务安装),通过管道进行命令执行的输入输出,命令执行结束。
3、重新连接服务控制管理器,停止并删除服务、并删除服务程序
1、简述:
1)特点:安全漏洞检测工具、数千个软件漏洞(不断更新)
2)功能:信息收集、漏洞探测、漏洞利用等(即渗透测试的全流程)
3)GitHub:
4)下载最新版本:
2、使用:
1)搜索相关模块
search psexec2)使用模块
use exploit/windows/smb/psexec (或者use +序号)3)配置、运行
show options #查看相关配置 set rhosts 192.168.*.* #目标主机 set smbuser administrator #用户名 set smbpass 111111 #密码 exploit #运行 (会出现meterpreter >)4)命令执行
输入shell meterpreter >shell (获得system权限的shell,进行相关命令执行)
我的代码目前看起来像这样numbers=[1,2,3,4,5]defpop_threepop=[]3.times{pop有没有办法在一行中完成pop_three方法中的内容?我基本上想做类似numbers.slice(0,3)的事情,但要删除切片中的数组项。嗯...嗯,我想我刚刚意识到我可以试试slice! 最佳答案 是numbers.pop(3)或者numbers.shift(3)如果你想要另一边。 关于ruby-多次弹出/移动ruby数组,我们在StackOverflow上找到一
我正在编写一个小脚本来定位aws存储桶中的特定文件,并创建一个临时验证的url以发送给同事。(理想情况下,这将创建类似于在控制台上右键单击存储桶中的文件并复制链接地址的结果)。我研究过回形针,它似乎不符合这个标准,但我可能只是不知道它的全部功能。我尝试了以下方法:defauthenticated_url(file_name,bucket)AWS::S3::S3Object.url_for(file_name,bucket,:secure=>true,:expires=>20*60)end产生这种类型的结果:...-1.amazonaws.com/file_path/file.zip.A
当我在我的Rails应用程序根目录中运行rakedoc:app时,API文档是使用/doc/README_FOR_APP作为主页生成的。我想向该文件添加.rdoc扩展名,以便它在GitHub上正确呈现。更好的是,我想将它移动到应用程序根目录(/README.rdoc)。有没有办法通过修改包含的rake/rdoctask任务在我的Rakefile中执行此操作?是否有某个地方可以查找可以修改的主页文件的名称?还是我必须编写一个新的Rake任务?额外的问题:Rails应用程序的两个单独文件/README和/doc/README_FOR_APP背后的逻辑是什么?为什么不只有一个?
在Ruby中是否有Gem或安全删除文件的方法?我想避免系统上可能不存在的外部程序。“安全删除”指的是覆盖文件内容。 最佳答案 如果您使用的是*nix,一个很好的方法是使用exec/open3/open4调用shred:`shred-fxuz#{filename}`http://www.gnu.org/s/coreutils/manual/html_node/shred-invocation.html检查这个类似的帖子:Writingafileshredderinpythonorruby?
导读:随着叮咚买菜业务的发展,不同的业务场景对数据分析提出了不同的需求,他们希望引入一款实时OLAP数据库,构建一个灵活的多维实时查询和分析的平台,统一数据的接入和查询方案,解决各业务线对数据高效实时查询和精细化运营的需求。经过调研选型,最终引入ApacheDoris作为最终的OLAP分析引擎,Doris作为核心的OLAP引擎支持复杂地分析操作、提供多维的数据视图,在叮咚买菜数十个业务场景中广泛应用。作者|叮咚买菜资深数据工程师韩青叮咚买菜创立于2017年5月,是一家专注美好食物的创业公司。叮咚买菜专注吃的事业,为满足更多人“想吃什么”而努力,通过美好食材的供应、美好滋味的开发以及美食品牌的孵
C#实现简易绘图工具一.引言实验目的:通过制作窗体应用程序(C#画图软件),熟悉基本的窗体设计过程以及控件设计,事件处理等,熟悉使用C#的winform窗体进行绘图的基本步骤,对于面向对象编程有更加深刻的体会.Tutorial任务设计一个具有基本功能的画图软件**·包括简单的新建文件,保存,重新绘图等功能**·实现一些基本图形的绘制,包括铅笔和基本形状等,学习橡皮工具的创建**·设计一个合理舒适的UI界面**注明:你可能需要先了解一些关于winform窗体应用程序绘图的基本知识,以及关于GDI+类和结构的知识二.实验环境Windows系统下的visualstudio2017C#窗体应用程序三.
我从Ubuntu服务器上的RVM转移到rbenv。当我使用RVM时,使用bundle没有问题。转移到rbenv后,我在Jenkins的执行shell中收到“找不到命令”错误。我内爆并删除了RVM,并从~/.bashrc'中删除了所有与RVM相关的行。使用后我仍然收到此错误:rvmimploderm~/.rvm-rfrm~/.rvmrcgeminstallbundlerecho'exportPATH="$HOME/.rbenv/bin:$PATH"'>>~/.bashrcecho'eval"$(rbenvinit-)"'>>~/.bashrc.~/.bashrcrbenvversions
最近在学习CAN,记录一下,也供大家参考交流。推荐几个我觉得很好的CAN学习,本文也是在看了他们的好文之后做的笔记首先是瑞萨的CAN入门,真的通透;秀!靠这篇我竟然2天理解了CAN协议!实战STM32F4CAN!原文链接:https://blog.csdn.net/XiaoXiaoPengBo/article/details/116206252CAN详解(小白教程)原文链接:https://blog.csdn.net/xwwwj/article/details/105372234一篇易懂的CAN通讯协议指南1一篇易懂的CAN通讯协议指南1-知乎(zhihu.com)视频推荐CAN总线个人知识总
需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc
我正在使用ruby2.1.0我有一个json文件。例如:test.json{"item":[{"apple":1},{"banana":2}]}用YAML.load加载这个文件安全吗?YAML.load(File.read('test.json'))我正在尝试加载一个json或yaml格式的文件。 最佳答案 YAML可以加载JSONYAML.load('{"something":"test","other":4}')=>{"something"=>"test","other"=>4}JSON将无法加载YAML。JSON.load("