{"id":11939,"date":"2026-04-08T04:03:47","date_gmt":"2026-04-08T04:03:47","guid":{"rendered":"https:\/\/serisec.com\/index.php\/2026\/04\/08\/32874\/"},"modified":"2026-04-08T04:03:47","modified_gmt":"2026-04-08T04:03:47","slug":"32874","status":"publish","type":"post","link":"https:\/\/serisec.com\/index.php\/2026\/04\/08\/32874\/","title":{"rendered":"A Little Bit Pivoting: What Web Shells are Attackers Looking for?, (Tue, Apr 7th)"},"content":{"rendered":"\n<div>A Little Bit Pivoting: What Web Shells are Attackers Looking for?, (Tue, Apr 7th)<\/div>\n<p> \t<BR><br \/>\n<BR><\/BR><br \/>\n    <!-- no image --><br \/>\n \t<BR><br \/>\n<BR><\/BR><\/p>\n<div>\n<p>Webshells remain a\u00a0popular method for attackers to maintain persistence on a compromised web server. Many &#8220;arbitrary file write&#8221; and &#8220;remote code execution&#8221; vulnerabilities are used to drop small files on systems for later execution of additional payloads. The names of these files keep changing\u00a0and are often chosen to &#8220;fit in&#8221; with other files. Webshells themselves are also often used by parasitic attacks to compromise a server. Sadly (?), attackers are not always selecting good passwords either. In some cases, webshells come with pre-set backdoor credentials, which may be overlooked by a less sophisticated attacker.\u00a0<\/p>\n<p>I noticed first requests for a particular URL:\u00a0\/turkshell.php . This URL is linked to a well-known webshell. On this particular day, only four IPs were scanned for it:<\/p>\n<p>20.48.232.178, 20.215.65.23,\u00a051.12.84.116,\u00a051.103.130.249<\/p>\n<p>It is a little bit odd, but all four appear to be assigned to Microsoft. There may be an attacker targeting systems inside Microsoft&#8217;s cloud environment. Or all four are used by the same (compromised?) organization.<\/p>\n<p>Next, I queried our database to see which other URLs these IP addresses probed, and ended up with 287(!) hits. Here are the top 10:<\/p>\n<p>\u00a0<\/p>\n<table class=\"datatable\">\n<thead>\n<tr>\n<th>URL<\/th>\n<th>Count<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>\/wp-content\/<\/td>\n<td>45<\/td>\n<\/tr>\n<tr>\n<td>\/ms-edit.php<\/td>\n<td>44<\/td>\n<\/tr>\n<tr>\n<td>\/fe5.php<\/td>\n<td>43<\/td>\n<\/tr>\n<tr>\n<td>\/wp-content\/admin.php<\/td>\n<td>39<\/td>\n<\/tr>\n<tr>\n<td>\/av.php<\/td>\n<td>36<\/td>\n<\/tr>\n<tr>\n<td>\/wp-content\/plugins\/hellopress\/wp_filemanager.php<\/td>\n<td>27<\/td>\n<\/tr>\n<tr>\n<td>\/wp-content\/themes\/index.php<\/td>\n<td>23<\/td>\n<\/tr>\n<tr>\n<td>\/k.php<\/td>\n<td>23<\/td>\n<\/tr>\n<tr>\n<td>\/goods.php<\/td>\n<td>23<\/td>\n<\/tr>\n<tr>\n<td>\/222.php<\/td>\n<td>23<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>One common theme was the use of the prefix &#8220;wp-&#8220;, likely to better fit in on WordPress sites. The scans also included &#8220;non-webshell&#8221; URLs like &#8220;\/wp-content\/plugins\/hellopress\/wp_filemanager.php,&#8221; which may be useful for fingerprinting the site\u00a0or\u00a0may be vulnerable to being used as or deployed as webshells.<\/p>\n<p>What should you do to protect yourself from webshells?<\/p>\n<ol>\n<li>Don&#8217;t have any remote code execution or file upload vulnerabilities (yes&#8230; easy to say)<\/li>\n<li>Restrict permissions to not allow file uploads to your document root (sadly, in particular CMSs like WordPress sometimes have to be able to do so)<\/li>\n<li>Monitor the file system for changes<\/li>\n<\/ol>\n<p>What does not work (or not work very well): Scanning for specific filenames. The 287 files these four IPs looked for make a rather incomplete list. I will add it below, but please don&#8217;t consider it complete. I am not even sure\u00a0it is worth the effort to scan for these specific filenames. You may also get some false positives. Not every item on this list is a webshell, and some sites may use identical filenames for regular content.<\/p>\n<blockquote>\n<p>\n<tt>\/.mopj.php<br \/>\n\/.tmb\/8.php<br \/>\n\/.tmb\/a5.php<br \/>\n\/.tmb\/nano.php<br \/>\n\/.well-known\/<br \/>\n\/.well-known\/7.php<br \/>\n\/.well-known\/8.php<br \/>\n\/.well-known\/a5.php<br \/>\n\/.well-known\/f35.php<br \/>\n\/.well-known\/simple.php<br \/>\n\/.yuf.php<br \/>\n\/\/a1.php<br \/>\n\/\/aa.php<br \/>\n\/\/about.php<br \/>\n\/\/admin.php<br \/>\n\/\/admina.php<br \/>\n\/\/adminfuns.php<br \/>\n\/\/av.php<br \/>\n\/\/cacheee.php<br \/>\n\/\/cgi-bin\/index.php<br \/>\n\/\/edit.php<br \/>\n\/\/f6.php<br \/>\n\/\/fetch.php<br \/>\n\/\/inputs.php<br \/>\n\/\/wp-content\/admin.php<br \/>\n\/\/wp-content\/uploads\/2021\/02\/index.php<br \/>\n\/\/wp-includes\/css\/dist\/<br \/>\n\/\/wp-includes\/css\/index.php<br \/>\n\/\/wp-includes\/js\/jquery\/<br \/>\n\/\/wp-includes\/l10n\/<br \/>\n\/\/wp-mter.php<br \/>\n\/\/xwpg.php<br \/>\n\/1.php<br \/>\n\/10.php<br \/>\n\/100.php<br \/>\n\/111.php<br \/>\n\/1111.php<br \/>\n\/1111.php?p=<br \/>\n\/13.php<br \/>\n\/133927\/8.php<br \/>\n\/19.php<br \/>\n\/2.php<br \/>\n\/2026w.php<br \/>\n\/222.php<br \/>\n\/2e754\/a5.php<br \/>\n\/3.php<br \/>\n\/4.php<br \/>\n\/403.php<br \/>\n\/404.php<br \/>\n\/5.php<br \/>\n\/6.php<br \/>\n\/66.php<br \/>\n\/7.php<br \/>\n\/8.php<br \/>\n\/9.php<br \/>\n\/a1.php<br \/>\n\/a2.php<br \/>\n\/a5.php<br \/>\n\/aa.php<br \/>\n\/aaa.php<br \/>\n\/aaa.php?p=<br \/>\n\/abc.php<br \/>\n\/abcd.php<br \/>\n\/about.php<br \/>\n\/about2.php<br \/>\n\/acp.php<br \/>\n\/admin.php<br \/>\n\/admin.php.<br \/>\n\/admin\/controller\/extension\/extension\/ultra.php<br \/>\n\/adminfuns.php<br \/>\n\/administrator\/7.php<br \/>\n\/alfa.php<br \/>\n\/alfashell.php<br \/>\n\/aligk.php<br \/>\n\/alpha.php<br \/>\n\/an.php<br \/>\n\/as.php<br \/>\n\/ass.php<br \/>\n\/autoload_classmap.php<br \/>\n\/av.php<br \/>\n\/aw.php<br \/>\n\/axx.php<br \/>\n\/bal.php<br \/>\n\/bb.php<br \/>\n\/BDKR28WP.php<br \/>\n\/bengi.php<br \/>\n\/bgymj.php<br \/>\n\/bless.php<br \/>\n\/bless4.php<br \/>\n\/bogles.php<br \/>\n\/bs1.php<br \/>\n\/bthil.php<br \/>\n\/bypltspd.php<br \/>\n\/byrgo.php<br \/>\n\/cabs.php<br \/>\n\/cache.php<br \/>\n\/cacheee.php<br \/>\n\/cgi-bin\/<br \/>\n\/cgi-bin\/7.php<br \/>\n\/cgi-bin\/8.php<br \/>\n\/cgi-bin\/a5.php<br \/>\n\/cgi-bin\/index.php<br \/>\n\/chosen.php<br \/>\n\/class-t.api.php<br \/>\n\/class.php<br \/>\n\/class19.php<br \/>\n\/class20.php<br \/>\n\/classwithtostring.php<br \/>\n\/classwithtostring.php?p=<br \/>\n\/cli\/7.php<br \/>\n\/config.php<br \/>\n\/configPCJ\/f35.php<br \/>\n\/content.php<br \/>\n\/control.php<br \/>\n\/css\/autoload_classmap.php<br \/>\n\/defaults.php<br \/>\n\/dev.php<br \/>\n\/edit.php<br \/>\n\/eee.php<br \/>\n\/esp.php<br \/>\n\/ew.php<br \/>\n\/f35_S.php<br \/>\n\/f35.php<br \/>\n\/f6.php<br \/>\n\/fe5.php<br \/>\n\/fetch.php<br \/>\n\/fff.php<br \/>\n\/fi.php<br \/>\n\/file.php<br \/>\n\/file18.php<br \/>\n\/file21.php<br \/>\n\/file31.php<br \/>\n\/file48.php<br \/>\n\/file61.php<br \/>\n\/fine.php<br \/>\n\/flower.php<br \/>\n\/ftde.php<br \/>\n\/function\/function.php<br \/>\n\/fvvff.php<br \/>\n\/fx.php<br \/>\n\/g.php<br \/>\n\/gecko-new.php<br \/>\n\/gelay.php<br \/>\n\/gettest.php<br \/>\n\/ghhjh.php<br \/>\n\/god4m.php<br \/>\n\/goods.php<br \/>\n\/gptsh.php<br \/>\n\/gssdd.php<br \/>\n\/hplfuns.php<br \/>\n\/images\/simple.php<br \/>\n\/in.php<br \/>\n\/includes\/7.php<br \/>\n\/index.php<br \/>\n\/index\/8.php<br \/>\n\/index\/function.php<br \/>\n\/inege.php<br \/>\n\/info.php<br \/>\n\/inputs.php<br \/>\n\/ioxi-o.php<br \/>\n\/item.php<br \/>\n\/jp.php<br \/>\n\/k.php<br \/>\n\/kbfr.php<br \/>\n\/kj.php<br \/>\n\/lock360.php<br \/>\n\/makeasmtp.php<br \/>\n\/makeasmtp.php?p=<br \/>\n\/mari.php<br \/>\n\/moon.php<br \/>\n\/motu.php<br \/>\n\/ms-edit.php<br \/>\n\/nano.php<br \/>\n\/new.php<br \/>\n\/NewFile.php<br \/>\n\/no1.php<br \/>\n\/no18.php<br \/>\n\/o.php<br \/>\n\/ok.php<br \/>\n\/ol.php<br \/>\n\/pcp\/simple.php<br \/>\n\/plss3.php<br \/>\n\/plugins.php<br \/>\n\/plugins\/7.php<br \/>\n\/prv8.php<br \/>\n\/qqa.php<br \/>\n\/randkeyword.PhP7<br \/>\n\/read.php<br \/>\n\/rip.php<br \/>\n\/s.php<br \/>\n\/sbhu.php<br \/>\n\/seo.php<br \/>\n\/sf.php<br \/>\n\/simple.php<br \/>\n\/style.php<br \/>\n\/swallowable.php<br \/>\n\/system.php<br \/>\n\/tea.php<br \/>\n\/test1.php<br \/>\n\/themes.php<br \/>\n\/tinyfilemanager.php<br \/>\n\/tinyfilemanager.php?p=<br \/>\n\/tmp.php<br \/>\n\/turkshell.php<br \/>\n\/txets.php<br \/>\n\/update\/f35.php<br \/>\n\/uploads\/<br \/>\n\/uuu.php<br \/>\n\/vee.php<br \/>\n\/w2025.php<br \/>\n\/we.php<br \/>\n\/well-known\/nano.php<br \/>\n\/wen.php<br \/>\n\/wi.php<br \/>\n\/wk\/index.php<br \/>\n\/wordpress\/8.php<br \/>\n\/wp-act.php<br \/>\n\/wp-admin\/8.php<br \/>\n\/wp-admin\/a.php<br \/>\n\/wp-admin\/alfa.php<br \/>\n\/wp-admin\/css\/bolt.php<br \/>\n\/wp-admin\/css\/colors<br \/>\n\/wp-admin\/css\/colors\/ectoplasm\/<br \/>\n\/wp-admin\/images\/<br \/>\n\/wp-admin\/js\/<br \/>\n\/wp-admin\/js\/fi.php<br \/>\n\/wp-admin\/js\/widgets\/<br \/>\n\/wp-admin\/nano.php<br \/>\n\/wp-admin\/network\/index.php<br \/>\n\/wp-admin\/user\/index.php<br \/>\n\/wp-blog.php<br \/>\n\/wp-conf.php<br \/>\n\/wp-content\/<br \/>\n\/wp-content\/8.php<br \/>\n\/wp-content\/a5.php<br \/>\n\/wp-content\/admin.php<br \/>\n\/wp-content\/plugins\/core-plugin\/include.php<br \/>\n\/wp-content\/plugins\/hellopress\/wp_filemanager.php<br \/>\n\/wp-content\/plugins\/index.php<br \/>\n\/wp-content\/plugins\/pwnd\/as.php<br \/>\n\/wp-content\/plugins\/WordPressCore\/<br \/>\n\/wp-content\/themes\/<br \/>\n\/wp-content\/themes\/admin.php<br \/>\n\/wp-content\/themes\/hideo\/network.php<br \/>\n\/wp-content\/themes\/index.php<br \/>\n\/wp-content\/uploads\/<br \/>\n\/wp-content\/uploads\/2021\/02\/index.php<br \/>\n\/wp-content\/uploads\/index.php<br \/>\n\/wp-good.php<br \/>\n\/wp-includes\/<br \/>\n\/wp-includes\/8.php<br \/>\n\/wp-includes\/a5.php<br \/>\n\/wp-includes\/css\/dist\/<br \/>\n\/wp-includes\/css\/index.php?p=<br \/>\n\/wp-includes\/html-api\/<br \/>\n\/wp-includes\/ID3\/<br \/>\n\/wp-includes\/images\/<br \/>\n\/wp-includes\/IXR\/test1.php<br \/>\n\/wp-includes\/js\/crop\/cropper.php<br \/>\n\/wp-includes\/js\/jquery\/<br \/>\n\/wp-includes\/l10n\/<br \/>\n\/wp-includes\/nano.php<br \/>\n\/wp-includes\/PHPMailer\/<br \/>\n\/wp-includes\/Requests\/src\/Response\/about.php<br \/>\n\/wp-includes\/SimplePie\/<br \/>\n\/wp-includes\/Text\/Diff\/Engine\/about.php<br \/>\n\/wp-kd4xalrg7m.php<br \/>\n\/wp-login.php<br \/>\n\/wp-michan.php<br \/>\n\/wp-mter.php<br \/>\n\/wp-the.php<br \/>\n\/wp-trackback.php<br \/>\n\/wp-update.php<br \/>\n\/wp.php<br \/>\n\/wp1.php<br \/>\n\/wpx.php<br \/>\n\/ws.php<br \/>\n\/x1da.php<br \/>\n\/xa.php<br \/>\n\/xmlrpc.php<br \/>\n\/xmrlpc.php<br \/>\n\/xozx.php<br \/>\n\/xqq.php<br \/>\n\/xwpg.php<br \/>\n\/xwx1.php<br \/>\n\/xx.php<br \/>\n\/zample.php<\/tt><br \/>\n\u00a0<\/p>\n<\/blockquote>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n<p>&#8212;<br \/>\nJohannes B. Ullrich, Ph.D. , Dean of Research, <a href=\"https:\/\/sans.edu\/\">SANS.edu<\/a><br \/>\n<a href=\"https:\/\/jbu.me\/164\">Twitter<\/a>|<\/p>\n<p> (c) SANS Internet Storm Center. https:\/\/isc.sans.edu Creative Commons Attribution-Noncommercial 3.0 United States License.<\/p><\/div>\n<p> \t<BR><br \/>\n <BR><\/BR><\/p>\n<p> \t<BR><br \/>\n<BR><\/BR><br \/>\n<a href=\"https:\/\/isc.sans.edu\/diary\/rss\/32874\">Go to isc.sans.edu<\/a><br \/>\n \t<BR><br \/>\n <BR><\/BR><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A Little Bit Pivoting: What Web Shells are Attackers Looking for?, (Tue, Apr 7th) Webshells remain a\u00a0popular method for attackers to maintain persistence on a compromised web server. Many &#8220;arbitrary file write&#8221; and &#8220;remote code execution&#8221; vulnerabilities are used to drop small files on systems for later execution of additional payloads. The names of these [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[56],"tags":[69],"class_list":["post-11939","post","type-post","status-publish","format-standard","hentry","category-isc-sans-edu","tag-isc-sans-edu"],"_links":{"self":[{"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/posts\/11939"}],"collection":[{"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/comments?post=11939"}],"version-history":[{"count":0,"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/posts\/11939\/revisions"}],"wp:attachment":[{"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/media?parent=11939"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/categories?post=11939"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/serisec.com\/index.php\/wp-json\/wp\/v2\/tags?post=11939"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}