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

一个有意思的面试题 → 线程交替输出问题

问题描述   用两个线程,一个输出数字,一个输出字母,交替输出 1A2B3C4D...26Z ?   该如何实现?...这种方式,相信大家都能写出来,但是这里留三个问题(面试点)   1、线程代码中, try 中的 notify() 能否与 wait() 交换位置,为什么   2、线程代码中, for 下的 notify...这种方式,写出来应该也不难,同样留三个问题(面试点)   1、线程代码中, for 中的 signal() 能否与 await() 交换位置,为什么   2、线程代码中, for 下的 signal()...在线程 t2 中的 LockSupport.park() 之前执行会怎么样,为什么   3、上面的代码能否保证一定先输出数字,为什么   4、 LockSupport 的 park 、 unpark 与...这种方式也许不太好理解,留四个问题(面试点)加深理解   1、线程代码中, while 条件为什么是 !

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

PowerShell系列(十一):PowerShell Cmdlet高级参数介绍(一)

今天给大家讲解PowerShell Cmdlet高级参数相关的知识,希望对大家学习PowerShell能有所帮助!...再执行创建文件命令额外输出信息详细信息: 正在目标“目标: D:\logs\端午节2.txt”上执行操作“创建文件”。总结:针对获取操作的命令函数执行过程一般没有写入相关信息。...和Verbose类似,如果没有相应的调试信息输出,也不会输出任何信息,如果开启该参数后,命令执行过程中涉及到参数调试,输出的结果都会停下来等待人为干预是否执行下一步。...● Inquire:执行报错后,询问用户是否继续执行,错误信息会记录到$Error变量。...下面举个例子,这里来删除一个不存在的文件首先执行remove-item 端午节2.txt -ErrorAction Ignore因为这里指定的是Ignore参数,不会输出错误信息也不会记录到$Error

19520

网络安全自学篇(十九)| Powershell基础入门及常见用法(一)

不同操作系统内置的Powershell是不一样的,比如win7或win2008,如何查看版本呢? ? 输出结果如下图所示: ? 2.为什么强大?...二.Powershell管道和重定向 1.管道 Powershell管道旨在将上一条命令的输出作为下一条命令的输出。 ?...2.重定向 重定向旨在把命令的输出保存到文件中,‘>’为覆盖,’>>’追加。 ?...如果两个 >> 它会在原来的基础上,再进行补充(类似 a+),而单个大于号是删除原来的写入(类似 w)。 ? 输出结果如下图所示。 ? ?...更新环境变量,注意它只是临时生效,并不会记录到我们的系统中。 ? ? 永久生效如何实现呢?增加路径至环境变量PATH中,只对User用户生效。 ?

7.7K30

围绕PowerShell事件日志记录的攻防博弈战

PowerShell攻击特性总结: 无文件攻击特性防查杀,可躲避防火墙、众多反病毒软件和入侵防御系统:PowerShell的无文件特性,使其无需接触磁盘,内存直接加载并执行恶意代码。...它们不提供所有已执行命令或其输出的详细历史记录。...Windows PowerShell.evtx 每次在PowerShell执行单个命令时,不管是本地会话还是远程会话都会产生以下日志: • 事件ID 400:引擎状态从无更改为可用,记录任何本地或远程PowerShell...,涉及执行过程和输入输出内容,模块日志功能的加入几乎可以完整的记录下PowerShell执行日志,给日志分析预警监测带来了极大的方便。...0x04 PowerShell v5 提供反混淆功能 PowerShell v5加入了CLM和ScriptBlock日志记录功能,能去混淆PowerShell代码并记录到事件日志,有效的抵御之前的攻击手段

1.7K10

内网渗透之横向移动 -- 从域外向域内进行密码喷洒攻击

命令语法 基于单个⽤户单个密码喷洒 crack.exe -i 10.10.10.10/24 -p 445 -U redteam\saulgoodman -P Saul!...下载地址: https://github.com/3gstudent/Homework-of-Powershell 使⽤单个密码 powershell -exec bypass Import-Module...超级弱⼝令⼯具对域内进⾏密码喷洒 超级弱⼝令检查⼯具是⼀款Windows平台的弱⼝令审计⼯具,⽀持批量多线程检查,可快速发现弱密码、弱⼝令账号,密码⽀持和⽤户名结合进⾏检查,⼤⼤提⾼成功率,⽀持⾃定义服务端...先从powershell导入脚本,然后再运行 ? 可以看到运行结果 ?...PasswordList:密码字典 OutFile:输出文件名 Domain:要爆破的域 Force:强制喷洒继续,而不提示确认。

3.8K20

四十.Powershell恶意代码检测系列 (1)Powershell基础入门及管道和变量的用法

