EWS接口 本文将介绍的是Exchange的EWS接口,URI为exchange.com/ews/exchange.asmx,相关介绍可以参考:https://docs.microsoft.com/en-us.../Exchange/client-developer/web-service-reference/ews-reference-for-Exchange 默认该接口需要鉴权: 尝试利用上述SSRF去访问...,以Proxyshell触发点为例: GET /autodiscover/autodiscover.json?...a=a@edu.edu/ews/exchange.asmx?X-Rps-CAT=&Email=autodiscover/autodiscover.json?...一样的接口,只是多了个认证,少了个header头: 后续 本文介绍了EWS接口的一些利用,包括不限于利用SSRF漏洞和认证后的调用。
TP53基因大家都有所耳闻,而且也大概都知道它是 tumor protein p53的简称,其实它还有很多别名,比如BCC7;LFS1;P53;TRP53; 如果你通过数据分析拿到了一系列感兴趣的基因...,但是只有类似于TP53这样的基因标准symbol名字,想批量拿到全部的基因的全名和别名,这里有一个代码分享给大家。...ifelse(is.null(eg2alis_list[[x]]),"no_alias",eg2alis_list[[x]])}) 借助于 org.Hs.eg.db 包,我们已经拿到了全部的人类全部基因的全名和别名...,就是如下所示的4个变量: geneIds symbols geneNames geneAlias 接下来可以做一个简单的HTML报表输出,代码如下所示: createLink <- function(...,而且还支持搜索: 清晰简洁 学徒作业 把我上面的代码扩充,给全部的基因同步加上对应的go和kegg信息,也是借助于R里面的包即可。
本文中,笔者就来说说几个比较好玩的安全名词。也许不够全面,欢迎补充。...,所谓信息隐藏指的是不让除预期的接收者之外的任何人知晓信息的传递事件或者信息的内容。...边信道攻击中重要的两点是:1、边信道的信息与信道内的信息相互有关联;2、通过边信道的信息可以推断出信道内隐含的关键信息。...但即便是在51%攻击中,攻击者想要改变已经发生在区块上的交易信息依旧是非常困难的。因为攻击开始之前的交易是与之前的区块牢牢绑定在一起的,越历史悠久的交易信息想要修改就越是不可能的。...因此诞生了一些有趣或者“听不懂”的安全名词。细细研究下来,其实可以发现,安全圈的小哥哥小姐姐们(如果有姐姐的话)表面云淡风轻,内心戏还是很丰富呢。
2、特殊接口爆破 对于某些限制登录次数的网站,还可以尝试对其NTLM验证接口进行爆破,最常见的就是ews接口,但除ews接E以外,还有以下接口地址。...该工具实现了将获取到的 Net-NTLM 哈希重放到真实 Exchange 服务器的 EWS 接口进行认证,通过 EWS 获取用户邮箱的邮件信息、附件下载、创建转发规则、查询GAL等。...这种委托可以是全局的委托,可以通过后台修改;也可以是对单独文件夹进行委托,用户自行对文件夹设置。 因此,当 ecp 可登录且拥有管理员权限时,就可以通过添加邮箱委托的方式,实现邮箱控制。...另一种邮箱文件夹的权限委托,相对隐蔽,在用户的指定文件夹上设置权限,即可使其他用户具有访问操作权限。主要利用可以参考 CVE-2018-8581,可以通过 ews 接口实现以上操作。...七、其他 隐藏文件夹 对于 Exchange 用户邮箱,将文件夹的扩展属性 PidTagAttributeHidden(0x10F4000B) 设置为true时,该文件夹对于用户不可见,但只要知道了隐藏文件夹的
/Exchange.asmx /EWS/Services.wsdl /EWS /ecp /OAB /OWA /aspnet_client /PowerShell 想要更方便的话,可以用msf的模块自动搜集...Outlook 还使用称为 Outlook Anywhere 的 RPC 交互 /EWS/Exchange.asmx /EWS/Services.wsdl /EWS/...Get-GlobalAddressList -ExchHostname Ex -UserName rengan -ExchangeVersion Exchange2013_SP1 -Password ganren...@123456 查找存在缺陷的用户邮箱权限委派 一个用户的文件夹是可以给其他用户权限的。...点击此处的权限,来到以下界面,这里的默认即 所有用户(everyone) 的对此文件夹的权限,我这里是把权限给的很高 实战中也可能会遇到用户A对用户B的收件箱有读写权限的情况,所以我们在获取用户A的凭据后可以进而读取用户
如果 EWS 不能满足特定的业务需求,则应禁用访问。从 Exchange 命令行管理程序执行以下命令将禁用对所有邮箱的访问。...Get-Mailbox | Set-CasMailbox -ActiveSyncEnabled $false 还应禁用身份验证,以减少密码喷射攻击期间威胁参与者的攻击面。...禁用 Exchange Web 服务 (EWS) 的身份验证将阻止攻击。 同样,禁用跨组织的 Exchange Web 服务邮箱访问将产生相同的结果。...完全禁用 EWS 身份验证还将进行 NTLM 中继攻击,这些攻击将作为目标在不破解密码哈希的情况下获取对用户邮箱的访问权限。...展望主页 Outlook 主页功能可用于注入将在用户系统上执行任意有效负载的页面。在浏览邮箱文件夹或重新启动 Microsoft Outlook 时将触发有效负载。
,如果我们可以成功找到其中的任何一个有效的凭证并且该组织有Outlook Web Access或Exchange Web服务门户,那么此时的我们可以从Exchange服务器上下载整个全球通讯薄 Get-GlobalAddressList...FindPeople函数的Get-GlobalAddressList能够在10秒钟内从远程OWA门户获取4282个电子邮件地址,且OWA的"FindPeople"方法要求您使用PowerShell Version...3或更高版本,对于Exchange版本低于2013的情况,Get-GlobalAddressList会回退到从Exchange Web服务枚举GAL,由于EWS一次只允许你搜索100个结果,这种方法可能会花费更长的时间...\userlist.txt -Password Fall2016 -Threads 15 -OutFile ews-sprayed-creds.txt 在上面的测试中,我注意到EWS密码喷涂方法明显更快...,Invoke-PasswordSprayOWA和使用15个线程的Burp Intruder都用了大约1小时45分钟来完成对10,000个用户的喷涂,而向EWS喷洒同样的用户名单只用了9分28秒
创建一个新的文件夹,选择新文件夹菜单中的的“权限(Permissions)”选项 ? 2. 收件箱权限 这时我们添加目标帐户以拥有邮箱的权限。...然后在页面上浏览新建文件夹菜单,选择“权限(Permissions)选项” ? POST请求到Microsoft Exchange 检查http请求的响应,来显示管理员用户的SID。...中继服务器 设置脚本Exch_EWS_pushSubscribe.py中的变量 ? 6....推送订阅脚本配置 执行脚本将尝试通过EWS(Exchange Web服务)将pushSubscribe请求发送到Exchange。...python Exch_EWS_pushSubscribe.py ? pushSubscribe python脚本 ? 响应信息 ?
放入 C:\PerfLogs\ 文件夹的cm.exe文件是标准的 Windows 命令行工具cmd.exe。...具体来说: Run类创建一个侦听器,用于侦听路径 https://*:443/ews/web/webconfig/ 上的端口 443 的连接。 监听后,恶意软件会创建一个调用r的新线程。...o 案例4:调用wf方法,负责写文件 o 案例5:调用方法rf,负责读取文件 o 案例 6:创建文件夹 o 案例 7:删除文件或文件夹 o 案例 8:移动文件 o 案例 9:为文件设置时间 o 案例.../owa/auth/webcccsd/ https://*:444/ews/auto/ https://*:444/ews/web/api/ 受害者 2:...文件夹中): 方法一:使用powershell命令: Get-ChildItem -Recurse -Path-Filter "*.log" | Select-String -Pattern
copy_file(path): # (root,dirs,files)分别为:遍历的文件夹,遍历的文件夹下的所有文件夹,遍历的文件夹下的所有文件 for root, dirs, files...思路是:第一次提取所有包含“数据”打头的文件夹,第二次,再针对获取到的“数据”的文件夹,再做一次代码处理,增加“DD”文件夹的筛选条件即可。...代码分别如下所示:第一次提取: def copy_file(path): num = 1 # (root,dirs,files)分别为:遍历的文件夹,遍历的文件夹下的所有文件夹,遍历的文件夹下的所有文件...res' copy_file(source_path) 第二次提取: def copy_file(path): # num = 1 # (root,dirs,files)分别为:遍历的文件夹...,遍历的文件夹下的所有文件夹,遍历的文件夹下的所有文件 for root, dirs, files in os.walk(path): for dir in dirs:
Windows事件日志查看命令通常有2种:Get-WinEvent和Get-EventLog,那么二者之间的区别是什么?应用场景又是什么呢?...Get-WinEvent是从Windows Vista才开始引入的,比Get-EventLog晚很多; image.png 通过下图命令可以看出,Get-EventLog可以查看7个日志文件;而Get-WinEvent...当查询语句中带有Date时,Get-WinEvent的效率会大大降低,所以,建议优先考虑Get-Eventlog。...在本地计算机上,Get-EventLog的执行效率要比Get-WinEvent的执行效率高非常多,应用非常广泛; 2....总之,各有利弊,跨网络优先Get-WinEvent,本地优先Get-EventLog,要查看更细致的应用和服务日志,只能选择Get-WinEvent。
<?php function tree($dir) { $mydir = dir($dir); echo "\n"; while...
+ (void)createFolder:(NSString )folderName { NSString imageDir = [NSString s...
最后做到的效果就是通过python编写的脚本中继pubsubscription的请求,继而修改其他用户收件箱文件夹的权限为 Editor 。...修改文件夹权限的关键在于 通过已经获取的账户用户名及口令登录,能够读取其他用户收件箱中的邮件。.../get-started-with-ews-client-applications#create-your-first-ews-application 给其他用户添加Rule规则 通过之前的抓包我们发现...调用 mapi.getFolder 获取Exchange服务器上当前账户的文件夹信息,通常不同的文件夹有不同的FolderID,这个过程中发送了一个数据包。...在golang当中需要类似的方法保持连接并发送POST和GET数据包,搜索了一段时间发现调用 http.Client 类当中的 Do 方法能够发送请求。
excelperfect 标签:VBA 经常要整理电脑中的文件,特别是每当要自查电脑文件时。每次都是将一个一个文件夹打开,将其中的文件全部删除,但要保留文件夹,以便于后面再陆续存放新的文件。...手动操作起来每繁琐,特别是当文件夹及其子文件夹很多且里面的文件也较多时。 其实,这样的工作使用VBA来很好解决。...下面的程序会删除指定文件夹中的所有文件,包括其子文件夹中的文件,但会保留文件夹,即保留文件夹框架,以便再往里面存放新文件。...' 如果递归调用则同时返回子文件夹中的所有文件....Exit Sub End Sub ' 测试代码: Sub test() KillFiles "C:\Users\excelperfect\Desktop\1", True End Sub 可以将其中的文件夹路径更换为实际文件夹路径
get和post方法是Http请求中主要的两种方法,因为从网上找了很多get和post区别,千篇一律,并且描述不清,今天偶尔从W3cShool看到了自己认为比较正确的回答。 ...从制定的资源请求数据 向指定的资源提交要被处理的数据
GET和POST的区别 目录 1、前言 2、HTTP协议 3、GET请求 4、POST请求 5、GET请求与POST请求对比 1、前言 经常在面试或笔试的时候,会被问到GET请求与POST请求有何区别...,区别在哪里,什么时候用GET请求、什么时候用POST请求等等的问题。...最常用的两种方法是:GET和POST 3、GET请求 GET请求用于从指定资源请求数据。...示例: 请求参数(名称/值对)是在GET请求的URL中发送的: GET请求可被缓存 GET请求保留在浏览器历史记录中 GET请求可被收藏为书签 GET请求不应在处理敏感数据时使用 GET请求有长度限制...请求与POST请求对比 根据w3school给出的表格,可以清楚的看到GET与POST的区别:
本人在做接口测试的过程中,之前写了一个用字符串替换的方法来处理get接口的参数拼接,后来优化了这个方法,兼容了中文字符提示非法字符的情况,使用了java自带的urlencode方法。...包括第一种方法,之前传的是json。分享代码,供大家参考。...更新: /** * 方法已重载,获取get对象 * 方法重载,主要区别参数,会自动进行urlencode操作 * * @param url...表示请求地址 * @param args 表示传入数据 * @return 返回get对象 */ public static HttpGet getHttpGet...请求和post请求stringentity的时候使用 * * @param argument 请求参数,json数据类型,map类型,可转化 * @return 返回拼接参数后的地址
List的get方法是Java的集合框架中常用的一个方法,用于获取List集合中指定位置的元素。 一、语法以及使用方法 语法 : get(int index),它返回List中索引位置的元素。...使用List的get方法时需要防止ArrayIndexOutOfBoundsException异常,这个异常会在请求的索引超过List的大小时抛出。...(1)); // 输出: Banana System.out.println(list.get(2)); // 输出: Cherry } } 二、get方法的时间复杂度 List...接口的不同实现类get方法的时间复杂度可能会有所不同。...对于ArrayList,因为其基于数组,所以get方法的时间复杂度为O(1)。LinkedList中基于链表,get方法的时间复杂度为O(n)。
一、GET和POST GET用于获取信息,是无副作用的,是幂等的,且可以缓存的。 POST用于修改服务器上的数据,有副作用,非幂等的,不可缓存。...二、报文的区别 GET和POST没有实质的区别,只是报文格式的不同 GET和POST只是HTTP协议中的两种请求方式,而HTTP协议是基于TCP/IP的应用层协议,无论是GET还是POST,用的都是同一个传输层协议...例如:如果参数是:page=2,name=bitbo,那么GET方法的报文头部前面可能是: GET /book?...2、POST方法比GET方法安全? 按照网上大部分文章的解释,POST比GET安全,因为数据在地址栏不可见。...3、GET方法的长度有限制? 网上大部分的观点在评论者POST和GET的时候都有这一条,提到游览器地址栏输入的参数是有限的。