记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

骇客蜜罐实验——公网服务器

2014-07-07 00:20

 最近笔者获得了一台公网服务器的root权限,按耐不住要做一些好玩的事情了。

  学习GNU/Linux这么长时间了,这是笔者第一次控制一台真正的公网服务器。

  请访问http://eecs.cc:8080/测试本文最终结果,您可以使用ssh客户端尝试登陆并刷新页面进行验证。 

  我们开始吧!

  第一步:

  访问http://www.openssh.com/下载最新的源码包,我下的是 openssh-6.6p1.tar.gz 。

  看下图:

\

 

  解压源码包,打开源码根下auth2-passwd.c文件,找到上图中 userauth_passwd 函数定义所在,添加上面红色框中的两行代码。


yum install -y zlib-devel openssl openssl-devel
./configure --with-pid-dir=/usr/local/etc && make && make install

  现在配置我们的 ssh daemon 的运行参数:


vim /usr/local/etc/sshd_config

# 重要参数配置
Port 22
Protocol 2
HostKey /usr/local/etc/ssh_host_rsa_key
SyslogFacility AUTHPRIV
LogLevel
DEBUGDenyUsers *
MaxAuthTries 2
PasswordAuthentication yes

  启动‘陷阱’sshd:


/usr/local/sbin/sshd

  第二步:

  建立web服务器:



import web
import MySQLdb
import commands


web.config.debug = False
render=web.template.render('templates/')
urls = (
"/", "hello",
"/log","viewlog",
'/list','list',
'/secure','secure',
"(.*)","notfound"
)
app = web.application(urls, globals())

class hello:
def GET(self):
#name='Jack'
i=web.input(name=None)
bb='bobo'
return render.a(i.name,bb)

class viewlog:
def GET(self):
named='log'
bb='wa'
return render.a(named,bb)

class notfound:
def GET(self,path):
#name='notfound'
return render.notfound(path)

class list:
def GET(self):
conn=MySQLdb.connect(host='172.16.31.99',user='web',passwd='webyun',db='web')
cur=conn.cursor()
lis=cur.execute( ' show tables; ' )
lis=cur.fetchall()
cur.close()
conn.close()
#lis=[1,2,3,'123123',123,'abc' ]
return render.list(lis)

class secure:
def GET(self):
try:
return commands.getoutput(' grep -E -C 2 ":\)" /var/log/secure ')
except:
return 'file access error :('

if __name__ == "__main__":
app.run()


 

   启动web服务器:


nohup python web3c.py 8080 &>log &

  最终效果展示:

\

  额。。。

 

  文章短小,却也花费了一番精力,如有建议和看法,欢迎提出一起讨论!



知识来源: www.2cto.com/Article/201407/314331.html

阅读:91626 | 评论:0 | 标签:无

想收藏或者和大家分享这篇好文章→复制链接地址

“骇客蜜罐实验——公网服务器”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

❤人人都能成为掌握黑客技术的英雄❤

ADS

标签云