首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

nextline函数_JAVAScanner的next()和nextLine()为什么不能一起使用?

对于 “” 的情况分析: 输入 2 的时候调用的是 nextInt返回:nextInt 返回的是结束符之前的内容,并不会返回结束符 我们的输入:2 \r 以回车 ( \r ) 结尾,于是 2 被返回,...回车符 “\r” 它被丢弃缓冲区,现在缓冲区,只有一个 \r ,于是 下一次 nextLine 扫描的时候就又扫描到了 \r,返回它之前的内容,也是啥都没有 “” ,然后再把 \r 去掉, 对于...这个扫描器扫描过程判断停止的依据就是“结束符”,空格,回车,tab 都算做是结束符 而坑点在于 next 系列的,也就是下面这些函数:next nextInt nextDouble nextFloat...这些函数与 nextLine 连用都会有坑 坑点就是 next 系列的函数返回了数据后,会把回车符留在缓冲区,因此我们下一次使用 nextLine 的时候会碰到读取空字符串的情况 解决方案:输入都用...nextLine ,做格式转换 输入 next 系列函数调用后,中间调用一次 nextLine 调用去掉了回车符后,再调用一次 nextLine 调用真正输入我们的数据 都使用 nextLine: class

2.6K10
您找到你想要的搜索结果了吗?
是的
没有找到

为什么应该尽可能避免静态构造函数初始化静态字段?

不同的是Foo以内联(inline)赋值的方法进行初始化,而Bar则将初始化操作定义静态构造函数。...从Foo和Bar的IL代码可以看出,针对它们静态字段的初始化都放在静态构造函数。...但是当我们调用一个并不涉及类型静态字段的Invoke方法时,定义Foo的静态构造函数会自动执行,但是定义Bar的则不会,由此可以看出一个类型的静态构造函数的执行时机与类型是否具有beforefieldinit...具体规则如下,这一个规则直接定义CLI标准ECMA-335,静态构造函数在此标准中被称为类型初始化器(Type Initializer)或者.cctor。...四、关于“All-Zero”结构体 如果我们一个结构体显式定义了一个静态构造函数,当我们调用其构造函数之前,静态构造函数会自动执行。

16310

浅谈 windows 命名管道

很多时候,一些文章,工具利用,都会提到管道(pipe)。那么,什么是管道呢?管道能做什么呢?本文以 windows 管道为主,边学习边整理,希望可以给其他感兴趣的人提供帮助。... windows server 2003 及以下的版本,默认开启了匿名管道通信,但是之上的系统版本(包括 windows 7)默认禁止匿名管道通信。...也就是说,高版本,或者说禁止匿名访问的系统,如果想要实现远程管道访问,与管道进行通信,需要一个有效的身份进行验证。比如建立 smb 连接,或者 IPC 连接等。...但是,如果使用 smb 进行身份验证后,建立了有效的连接,此时就可以访问指定管道进行数据交互。这里回显找不到指定文件是由于远程计算机脚本的原因,虽然报错,但是远程端确实检测到有数据输入。 ? ?...那么,设置 2008 匿名访问,或提供有效的身份验证后,就可以执行成功。 ? c、连接测试工具 这类工具有很多,一下是通过网上随意找的一个小测试工具,有兴趣的话可以自己试验一下。

9.5K30

凭据收集总结

配置Winlogbeat 首先确保“本地安全策略”设置了对登录“成功”和“失败”、对账户管理“成功”和“失败”事件进行审核,这样对应的事件才会被记录在“安全”事件日志,成为我们审计事件的源。 ?...Powershell设置注册表 Powershell也能完整上述类似效果。...使用 Microsoft IE/EDGE 进行验证时,会提示“是否保存密码”,如果选择存储,再次验证时,则会自动登录。...Web 应用程序的HTML中选择类型为password的输入字段 使用一个函数绑定到onkeypress事件,该函数在用户登录到目标应用程序时,捕获用户密码字段输入的按键 处于演示的目的,该函数讲捕获的按键打印到浏览器的控制台...该函数将捕获的密码存储的浏览器的本地存储pw字段。 ? 如果目标捕获密码之前关闭针对的WEB应用程序选项卡,则 Hooking将被清除,Hooking 需要在此重复操作。

5.8K30

Node.js学习笔记——认识nodejs、详解fs文件系统模块与path路径模块

