这里主要是对Java中多种命令执行的方式跟踪源码进行原理分析、构造利用代码、集成自研工具。...一个普通的命令执行是 Runtime.getRuntime().exec("calc"); 如果使用反射机制 可以是 Class.forName("java.lang.Runtime").getMethod...native方法进行命令执行 所以我们只需要反射获取ProcessImpl类的构造方法并实例化就会执行我们的恶意逻辑 UNIXProcess 上面是针对windows的方式 针对linux,在前面的分析中知道主要是在其...start方法中调用了UNIXProcess类的构造方法 执行forkAndExec这个native方法进行命令执行 other 甚至于,我们知道最后主要是在create方法(windows)、forkAndExec...方法(linux)中执行命令,我们同样可以通过反射这两个方法进行命令执行。
PowerShell 脚本执行策略用于控制何时以及何种方式执行 PowerShell 脚本。通过执行策略可以限制 PowerShell 脚本的执行范围,为系统管理员提供一定的安全保障。...1、执行策略等级● AllSigned:要求所有脚本和配置文件都由受信任的发布者签名,包括在本地计算机上编写的脚本;从尚未分类为受信任或不受信任的发布者运行脚本之前,需要确认是否执行。...● Bypass:脚本执行没有任何限制● RemoteSigned:本地计算机上的本地脚本,不需要数字签名直接允许;从Internet或其他计算机下载的脚本,需要脚本必须经过数字签名才能运行。...● Restricted:允许单个命令,但不允许脚本,它会阻止运行所有脚本文件。● Undefined:当前范围没有执行策略。...4、执行策略常用命令获取当前执行策略Get-ExecutionPolicy获取影响当前会话的所有执行策略Get-ExecutionPolicy -List调整脚本执行策略Set-ExecutionPolicy
运行”,安装完成后重启生效,重启后原本PowerShell的图标会变,执行Install-WMF5.1.ps1前首先要运行powershell开启下“允许执行脚本”,命令是set-ExecutionPolicy...RemoteSigned具体情况如下图,执行完这个命令后再执行Install-WMF5.1.ps1 image.png image.png image.png 查看powershell版本的命令...$PSVersionTable image.png 以下都是特别有用的powershell常用命令 【获取日志】 Get-EventLog -LogName security //安全相关 Get-WinEvent...name //获取rsat打头的所有角色 wmic os get caption //获取系统版本 wmic os get osarchitecture //获取系统架构是64还是32 ver //cmd命令行执行...control system查看产品ID image.png 第二种:CMD命令行运行powershell,输入命令查看 (Get-ItemProperty -Path "Registry::HKEY_LOCAL_MACHINE
1 package scut.cs.cwh; 2 3 import java.io.InputStreamReader; 4 import java.io.LineNumberReader;
文章前言 可以发现的是有不少渗透测试工具都是用PowerShell编写的,特别是对于红队团队的活动,因为大多数现代Windows都有PowerShell,而且管理员通常不会限制普通用户访问PowerShell...项目地址:https://github.com/nettitude/PoshC2 工具安装 安装此工具很简单,只需要执行以下命令即可: ./Install.sh ?...目标上线 之后将生产的恶意后门文件上传到目标主机或者通过主机上自带的下载工具下载恶意文件之后执行时会 ,下面以powershell为例做演示: ? 之后攻击主机上出现目标显示 ?...PoshC2将自动生成有效负载,并且该命令将在目标系统上执行以创建新服务 ? Windows中的服务: ? 当然,还有其他的方法,这里就不逐一演示了~ ?...文末小结 PoshC2的主要好处是它使用PowerShell,因此它对植入物没有任何依赖性,就像用python编写的其他命令和控制工具一样,此外,它具有快速,可靠和易于使用的详细输出,绝对是任何红队运作的工具之一
PowerShell命令 最近工作中写了大量的 PowerShell 脚本,将一些常用的命令分享出来,希望能帮助到大家。...1.PowerShell 连接 SQLServer 数据库,并执行 sql 语句: # 方法一:如果有账户密码,可以使用此方法登陆 #$Server = "10.181.100.8" #...ConnectionString $SqlConnection.Open() return $SqlConnection } catch{ return $null } } # 执行语句...} catch { Write-Warning $_ } Finally { $SqlConn.close() } return $DataTable } # 执行语句...优质文章推荐: redis操作命令总结 MySQL相关操作 SQL查询语句 前端中那些让你头疼的英文单词 Flask框架重点知识总结回顾 团队开发注意事项 浅谈密码加密 Django框架中的英文单词
在这篇文章中,我将跟大家介绍一种快速且狡猾的绕过技术,这项技术需要利用C#编译代码来执行我们的PowerShell脚本。 首先,我们为什么不适用powershell.exe来执行我们的.ps1脚本呢?...不过在C#中,我们需要对程序代码进行编译才可以使用和执行,即编译型语言,这是它和PowerShell这种解释型脚本语言有很大区别。...鉴于PowerShell.exe只是.NET程序集“system.management.automation”的解释器,因此它应该可以在C程序中与这个对象进行交互并执行.ps1脚本。...接下来,我们需要将脚本添加到新创建的pipeline中,并对通信信道进行排序,最后通过Invoke()方法执行我们的脚本命令。...我们成功地在不直接使用powershell.exe的情况下调用并执行了我们的脚本代码。
大家都知道java命令执行执行是,Runtime.getRuntime().exec("whoami") 但是具体为啥这么写,我之前一直处于很蒙蔽的状态,接下来本文就是分析为啥命令执行要这么写。...【为啥蛤蟆的这么长】 1、首先我们来看一段代码,执行后弹计算器,计算器被吃掉了。。。。...从idea中看exec方法不是本来就在Runtime类中嘛 3、搞事情,直接调用 public static void main(String[] args) throws Exception...public static Runtime getRuntime() { return currentRuntime; } } ``` 看完上面这个 你就知道整个命令执行过程了...,, Runtime.getRuntime().exec("calc") Runtime执行getRuntime这个方法,才能new出Runtime这个对象,在去执行calc这个方法。。。。。。。
java代码执行系统命令 //这样写支持命令中的管道符 Process ps = Runtime.getRuntime().exec(new String[]{ "/bin/sh", "...-c", "ps -ef | java" });
https://blog.csdn.net/10km/article/details/78913746 我们知道java中执行控制台命令,都是通过 Runtime.exec系列方法。...如果要执行root权限的命令需要用到sudo,需要输入sudo密码,这个也好解决,使用echo可以向sudo输入密码,同时sudo要加-S参数指定从标准输入读取密码,示例如下: echo ‘sudopassword...’ | sudo -S cat /etc/profile 但是在java中通过 Runtime.exec方法执行上面的命令,还是会无效。...修改后 wq保存,记得要sudo chmod -w /etc/sudoers删除写权限 为了简化sudo命令的执行,我封装一了个CmdExceuor类,允许执行多条命令。...; import java.util.logging.Logger; /** * linux命令行执行器 * @author guyadong * */ public class CmdExecutor
需要注意的是,命令需要以数组的形式传递参数,就是把正常的命令以空格切分成数组就行了。而且参数前后不能有空格,不然会报错。...具体的测试代码如下: import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader
Windows Server 的 Shell,也就是从 Dos 继承过来的命令行,处理简单问题尚可,一旦遇到稍微复杂一点的问题,它就会把本已复杂的问题,弄得更加复杂。...所以我么你可以看见,powershell 并不能执行 cmd 中的全部命令。 powershell 不能执行任何 cmd 命令,准确来说,至少是不能直接执行。...Powershell 可以作为一个应用程序在 cmd 中执行,cmd 也可以在 Powershell 中执行。 为什么 powershell 能够执行 cmd 命令?...|powershell.exe -NoP - -noprofile 简写 -NoP, 为不加载 windows poweshell 配置文件 你也可以从网络上下载脚本并执行,这样就不会写入磁盘和修改配置文件...== 从开头就可以看到它在绕过执行策略时使用了 -nop 不加载 powershell 配置文件,-w 隐藏窗口(执行该命令后会直接隐藏命令行窗口),-sta 使用 sta 模式创建 GUI 界面,-enc
Windows PowerShell运行hexo命令 前言 一个月前更新了Windows11,在桌面右键可以直接开启 Windows PowerShell 便在安装 git 时没有选择在右键快捷打开的配置...,便有了这篇水文 在新系统上装了hexo环境,可打开系统默认的 Windows PowerShell 运行命令却无法识别,以为是系统环境变量没设置好。...可在 Git bash 和 CMD 终端却可以执行,再仔细看 Windows PowerShell 中的提示,原来是提示的无法加载文件,因此在此系统上禁止运行脚本。...所在位置 行:1 字符: 1 此时,在 CMD 中执行以上命令都没问题,所以不是系统环境变量的问题。...即可(安全警示,如果不输入同意还是无法解决问题) 随后便可直接右键选择 Windows PowerShell 运行hexo命令了 ( : 记得要用 cd 跳转到你的文件夹目录哦~
Java可以使用Runtime和ProcessBuilder两种方式执行Shell命令。...一、使用Runtime执行Shell命令 Java的Runtime类提供了一个可以执行系统命令的方法,exec()方法可以执行任何系统命令,例子如下: try { Process process...二、使用ProcessBuilder执行Shell命令 Java的ProcessBuilder类可以用于创建操作系统进程。...三、注意事项 在执行Shell命令时,需要注意命令执行环境的权限问题。也就是说,Java运行的环境是否有权限执行指定的Shell命令,否则会抛出权限错误。...另外,如果Shell命令执行时间过长,可能会导致Java主线程阻塞等待。因此,对于可能执行时间较长的Shell命令,应当采用异步方式执行。
学会如何写一段转换jar包的程序,将你的jar包转换成你能使用java -jar 命令运行jar包或象在windows系统上那样通过双击来运行jar包。...另一个原因是让用户很容易地执行包中的应用。那么在java的世界里,为什么jar是第二类公民――仅仅用作打包――当他们能成为第一类公民的时候,能和本地执行程序一样吗?...如果想执行jar文件,可以使用java命令的-jar选项。例如,你有一个可以运行的myjar.jar文件。因为该文件是可以执行的,所以你可以用如下命令执行之:java –jar myjar.jar。...在该文件中,有一个叫Main-Class的特殊条目,它说明了java -jar命令执行的类。 问题是你必须正确地在清单文件中加入这个特殊的条目――它必须是在特定的位置和特定的格式。...用API修改改配置 从java1.2之后,一个叫java.util.jar的包可以操作jar文件(注:它架构在java.util.zip包之上)。
你可能有很多原因要将一个命令重复执行多次,本文介绍在多个平台下如何多次重复执行命令。 背景 最近遇到一个偶然复现的单元测试错误,于是在每次运行时,打算重复运行多次来调查问题是否已经解决。...实际上,重复执行命令有更多用途: 通过重复执行来复现一些偶发的问题 执行一组命令,每次只有参数不同 大大减轻手工输入命令的工作量 Bash Linux 或者 Mac 系统的终端中,可以使用 for 来完成重复执行命令...for i in {1..10}; do echo ${i}; done 这表示从 1 到 10(两端的值都会取到),依次输出这些数。...PowerShell PowerShell Core 是跨平台的配置框架,可以在 Windows/Linux/Mac 系统下使用。...在 PowerShell 中,也可以使用 for: for ($i=1; $i -le 10; $i++) { echo $i } 这表示从 1 到 10(两端的值都会取到),依次输出这些数。
format - 一种将参数传递给命令的格式command - 要执行的脚本名称或命令,如果 execute_direct 为假。...就可以写出一个执行命令的xml。...该可执行脚本存储在 users_scripts 目录中,可以从任何来源读取数据。...可执行脚本存储在 users_scripts 目录中,可以从任何来源读取数据。...所以这只能本地命令执行 有点鸡肋。
本文就介绍 PowerShell 的命令行启动参数。利用这些参数,你可以自动化地通过 PowerShell 程序来完成一些原本需要通过手工执行的操作或者突破一些限制。...比如下面的 FRP 反向代理程序: 借助 cmd.exe 来启动的方法可以参见我的另一篇博客: cmd.exe 的命令行启动参数(可用于执行命令、传参或进行环境配置) - 吕毅 那么我们如何能够借助于...比如其中之一,执行脚本。 使用 PowerShell 执行命令/脚本后保留窗口不退出 需要加上 -NoExit 参数。.../frpc.ini" 一定要注意,-c 和后面的命令必须放到最末尾,因为 -c 后面的所有字符串都会被解析为需要执行的命令。...使用 PowerShell 执行多条命令/脚本 多条脚本之间使用 ; 作为分隔: 1 > pwsh -c "D:\walterlv\frpc.exe -c .
Windows PowerShell是专门为系统管理员设计的Windows命令行外壳程序。PowerShell包括可独立使用或组合使用的交互式提示和脚本环境。...默认情况下 然后从cmd.exe运行脚本,例如: c:\>powershell "\Hello;World.ps1" 也可以直接运行,而无需放入PowerShell shell。...测试过程如下: 1、生成powershell命令:首先,我们创建一个用于混淆的Base64编码的文件名;它将下载并执行一个在本例中名为“ calc.exe”的远程可执行文件。...为此,用户在打开“ .ps1”文件时必须已将PowerShell启用为其默认程序。 2、然后给PS脚本起一个普通的开始名称,然后使用“;”分隔命令。...例如 test; powershell -e 命令>; 2.ps1 3、双击以在PowerShell中打开,效果如下: ? 或者在命令行下执行: ?
Powershell关键命令介绍 我们将在这介绍三种简单的但是很关键的命令,这些命令能够让你的 Powershell之旅更加顺利。...命令的最后是-autosize, 他让Powershell每列的宽度自动调整适应。 ....Get-Member 从我以前犯的错误得出来的教训,希望你能够铭记Get-member用法。关键点就是我们要把对象放在开头,而不是在命令的后面,另外一个教训就是我经常忘了管道符。...在Powershell里面, 大写的命令语句不会影响命令执行。 ---- Tab键的自动完成 可能是考虑到我们比较懒,Powershell也提供了支持tab键自动完成的功能。...一旦你输入了足够的命令来确保该语句唯一,即不会被别的重复的时候,你可以直接按tab键,powershell就会自动完成接下来的命令。
领取专属 10元无门槛券
手把手带您无忧上云