Linux查找疑似被挂木马文件方法以及Nginx根据不同IP做不同反向代理

一、先说被挂马的文件吧。

木马文件一般会伪装成正常文件,或者非可执行文件,以达到欺骗的目的。

比方说,伪装成icon图标文件。

找到一个伪装的文件,用编辑器打开,就会发现里面是源码。

这种的工作原理大概是,在某一个正常的文件中用include引入这个图标文件,

然后,文件中的代码就被不知不觉的跟随正常的应用文件执行了。

同时,为了达到隐藏的目的,include的代码也不是显式的写的。

例如:@include "\x2fh\x6fm\x65/\x77w\x77r\x6fo\x74/\x64e\x66a\x75l\x74/\x77p

这里有一点要注意,\xdd这样的写法,其中dd是16进制数,用这样的元字符来代替

相应的字母,以达到隐式拼接路径的目的。

下面说怎么查找:

我用的命令是:

grep --color -i -r -n "@include"  /home/

其他方法可查看这个链接

这样就可以在指定位置,比如“/home/”目录里查看所有包含“@include”的文件

然后用文本编辑器打开疑似木马文件的那个文件,看是否是代码。

如果是,找出其代表性的字符。比如,define的常量。

接下来就用类似上面的步骤,查找出具有相同特征的文件就行了。

二、用Nginx做反向代理

先上代码:

location /
{
    proxy_redirect     off;
    proxy_set_header   Host             $host;
    proxy_set_header   X-Real-IP        $remote_addr;
    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
    if ($remote_addr ~* 255.255.255.0){
        proxy_pass  http://127.0.0.1:8080;
        break;
    }
    proxy_pass  https://www.baidu.com;
}

其中如果是255.255.255.0这个IP来访问,则跳转到本地8080端口

前提是要打开并监听这个端口

如果不是,则跳转到百度

这里有一点要注意,if条件里面,如果包含路径,要用$request_uri来代替。

同时,如果if中不使用proxy_pass则不会执行if里面的配置。

也附上链接地址

原文地址:https://www.cnblogs.com/nssdeblog/p/8474727.html

时间: 2024-10-03 20:47:10

Linux查找疑似被挂木马文件方法以及Nginx根据不同IP做不同反向代理的相关文章

Linux查找和替换目录下所有文件中字符串(转载)

转自:http://rubyer.me/blog/1613/ 单个文件中查找替换很简单,就不说了.文件夹下所有文件中字符串的查找替换就要记忆了,最近部署几十台linux服务器,记录下总结. 查找文件夹下包含字符串的文件 例:查找/usr/local目录下所有包含”rubyer.me”的文件. grep -lr 'rubyer.me' /usr/local/* vim替换单个文件中所有字符串方法 例:替换当前文件中所有old为new :%s/old/new/g #%表示替换说有行,g表示替换一行中

linux 查找几天的前的文件

查找当前目录下 5 天前的所有文件 ,并删除 find ./ -mtime +5 |xargs rm -rf

Linux查找含有某字符串的所有文件

转自:http://151wqooo.blog.51cto.com/2610898/1162118 如果你想在当前目录下 查找"hello,world!"字符串,可以这样: grep -rn "hello,world!" * * : 表示当前目录所有文件,也可以是某个文件名 -r 是递归查找 -n 是显示行号 -R 查找所有文件包含子目录 -i 忽略大小写 下面是一些有意思的命令行参数: grep -i pattern files :不区分大小写地搜索.默认情况区分

linux 查找当前目录下超过100M的文件并移动到tmp

命令如下: find . -type f -size +100M -exec mv {} /tmp/ \; 说明: -type:文件类型,后面跟的f 指文件,如果是目录为d -size:文件大小,+100M指超过100M,-为小于,没有符号则为等于 -exec:管道命令,将前面的查询结果传递给后面的命令 {}:指前面传递过来的的查询结果 \;:和前面的exec配合使用,不写会提示:find: missing argument to `-exec' 如果只想将结果查询出来,只需要使用-exec前半

Unity (疑似)BUG LayerMask GetMask Default

发现一个Unity 的疑似 BUG, LayerMask的GetMask方法在对除"Default"层以外的其他层调用时, 都能正确返回2的该层编号N次方作为掩码. 而在例如 LayerMask.GetMask("Default");//return 0, 而不是1 的代码中, 返回的是0, 而不是2的N次方1. 此BUG可能导致部分处理Default层的代码出错.

Linux 如何防止被挂木马

Linux 如何防止被挂木马 linux 系统如何防止被×××挂×××程序,可以从多个角度进行思考,×××怎么会到linux服务器上,肯定是有入口被上传过去的,因此我们要从入口切断,我们要在web站点通过程序代码设置关卡,让可执行程序禁止上传.如果×××被上传成功了,但是×××怎么可以执行它的功能呢?? Linux 如何防止被挂木马 1. ×××程序思考,如何上服务器,如何执行. 2. 预防操作步骤如下: 2.1 从用户访问网站的角度操作 2.2 从内部管理人员角度:防止被提权 Linux 如何

Linux查找文件

which 可以查找可执行文件的位置 ? 1 2 [email protected]:~$ which ping /bin/ping whereis whereis -m 可查询到命令的帮助文档在什么地方 ? 1 2 3 4 [email protected]:~$ whereis -m ls ls: /usr/share/man/man1/ls.1.gz [email protected]:~$ whereis -m pwd pwd: /usr/share/man/man1/pwd.1.gz

linux查找特定类型的文件中是否包含特定字段

shell是个好东西,极大的方便了查询工作,之前遇到一个问题,查询包含有特定字段的特定文件,经过查询,命令如下: 1 find . -type f -name '*.cpp' print|xargs grep -r '#include' -l 上述命令的意思是查询包含有 '#include' 字符的 cpp文件,并给出文件名列表.具体需要熟悉find 和grep命令和各个参数的意思. 参考链接:http://blog.sina.com.cn/s/blog_691a84f301015khx.htm

攻城狮在路上(叁)Linux(十六)--- 命令与文件的查找

一.脚本文件的查询: 1.命令格式:which [-a] command; <==通过PATH来查找. -a:列出所有的,而不是仅列出第一个. 示例: which ifconfig; 注意:由于不同的用户PATH不同,所以结果或许也有区别. 二.文件名的查找: 1.whereis [-bmsu] 文件或目录名  <==通过数据库来查找,所以不同的用户查到的结果是一致的. 参数说明: -b:只找二进制格式的文件. -m:只找在说明文件manual路径下的文件. -s:只找source源文件. -