为什么 JavaScript 可以浏览器中被执行 不同的浏览器使用不同的 JavaScript 解析引擎 Chrome 浏览器 => V8 Firefox 浏览器 => OdinMonkey...为什么 JavaScript 可以操作 DOM 和 BOM 每个浏览器都内置了 DOM、BOM 这样的 API 函数,因此,浏览器的 JavaScript 才可以调用它们 浏览器的 JavaScript...powershell窗口 powershell的快捷键: ⬆,可以快速定位到上一次执行的命令。.../files/1.txt', 'utf8', function(err, dataStr) { // 2.1 打印失败的结果 // 如果读取成功,则 err 的值为 null // 如果读取失败.../files/3.txt', 'ok123', function(err) { // 2.1 如果文件写入成功,则 err 的值等于 null // 2.2 如果文件写入失败,则 err 的值等于一个

1.6K20

powershell学习备忘

如果最后一个操作成功,则包含 TRUE,失败则包含 FALSE。 $_ 包含管道对象的当前对象。在对管道的每个对象或所选对象执行操作的命令,可以使用此变量。...函数的 Process 块,$Input 变量包含当前位于管道的对 象。 Process 块完成后,$Input 的值为 NULL。...$NULL 包含 NULL 或空值。可以命令和脚本中使用此变量表示 NULL,而不是使用字符串”NULL”。 如果该字符串转换为非空字符串或非零整数,则可将该字符串解释为 TRUE。...Powershell支持四个作用域:全局、当前、私有和脚本。有了这些作用域就可以限制变量的可见性了,尤其是函数和脚本。...设置单个变量的作用域 $global 全局变量,在所有的作用域中有效,如果你脚本或者函数设置了全局变量,即使脚本和函数都运行结束,这个变量也任然有效。

12.3K60

1.PS编程入门基础语法

如果最后一个操作成功,则包含 TRUE,失败则包含 FALSE。 $^ : 包含会话所收到的最后一行的第一个令牌。 $_ : 包含管道对象的当前对象。...函数的 Process 块,$Input 变量包含当前位于管道的对象。 Process 块完成后,$Input 的值为 NULL。...$NULL: 包含 NULL 或空值。可以命令和脚本中使用此变量表示 NULL,而不是使用字符串”NULL”。 如果该字符串转换为非空字符串或非零整数,则可将该字符串解释为 TRUE。...只有声明参数的作用域(如脚本或函数, 此变量才有值。可以使用此变量显示或更改参数的当前值,也可以将参数值传递给 其他脚本或函数。...#参数=${C:/Powershell/ping.bat} 5.变量作用域 描述: PS所有的变量都有一个决定变量是否可用的作用域,有了作用域就可以限制变量的可见性了,尤其是函数和脚本

20.5K20

内网渗透之DCOM横向移动

接口被定义为“在对象上实现的一组语义上相关的功能”,其实质是一组函数指针表,每个指针必须初始化指向某个具体的函数体,一个组件对象实现的接口数量没有限制。...利用这个接口,客户端程序对象能够向网络另一台计算机上的服务器程序对象发送请求 COM提供了一套允许同一台计算机上的客户端和服务器之间进行通信的接口(运行在Windows95及之后版本的操作系统)。...DCOM使用远程过程调用(RPC)技术将组件对象模型(COM)的功能扩展到本地计算机之外,因此,远程系统上托管COM服务器端的软件(通常在DLL或exe)可以通过RPC向客户端公开其方法 攻击者进行横向移动时...启用基于主机的防火墙可以阻止RPC/DCOM交互及实例化操作; 4、监控文件系统(以及注册表),关注新引入的元素以及改动; 5、监控环境可疑的PowerShell操作。...如有可能,请强制启用PowerShell的“Constrained Language Mode(约束语言模式)”(这对特权账户来说可能有点难); 6、DCOM调用“失败”时,目标主机上的System日志中会生成

2.2K20

进攻性横向移动

当用户登录时,系统通过将其与存储安全数据库的信息进行比较来验证用户的密码。当用户的凭据通过身份验证时,系统会生成访问令牌。代表此用户执行的每个进程都有此访问令牌的副本。...以另一种方式,它包含您的身份并说明您可以系统上使用和不能使用的内容。不深入研究 Windows 身份验证的情况下,访问令牌引用登录会话,这是用户登录 Windows 时创建的。...image.png image.png 所以我们看到,即使通过 WMI,尽管 wmic.exe 能够通过 Powershell 目标上运行命令,但仍会创建命名管道,那么为什么首先要创建命名管道呢...SMB 上构建 XML 将失败。...,"\\192.168.10.131\webdav\build.xml","7") 这通过不需要任何身份验证来访问 WebDAV 服务器(本例也是 C2 服务器)解决了双跳问题。

2.1K10

OFFENSIVE LATERAL MOVEMENT 横向移动(译文)

令牌的信息包括与进程或线程关联的用户帐户的标识和特权。当用户登录时,系统通过将用户密码与安全数据库存储的信息进行比较来验证用户密码。验证用户的凭证后,系统将生成访问令牌。...换句话说,它包含您的身份并说明您可以系统上使用或不能使用的功能。不深入研究Windows身份验证的情况下,访问令牌会参考登录会话,这是用户登录Windows时创建的登录会话。...因此,我们看到即使通过WMI,尽管wmic.exe能够通过PowerShell目标上运行命令,但仍创建了命名管道,那么为什么要首先创建命名管道呢?...由于凭据没有发送到远程主机,因此远程主机无法向有效负载托管服务器进行身份验证Cobalt Strike,使用wmic时通常会遇到这种情况,解决方法是为该用户创建令牌,因此可以从该主机传递凭据。...,"\\192.168.10.131\webdav\build.xml","7") 通过不需要任何身份验证即可访问WebDAV服务器(本例也是C2服务器),从而解决了双跳问题。