不同操作系统内置的Powershell是不一样的,比如win7或win2008,如何查看版本呢? $psversiontable 输出结果如下图所示: ---- 2.为什么强大?...管道和重定向 1.管道 Powershell管道旨在将上一条命令的输出作为下一条命令的输出。...ls | format-table name, mode ---- 2.重定向 重定向旨在把命令的输出保存到文件中,‘>’为覆盖,’>>’追加。...如果两个 >> 它会在原来的基础上,再进行补充(类似 a+),而单个大于号是删除原来的写入(类似 w)。 输出结果如下图所示。...windir 创建新的环境变量 $env:name='eastmount' ls env:na* 删除环境变量 del env:name ls env:na* 更新环境变量,注意它只是临时生效,并不会记录到我们的系统中

8.7K30

二十二.Powershell基础入门及常见用法-1

不同操作系统内置的Powershell是不一样的,比如win7或win2008,如何查看版本呢? $psversiontable 输出结果如下图所示: ---- 2.为什么强大?...管道和重定向 1.管道 Powershell管道旨在将上一条命令的输出作为下一条命令的输出。...ls | format-table name, mode 2.重定向 重定向旨在把命令的输出保存到文件中,‘>’为覆盖,’>>’追加。...如果两个 >> 它会在原来的基础上,再进行补充(类似 a+),而单个大于号是删除原来的写入(类似 w)。 输出结果如下图所示。...创建新的环境变量 $env:name='eastmount' ls env:na* 删除环境变量 del env:name ls env:na* 更新环境变量,注意它只是临时生效,并不会记录到我们的系统中

7.2K20

Active Directory中获取域管理员权限的攻击方法

此处的屏幕截图显示了一个类似的 PowerShell 函数,它从 SYSVOL 中的 XML 文件中加密 GPP 密码。...破坏单个工作站、提升权限和转储凭据。使用转储凭据横向移动到其他工作站、提升权限并转储更多凭据。...第 1 步:入侵单个工作站并利用系统上的提权漏洞获取管理权限。运行Mimikatz或类似工具以转储本地凭据和最近登录的凭据。...此文件还包含所有域用户和计算机帐户的密码哈希。域控制器 (DC) 上的 ntds.dit 文件只能由可以登录到 DC 的人员访问。...一旦攻击者转储了域数据库,就有很多选项可以持久化和保留高级权限,包括创建和使用可用于基于单个域的入侵利用整个森林的金票。

5.1K10

命令控制之PowerShell

文章前言 可以发现的是有不少渗透测试工具都是用PowerShell编写的,特别是对于红队团队的活动,因为大多数现代Windows都有PowerShell,而且管理员通常不会限制普通用户访问PowerShell...目标上线 之后将生产的恶意后门文件上传到目标主机或者通过主机上自带的下载工具下载恶意文件之后执行时会 ,下面以powershell为例做演示: ? 之后攻击主机上出现目标显示 ?...输出去哪里了呢?输出就在服务端: ? 查看进程 ps ? ? 主机信息 get-computerinfo ? ? 屏幕截取 get-screenshot ? ? ?...信息如下(个人感觉这个功能并是不那么完美,至少没有记录到输入的主要信息,感觉更多的像是对操作的应用程序记录) ? 用户信息 get-userinfo ? ? 端口扫描 portscan ? ?...文末小结 PoshC2的主要好处是它使用PowerShell,因此它对植入物没有任何依赖性,就像用python编写的其他命令和控制工具一样,此外,它具有快速,可靠和易于使用的详细输出,绝对是任何红队运作的工具之一

87520

网络安全自学篇(二十)| Powershell基础入门及常见用法(二)