4.1K10

技术分享|amsi绕过总结

powershell2.0(amsi是从win10、2016开始存在的),但是由于很多服务需要低版本的powershell,所以红蓝对抗也会碰到装有powershell2.0 的机器。...通过分析我们可以AmsiInitialize、AmsiOpenSession、AmsiScanBuffer这3个函数patch(补丁)都可以达到bypass amsi的效果...., (LPSTR)"powershell -NoExit dir", NULL, NULL, NULL, NULL, NULL, NULL, &si, &pi); HMODULE hAmsi...非主流对抗 1.劫持amsi.dll 原理 由于研发人员使用 LoadLibrary函数导入dll的时候没有使用绝对路径,因此程序会首先在当前目录下寻找dll 因此我们 powershell.exe同目录下放一个...而这个函数会先从注册表HKCU找对应的dll去解析,也就是当前用户,因此我们创建相应的注册表,让它调用失败就行了。简单来说利用的是注册表优先级来绕过。

1.6K21

原创 Paper | 利用 SSPI 数据报上下文 bypassUAC

整个漏洞利用的核心在于 Windows 本地身份验证和网络身份验证过程尝试的令牌存在一些差异,网络身份验证生成不受限的令牌,而我们可以通过某种方法验证时强制指定使用数据报式身份验证(数据报上下文)...图9 逆向 MSV1_0.dll 进入这个判断之前,函数会先检查协商标志的内容,除了新Windows版本始终为 True 的 NTLMSSP_NEGOTIATE_OEM_WORKSTATION_SUPPLIED...图17 模拟命名管道文档介绍 通过查看 ImpersonateNamedPipeClient 函数原型可以知道,命名管道服务器线程要成功调用 ImpersonateNamedPipeClient 函数需要满足四个条件的任意一个...图18 模拟的要求 图19 Network Service权限列表 此处利用的重点在于,本地环回身份验证,Lsass 将保存会话的令牌而不是调用者的令牌。...图20 查询Rpcss服务的Pid 图21 Rpcss服务相关句柄 开始验证之前,我们需要先取得一个 Network Service 的 PowerShell 环境。

14910

技术分享-持久性-WMI事件订阅

PowerShell PowerShell 包含可以查询 WMI 对象并将信息检索回控制台的 cmdlet。以下命令可用于验证是否已创建任意事件以及恶意负载/命令是否存储 WMI 存储库。...从 PowerShell 控制台执行以下命令将验证有效负载是否存储“ __EventConsumer** ”并且“ **__EventFilter ”已创建。...smbclient ////10.0.0.2//C$ -U pentestlab password vanilla Windows 10 版本,系统会记录登录/注销期间的成功和失败尝试。...以下模块可以特定的每日时间、登录失败期间和启动时 5 分钟内执行有效负载。...“ wmi_updater ” 模块能够从远程位置获取有效负载,而不是将其存储 WMI 存储库。它将注册为“ AutoUpdater ”,并且可以启动时或一天的特定时间设置触发器。

2.5K10

PS编程基础入门1

如果最后一个操作成功,则包含 TRUE,失败则包含 FALSE。 $^ : 包含会话所收到的最后一行的第一个令牌。 $_ : 包含管道对象的当前对象。...函数的 Process 块,$Input 变量包含当前位于管道的对象。 Process 块完成后,$Input 的值为 NULL。... Windows PowerShell 调试程序到达断点时,Windows PowerShell 也会出现嵌套命令提示符。...只有声明参数的作用域(如脚本或函数, 此变量才有值。可以使用此变量显示或更改参数的当前值,也可以将参数值传递给 其他脚本或函数。...#参数=${C:/Powershell/ping.bat} 5.变量作用域 描述:PS所有的变量都有一个决定变量是否可用的作用域,有了作用域就可以限制变量的可见性了,尤其是函数和脚本

14.6K40

无招胜有招: 看我如何通过劫持COM服务器绕过AMSI

这个过程我们IDA可以看出,从图中 我们可以看到COM服务接口ID(IID)和ClassID(CLSID)传递给CoCreateInstance(): 甚至,我们可以通过查看ProcMon来验证这一点...AmsiCloseSession之类的函数。在这个过程如果我们强制COM实例化失败,那么AMSI将无法调用用来扫描恶意程序内容所需的函数方法。...这将导致其加载失败,并阻止任何扫描恶意软件的方法被访问,最终使得AMSI不可使用。...由于这个原因,我们可以将PowerShell.exe复制到我们可以写入的目录,并 将易受攻击的amsi.dll版本放到这个目录。...关于防御方法,我们觉得对那些正常目录之外执行任何的二进制文件(wscript,cscript,PowerShell)操作进行监视操作将是一个好的想法。

2.7K70

免杀|白加黑的初步探究

答:白加黑就是通过DLL劫持应用程序的导出目录通过创建一个DLL并通过LoadLibrary函数(或者找一个已有的DLL注入恶意代码)来加载DLL文件。...又因为某些原因Powershell无文件落地免杀国内其实不太流行,因为360\天擎一旦发现Powershell运行一些敏感函数就会标记直接拦截,导致执行失败,但是它却可绕过火绒等杀软。.../Invoke-Obfuscation),我们可以使用Invoke-Obfuscation来混淆/加密恶意的PowerShell脚本,使得PowerShell脚本逃避杀软的检测,原理是代码是解释器执行的...第一步将涉及创建恶意PowerShell脚本并将其保存,沙箱检测如下所示: 创建并保存恶意PowerShell脚本后,打开混淆工具,我们可以通过Invoke-Obfuscate提示符运行以下命令来完成...ASMI免杀处理 为了做好Powershell的免杀,我们针对内存规避有着以下的手段: 专注于内存操作,不将文件写入磁盘 通过利用各种Windows API将有效负载注入进程 然后存储器的单独线程执行有效载荷

2.7K10

WMI ——重写版

为了验证上面我描述的一些内容,我建议WmiExplorer进行查看: ? 可以注意到前面描述的Namespace、Class、Properties、Methods……。...MSDN有提到“wmic 的 alias 是对 class 、property、method 的友好重命名”,你可以用 wmic alias qfe list brief 验证这一点: ?...这里代码太多,直接给了图片,整个脚本逻辑很清晰,只有3个函数Install-Persistence、RemovePersistence、Check-WMI,功能和函数名相同,实际使用时仅需要修改 $Payload...WMI Attacks – Stealthy Command “Push” ---- 上面例子基本调用的是 powershell或cmd,笔者其他篇中提到过ELK配合sysmon,查找这类攻击很容易...是出现4625事件,4625事件是登录失败( runas 输入错误账户密码即可导致该事件 ) * Empire `persistence/elevated/wmi`,同样是 4625 事件触发,

2K10

Ansible 客户端需求–设置Windows主机

注意 创建HTTPS侦听器时,需要创建一个现有证书并将其存储LocalMachine\My证书存储。如果此存储没有证书,则大多数命令将失败。...HTTP 401 /凭据被拒绝 HTTP 401错误表示身份验证过程初始连接期间失败。...无法加载内置模块 如果powershell失败并显示类似的错误消息, 则尝试访问环境变量指定的所有路径可能会出现问题。...当将SSH密钥身份验证与Ansible结合使用时,远程会话将无权访问用户的凭据,并且尝试访问网络资源时将失败。这也称为双跳或凭据委派问题。...也可以看看 剧本简介 剧本介绍 技巧和窍门 剧本的提示和技巧 Windows模块列表 Windows特定的模块列表,全部PowerShell实现 用户邮件列表 有一个问题?

9.9K41
领券