三.Powershell循环语句 1.foreach循环 这里定义数组采用“$arr=1…10”实现,表示1到10的数字,在调用foreach循环输出。 ? ?...定义文件“test03.ps1”,只输出偶数内容。 ? ? 接着利用foreach操作文件目录,将C盘python34文件夹下的路径全部提取出来,赋值到file中输出。 ? ?...学习Powershell基础语法之后,更重要的是解决实际问题,后续作者将继续深入学习。 ? 5.switch循环 使用switch循环实现输出数组1到10,并进行奇数和偶数判断 ? ?...输出结果如下图所示: ? 在Powershell中,转义字符不再是斜杠(\)而是(`),如下所示。 `n 换行 `r 回车符 `t tab键 `b 退格符 `’ 单引号 ? ? ?...HKEY_CLASSES_ROOT:定义文档的类型\类以及与类型关联的信息以及COM组件的配置数据 HKEY_CURRENT_USER:包含当前登录到Windows的用户的配置信息 HKEY_LOCAL_MACHINE

2.4K20

一次powershell的免杀之路(绕过360、火绒)

一次powershell的免杀之路 powershell简介 powershell是一种命令行外壳程序和脚本环境,使命令行用户和脚本编写者可以利用 .NET Framework的强大功能,PowerShell...实战中powershell的应用 (1)PowerShell首先是个Shell,定义好了一堆命令与操作系统,特别是与文件系统交互,能够启动应用程序,甚至操纵应用程序;第二,PowerShell允许将几个命令组合起来放到文件里执行...杀毒软件检测原理 我们可以根据杀软的原理进行针对性的绕过 无文件落地的特点: 顾名思义,无需将恶意文件传到目标服务器/机器上,直接利用powershell的特性加载到内存执行。...\payload.ps1 -Image . \123.jpg -Out 456.jpg -Web 为了方便从上传,这里输出jpg格式,你也可以输出png格式,问题不大 并且复制这段代码 文件夹里多出一个...\用户名\Desktop\payload.ps1 /*paloads.ps1的绝对路径/ token all 1 out ..\1.ps1 /*输出文件/ 输出一个ps1文件 暂且不对它进行处理

5.5K10

如何在Azure VMs中大规模运行PowerShell

运行单个命令 从PowerShell中的AzureRM会话运行此命令,该会话使用Contributor帐户进行身份验证。...“RunPowerShellScript”允许我们上传和运行PowerShell脚本。 ScriptPath – 你要运行的PowerShell PS1文件的路径。...使用该命令,我们可以针对整个订阅,特定资源组或单个主机列表运行命令。...你可以在此处获取到MicroBurst - https://github.com/NetSPI/MicroBurst 在我的演示中,我将在我的测试订阅中对所有(5)个VM运行Mimikatz,并将脚本的输出写入到一个日志文件...除此之外,你可能需要考虑其他的PowerShell选项: Spawn Cobalt Strike,Empire 或 Metasploit sessions 搜索敏感文件 在一个VM上运行域信息收集脚本,

78210

痕迹清理方法小结

2、Windows日志清除 参考:渗透技巧——Windows日志的删除与绕过 (1)wevtutil.exe 支持系统:Win7及以上 获取日志分类列表: wevtutil el >1.txt 获取单个日志类别的统计信息...: wevtutil gli "windows powershell" 查看指定日志的具体内容: wevtutil qe /f:text "windows powershell" 删除单个日志类别的所有信息...: wevtutil cl "windows powershell" (2)NSA DanderSpiritz 参考:NSA DanderSpiritz测试指南——木马生成与测试 统计日志列表,查询所有日志信息...\wevtsvc.dll 并且,如果线程调用了wevtsvc.dll,就可以判读该线程实现了日志记录功能 结束线程 使用TerminateThread 恢复方法 结束进程svchost.exe 重新开启...dd if=/dev/zero of=要删除的文件 bs=大小 count=写入的次数 (3)wipe Wipe 使用特殊的模式来重复地写文件,从磁性介质中安全擦除文件

99810

围绕PowerShell事件日志记录的攻防博弈

PowerShell一直是网络攻防对抗中关注的热点技术,其具备的无文件特性、LotL特性以及良好的易用性使其广泛使用于各类攻击场景。...PowerShell攻击特性总结: • 无文件攻击特性防查杀,可躲避防火墙、众多反病毒软件和入侵防御系统:PowerShell的无文件特性,使其无需接触磁盘,内存直接加载并执行恶意代码。...它们不提供所有已执行命令或其输出的详细历史记录。...0x04 PowerShell v5 提供反混淆功能 PowerShell v5加入了CLM和ScriptBlock日志记录功能,能去混淆PowerShell代码并记录到事件日志,有效的抵御之前的攻击手段...for user input”,比如进行简单反向shell就又多了一种方法,且并未记录到本地执行反弹PWSH的操作。

1.3K30

程序猿修养 日志应该如何写

同时我的日志本身也会自己清理,这样就完成了清理空间的功能 日志方式 说到日志,其实日志只是输出的内容,至于的方法可以有多样,用的最多也是最快的是通过输出窗口记录,建议的方法是通过 Debug 静态类进行记录而不是通过...,详细请看C# 如何写 DEBUG 输出 文件记录 另外的日志的方法是通过文件记录和通过追踪记录,一般文件记录在于大量调试信息的记录以及在有一群逗逼小伙伴干扰了输出窗口的前提下,不得不自己新建一个文件用于记录日志...当然在进行多进程调试的时候也会用到文件日志的方法 通过文件记录的方法在服务器端推荐使用 Log4Net 框架,这个框架不仅支持文件记录还可以记录到数据库和做分布式记录等 在客户端的文件记录推荐使用 NLog...正则就可以匹配出所有我自己模块的输出内容 在做解析和分析的时候,也可以方便通过特定标签找到对应的信息 结构化日志 在记录到文件和上传到服务器等的日志建议是结构化记录,这样方便分析 如果一个日志文件里面包含了多个不同的结构和格式...,那么很快就可以知道是方法重入还是多线程调用 [99] 业务开始 [2] 业务开始 // 忽略一些日志 [99] 业务结束 上面的数字表示的是线程号,通过线程号就可以从上面日志看到是多线程问题 次数

1.3K20
领券