<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>yurisk.info &#187; Esafe</title>
	<atom:link href="http://yurisk.info/category/esafe/feed/" rel="self" type="application/rss+xml" />
	<link>http://yurisk.info</link>
	<description>Yuri Slobodyanyuk&#039;s blog on IT Security and Networking</description>
	<lastBuildDate>Mon, 16 Apr 2012 17:23:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>New spam on the block</title>
		<link>http://yurisk.info/2010/12/21/new-spam-on-the-block/</link>
		<comments>http://yurisk.info/2010/12/21/new-spam-on-the-block/#comments</comments>
		<pubDate>Tue, 21 Dec 2010 13:20:45 +0000</pubDate>
		<dc:creator>Yuri</dc:creator>
				<category><![CDATA[Esafe]]></category>
		<category><![CDATA[Stories from the trenches]]></category>

		<guid isPermaLink="false">http://yurisk.info/?p=1468</guid>
		<description><![CDATA[May be not new , but new to me &#8211; spam mails that instead of direct links to their websites list links cached in google. So , you get in the email not http://degayfisk.com/ but http://google.nr/search?q=cache:c2tHRUQ2mx4J:google.co.nz It is ,by the way, recognized by eSafe 8.5 as a Clean mail, what a shame.]]></description>
			<content:encoded><![CDATA[<p>May be not new , but new to me &#8211; spam mails that instead of direct links to their websites list links cached in google. So , you get in the email not  http://degayfisk.com/ but <a href="http://google.nr/search?q=cache:c2tHRUQ2mx4J:google.co.nz" > http://google.nr/search?q=cache:c2tHRUQ2mx4J:google.co.nz</a><br />
It is ,by the way, recognized by eSafe 8.5 as a Clean mail, what a shame.</p>
]]></content:encoded>
			<wfw:commentRss>http://yurisk.info/2010/12/21/new-spam-on-the-block/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>See what your users are doing &#8211; awk one-line scripts to parse eSafe logs</title>
		<link>http://yurisk.info/2010/10/19/see-what-your-users-are-doing-awk-one-line-scripts-to-parse-esafe-logs/</link>
		<comments>http://yurisk.info/2010/10/19/see-what-your-users-are-doing-awk-one-line-scripts-to-parse-esafe-logs/#comments</comments>
		<pubDate>Tue, 19 Oct 2010 20:49:46 +0000</pubDate>
		<dc:creator>Yuri</dc:creator>
				<category><![CDATA[Awk weekly]]></category>
		<category><![CDATA[Esafe]]></category>
		<category><![CDATA[awk weekly]]></category>

		<guid isPermaLink="false">http://yurisk.info/?p=1283</guid>
		<description><![CDATA[As most of the posts here this one is also inspired by a client. There was an unassuming shy and not making any troubles eSafe 8.5 appliance XG-200. Then one day Security Admin of the company complained to me about &#8216;high CPU utilization&#8217; &#8211; getting somewhere up to 60% . eSafe looked absolutely fine and [...]]]></description>
			<content:encoded><![CDATA[<p>As most of the posts here this one is also inspired by a client. There was an unassuming shy and not making any troubles <a href="http://aladdin.com" target="_blank">eSafe 8.5 </a>appliance XG-200. Then one day Security Admin of the company complained to me about &#8216;high CPU utilization&#8217; &#8211; getting somewhere up to 60% . eSafe looked absolutely fine and doing its work.<br />
Also I noticed it was kinda working hard , nothing special but just general feeling that it handles a lot of load. And boy was I right &#8211; it was doing 200 Mb of logs per day . Given the number of stations in LAN and working hours that was huge. I looked with awk at the logs and happily updated the SecAdmin that eSafe is doing its work and blocks all the users trying frantically to visit various porno sites ignoring the &#8220;Site is blocked ..&#8221;message by the eSafe.  &#8220;What?  my users to pron sites, can&#8217;t be, can you show me the logs, who does it ?&#8221; . No problem, and so the awk one-liners  you see below were written to parse esafe Aladdin logs to get some insight. Also at the end of the post see eSafe log format in case you want to develop your own scripts.<br />
All logs are located at /opt/eSafe/eSafeCR/SessionLog/<br />
One-liner number one &#8211; Gather IPs that sent spam , count number of spam messages per IP, sort the list in ascending order .</p>
<div class="cmd"># awk -F&quot;|&quot; &#39;$4~SMTP &amp;&amp; ( $6~/Spam blocked/ || $6~/Mail rejected/ ) { print $11} &#39;    *.log  | sort -n | uniq -c | sort -n | tail -10</div>
<div class="cmdout">29 80.179.60.37<br />
32 41.59.0.205<br />
41 74.63.80.6<br />
41 83.16.167.14<br />
48 125.163.188.31<br />
54 125.163.192.184<br />
57 113.168.9.224<br />
78 89.223.56.16<br />
80 212.143.70.26<br />
104 212.143.70.27</div>
<p>One-liner number two – Mail sender fileds of spam messages , just for fun , no real value for security purpose:</p>
<div class="cmd"># awk -F&quot;|&quot; &#39; $4~SMTP &amp;&amp; ( $6~/Spam blocked/ || $6~/Mail rejected/ ) { print $15}  &#39; *.log  | sort  | uniq -c | sort -n</div>
<div class="cmdout">8 Stephan@117.40.136.73<br />
10 bsb@bsbinfo.in<br />
13 info@all-free.co.il<br />
13 Janette@2.90.58.204<br />
15 Ronnie@178.34.19.174<br />
17 KellieClements@cramerspointmotel.com<br />
22 notifs@m.snapinteractiveapps.com<br />
60 ezrachmudag26@gmail.com<br />
25 Simone@187.63.223.21<br />
102 Angelo@31.subnet125-163-188.speedy.telkom.net.id</div>
<p>One-liner to see all the blocks/rejects reasons and respective statistics.</p>
<div class="cmd"># awk -F&quot;|&quot;&#39; {print $6}&#39; *.log | sort -k1,1 | uniq -c</div>
<div class="cmdout">8 Application blocked<br />
21967 File allowed<br />
360 File blocked<br />
114891 File clean<br />
1731 File modified to remove malicious content<br />
3650 Mail clean<br />
111 Mail modified to remove malicious content<br />
13 Mail rejected  #912 &#8211; Anti-spoofing &#8211; Mail rejected. Attempt to impersonate a local user<br />
164 SMTP error<br />
803 Spam blocked</div>
<p><strong>Now let&#8217;s move to HTTP browsing.</strong><br />
One-liner number four – blocked access to websites : number of blocked attempts per website, hostname of the website,  internal LAN IP of PC that tried to access the resource.<br />
I do not bring examples here as they are quite embarrassing, even to be brought anonymously, so just trust me – run it on your esafe and you will blush.</p>
<div class="cmd"># awk -F&quot;|&quot; &#39;$4~HTTP &amp;&amp;  /File blocked/  { print $7,$17} &#39; *.log   | sort -k1,1 | uniq -c  | sort -n -k1,1</div>
<p>Same as above but with full path to the prohibited file.</p>
<div class="cmd"># awk -F&quot;|&quot; &#39;$4~HTTP &amp;&amp;  /File blocked/  { print $8,$17,$11}  &#39; *.log   | sort -k1,1 | uniq -c  | sort -n -k1,1</div>
<p>And finally as promised the  format of eSafe logs. All the fields in logs are separated by vertical bar (as you probably guessed awk –F&#8221;|&#8221; accounts for that). All the fields are present, while irrelevant fields are empty. So it is really scripting-friendly. I broke down the fields into separate lines with field number of each field. Enjoy.</p>
<div class="cmd">#  awk  -F&quot;|&quot; &#39; { for (i=1;i&lt;=NF;i++) print i,$i}&#39; header.txt</div>
<div class="cmdout">1 Date (yyyy-mm-dd  HH:mm:ss)<br />
2 eSafe name<br />
3 Record ID<br />
4 ProtocolType<br />
5 Method<br />
6 Event<br />
7 URL host<br />
8 File Name\Mail Subject<br />
9 File Type<br />
10 #File Size<br />
11 Source IP<br />
12 Destination IP<span id="more-1283"></span><br />
13 #VLAN<br />
14 #Port<br />
15 Mail Sender<br />
16 Mail Recipients<br />
17 URL category<br />
18 User<br />
19 LDAP domain<br />
20 Host<br />
21 Decision By<br />
22 Profile<br />
23 Policy<br />
24 #Policy ID<br />
25 Details<br />
26 Extended result<br />
27 SessionID<br />
28 MessageID<br />
29 #Rule<br />
30 #File Binary Family<br />
31 File container path<br />
32 File name<br />
33 #File parameter<br />
34 #Engine code<br />
35 #Activity code<br />
36 Blocked URL category code<br />
37 URL category mask<br />
38 Result name<br />
39 #Result code<br />
40 #Server type ID<br />
41 #Application code<br />
42 #Action<br />
43 #Risky<br />
44 #Source IP<br />
45 #Destination IP<br />
46 #MachineIP<br />
47 #Duration<br />
48 #AID<br />
49 Referrer<br />
50 UUID<br />
51 #Has CMF<br />
52 Date<br />
53 Time<br />
54 #Mail status<br />
55 DLP profile</div>
]]></content:encoded>
			<wfw:commentRss>http://yurisk.info/2010/10/19/see-what-your-users-are-doing-awk-one-line-scripts-to-parse-esafe-logs/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>RBLs &#8211; more hassle than benefit</title>
		<link>http://yurisk.info/2010/10/18/rbls-more-hassle-than-benefit/</link>
		<comments>http://yurisk.info/2010/10/18/rbls-more-hassle-than-benefit/#comments</comments>
		<pubDate>Mon, 18 Oct 2010 10:30:12 +0000</pubDate>
		<dc:creator>Yuri</dc:creator>
				<category><![CDATA[Esafe]]></category>

		<guid isPermaLink="false">http://yurisk.info/?p=1278</guid>
		<description><![CDATA[as I wrote earlier Google mail servers got blacklisted , but it was only the beginning. Now I got complains from the client that hotmail.com users also get mail bounced because of this list . So, as running after each and every IP blocked by this list endlessly wasn&#8217;t the best use of my time, [...]]]></description>
			<content:encoded><![CDATA[<p>as I wrote earlier <a href="http://yurisk.info/2010/10/05/skynet-got-blacklisted-google-mail-servers-entered-rbl-of-sorbs-net/"> Google mail servers got blacklisted</a> , but it was only the beginning. Now I got complains from the client that hotmail.com users also get mail bounced because of this list . So, as running after each and every IP blocked by this list endlessly wasn&#8217;t the best use of my time, I disabled this specific RBL in eSafe. So far no complains neither about bounced mail nor increased spam. The screenshot below shows where to find this RBL in the eSafe.<br />
<img src="/disable_RBL.PNG" alt="How to disable specific RBL server" /></p>
]]></content:encoded>
			<wfw:commentRss>http://yurisk.info/2010/10/18/rbls-more-hassle-than-benefit/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Skynet got blacklisted &#8211; Google mail servers entered RBL of Sorbs.net</title>
		<link>http://yurisk.info/2010/10/05/skynet-got-blacklisted-google-mail-servers-entered-rbl-of-sorbs-net/</link>
		<comments>http://yurisk.info/2010/10/05/skynet-got-blacklisted-google-mail-servers-entered-rbl-of-sorbs-net/#comments</comments>
		<pubDate>Tue, 05 Oct 2010 16:11:59 +0000</pubDate>
		<dc:creator>Yuri</dc:creator>
				<category><![CDATA[Esafe]]></category>
		<category><![CDATA[Scan of the week]]></category>
		<category><![CDATA[Stories from the trenches]]></category>

		<guid isPermaLink="false">http://yurisk.info/?p=1194</guid>
		<description><![CDATA[When yesterday my client sent me the headers of blocked by eSafe (Aladdin) mails I was quite surprised &#8211; the message said &#8221; Google tried to deliver your message, but it was rejected by the recipient domain. We recommend contacting the other email provider for further information about the cause of this error. The error [...]]]></description>
			<content:encoded><![CDATA[<p>When yesterday my client sent me the headers of blocked by eSafe <a  target="_blank" href="http://www.aladdin.com">(Aladdin) </a>mails I was quite surprised &#8211; the message said &#8221; Google tried to deliver your message, but it was rejected by the recipient domain. We recommend contacting the other email provider for further information about the cause of this error. The error that the other server returned was: 574 574 MAIL REFUSED &#8211; IP (74.125.82.172) is in RBL black list recent.spam.dnsbl.sorbs.net (state 18). &#8221; What? Google servers got blacklisted ? No way .<br />
I also expected Sorbs.net to be wiped out from the Earth rather quickly for such act of aggression against <a  target="_blank" href="http://en.wikipedia.org/wiki/Skynet_(Terminator)">Skynet</a> , also known as <a  target="_blank" href="http://google.com">Google.com </a>but nothing actually happened. So just for the fun of it I checked another IP of theirs &#8211; 74.125.82.48, also blocked. In short the class-C 74.125.82.0 got listed (screenshot follows). From<br />
practical point of view &#8211; make sure if your device is using <a  target="_blank" href="http://www.Sorbs.net">www.Sorbs.net </a>to put this pool in exclusion list, as I did in the eSafe of the client.</p>
]]></content:encoded>
			<wfw:commentRss>http://yurisk.info/2010/10/05/skynet-got-blacklisted-google-mail-servers-entered-rbl-of-sorbs-net/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>MAC finder script</title>
		<link>http://yurisk.info/2010/07/02/mac-finder-script/</link>
		<comments>http://yurisk.info/2010/07/02/mac-finder-script/#comments</comments>
		<pubDate>Fri, 02 Jul 2010 05:35:37 +0000</pubDate>
		<dc:creator>Yuri</dc:creator>
				<category><![CDATA[Checkpoint NG/NGX]]></category>
		<category><![CDATA[Cisco]]></category>
		<category><![CDATA[Esafe]]></category>
		<category><![CDATA[Fortigate]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Solaris]]></category>
		<category><![CDATA[Checkpoint]]></category>

		<guid isPermaLink="false">http://yurisk.info/?p=959</guid>
		<description><![CDATA[While I don&#8217;t like going down to Layer 2 , recently I had to do it &#8211; I didn&#8217;t know IP address of the Cisco router I wanted to connect to but I had access to the Cisco router sitting in the same network. That would be pretty easy to do #show arp on this [...]]]></description>
			<content:encoded><![CDATA[<p>While I don&#8217;t like going down to Layer 2 , recently I had to do it &#8211; I didn&#8217;t know IP address of the Cisco router I wanted to connect to but I had access to the Cisco router sitting in the same network. That would be pretty easy to do #show arp on this router and then search on Google to whom belongs each MAC  if it wasn&#8217;t the subnet mask of /26. Copy pasting each entry of the ARP table into Google didn&#8217;t look like a lot of fun. So I wrote a python script that reads MAC addresses in bulk from command line and using downloaded beforehand database of MAC-vendor translations prints vendor for each MAC address. It works for &#35;show arp on CIsco,&#35;show mac-address-table on CIsco switches, &#35;arp -en  on Linux (means including Checkpoint), &#35;arp -a on Freebsd ,&#35;show arp of Junos from Juniper, &#35;get sys arp on Fortigate.<br />
Below is the script.<br />
Here&#58;<br />
<strong>mac-database.txt</strong> &#8211; file containing MAC-vendor translation in format &lt;MAC 6 hex digits as a sequence&gt; &lt;VENDOR&gt;, I used <a href="http://standards.ieee.org/regauth/oui/oui.txt"> standards.ieee.org/regauth/oui/oui.txt </a> as the source with a bit of sed, but if you want ready to use file I recommend <strong>nmap-mac-prefixes</strong> from nmap source-code distribution <a href="http://nmap.org/svn/nmap-mac-prefixes">http://nmap.org/svn/nmap-mac-prefixes</a><br />
Download script (to make sure formatting is preserved, an important thing for Python)<br />
<a href="http://yurisk.info/scripts/mac-finder.py">http://yurisk.info/scripts/mac-finder.py</a><br />Script AND mac database from nmap project &#8211; <a href="http://yurisk.info/scripts/mac.tar.gz"> http://yurisk.info/scripts/mac.tar.gz</a></p>
<div class="cmdout">
<pre>
&#35;!/usr/bin/python
&#35;This script accepts MAC addresses from the command line and
&#35;prints vendor for each mac address
&#35; Author&#58;Yuri, yurisk@yurisk.info,06.2010
import sys
import re
&#35;This function removes from MACs colon or dot and returns MAC as a sequence of HEX chars
def dotreplace(matchobj):
&nbsp;&nbsp;       if matchobj.group(0) == &#39;.&#39;&#58;
&nbsp;&nbsp;&nbsp;&nbsp;            return &#39;&#39;
&nbsp;&nbsp;       elif  matchobj.group(0) == &#39;&#58;&#39;&#58;
&nbsp;&nbsp;&nbsp;&nbsp;            return &#39;&#39;
&#35;open file with MAC addresses and vendors database,it has form xxxx &lt;Vendor&gt;
macs=open(&#39;mac-database.txt&#39;,&#39;r&#39;)
macs_lines=macs.readlines()
&#35;Read from stdinput
data = sys.stdin.readlines()
for ppp in data:
       popa=re.search(&#39;.*([a-f0-9]{4}\.[a-f0-9]{4}\.[a-f0-9]{4}).*&#39;,ppp,re.IGNORECASE)
       if popa:
             newpopa=re.sub(&#39;\.&#39;, dotreplace,popa.group(1))[0:6]
             newpopa_re=re.compile(newpopa,re.IGNORECASE)
             for mac_db in macs_lines:
                 vendor=re.search(newpopa_re,mac_db)
                 if vendor:
                    print ppp.strip(),mac_db[7:]
       popalinux = re.search(&#39;.*([a-f0-9]{2}&#58;[a-f0-9]{2}&#58;[a-f0-9]{2}&#58;[a-f0-9]{2}&#58;[a-f0-9]{2}&#58;[a-f0-9]{2}).*&#39;,ppp,re.IGNORECASE)
       if popalinux&#58;
             newpopalinux=re.sub(&#39;&#58;&#39;,dotreplace,popalinux.group(1))[0&#58;6]
             newpopalinux_re=re.compile(newpopalinux,re.IGNORECASE)
             for mac_db in macs_lines&#58;
                 vendor=re.search(newpopalinux_re,mac_db)
                 if vendor&#58;
                    print ppp.strip(),mac_db[7&#58;]

       popadash = re.search('.*([a-f0-9]{2}-[a-f0-9]{2}-[a-f0-9]{2}-[a-f0-9]{2}-[a-f0-9]{2}-[a-f0-9]{2}).*',ppp,re.IGNORECASE)
       if popadash:
             newpopadash=re.sub('-',dotreplace,popadash.group(1))[0:6]
             newpopadash_re=re.compile(newpopadash,re.IGNORECASE)
             for mac_db in macs_lines:
                 vendor=re.search(newpopadash_re,mac_db)
                 if vendor:
                    print ppp.strip(),mac_db[7:]
</pre>
</div>
<p>Running it:</p>
<div class="cmd">
[root@darkstar ]# ./mac-finder.py</div>
<div class="cmdout">
&lt;now I copy paste output from arp -a in BSD&gt;<br />$ arp -a<br />
(10.99.99.150) at 00:50:56:95:74:72 on em0 [ethernet]<br />
 (10.99.99.254) at 00:09:0f:31:c8:24  on em0 [ethernet]<br /> &lt;Hit CTRL+D to signal the end of input&gt;<br />
 (10.99.99.150) at 00:50:56:95:74:72 on em0 [ethernet] VMware, Inc.<br />
 (10.99.99.254) at 00:09:0f:31:c8:24 on em0 [ethernet] Fortinet Inc.</div>
]]></content:encoded>
			<wfw:commentRss>http://yurisk.info/2010/07/02/mac-finder-script/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Quick and dirty way to bypass eSafe inspection</title>
		<link>http://yurisk.info/2010/05/12/quick-and-dirty-way-to-bypass-esafe-inspection/</link>
		<comments>http://yurisk.info/2010/05/12/quick-and-dirty-way-to-bypass-esafe-inspection/#comments</comments>
		<pubDate>Wed, 12 May 2010 18:46:26 +0000</pubDate>
		<dc:creator>Yuri</dc:creator>
				<category><![CDATA[Esafe]]></category>

		<guid isPermaLink="false">http://yurisk.info/?p=747</guid>
		<description><![CDATA[There are times when you need to make some website work immediately while it is being blocked by eSafe for some (many) reasons. And you just don&#8217;t get it working the educated way &#8211; adding to white/exclude lists, changing script/category block options etc. For the cases just like that Aladdin have provided us with Exclusion [...]]]></description>
			<content:encoded><![CDATA[<p>There are times when you need to make some website work immediately while it is being blocked by eSafe for some (many) reasons. And you just don&#8217;t get it working the educated way &#8211; adding to white/exclude lists, changing script/category block options etc.<br />
For the cases just like that Aladdin have provided us with <strong> Exclusion List</strong> in <strong> NitroInspection Configuration</strong> . It basically means traffic to/from the IP addresses you put into this list will be COMPLETELY ignored by eSafe scanning engine, and will be moved from interface to interface at the NIC driver speed.<br /> To get there you go to <strong>Options-&gt;-NitroInspection Configuration-&gt;-Exclusion list-&gt;Add</strong><br />
In example below I add facebook.com IP range to such exclusion list.<br />
<a href="http://yurisk.info/nitroinspection.gif"><img src="http://yurisk.info/nitroinspectionsmall.gif" alt="NitroInspection Exclusion list screenshot" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://yurisk.info/2010/05/12/quick-and-dirty-way-to-bypass-esafe-inspection/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Increase log size in eSafe</title>
		<link>http://yurisk.info/2009/12/14/310/</link>
		<comments>http://yurisk.info/2009/12/14/310/#comments</comments>
		<pubDate>Mon, 14 Dec 2009 12:26:38 +0000</pubDate>
		<dc:creator>Yuri</dc:creator>
				<category><![CDATA[Esafe]]></category>

		<guid isPermaLink="false">http://yurisk.info/?p=310</guid>
		<description><![CDATA[Session logs in eSafe are  essential for debugging  . By default ,nevertheless each Session log file is limited to 100 megabytes in size , after reaching this limit eSafe stops writing the Session logs until the next log rotation &#8211; that is midnight. To fix this , edit  the file /opt/eSafe/eSafeCR/esafecfg.ini: [ALERT GENERAL]   Size [...]]]></description>
			<content:encoded><![CDATA[<p>Session logs in eSafe are  essential for debugging  . By default ,nevertheless each Session log file is limited to 100 megabytes in size , after reaching this limit eSafe stops writing the Session logs until the next log rotation &#8211; that is midnight.</p>
<p>To fix this , edit  the file <strong>/opt/eSafe/eSafeCR/esafecfg.ini</strong>:</p>
<p>[ALERT GENERAL]  <br />
Size limit=2<br />
Last overflow=0<br />
Minimum free disk space=2000<br />
Block if internal error=1<br />
File name=^M<br />
Report days=10<br />
Session log days=7    = &gt;  <strong>Session log days= 365</strong><br />
Report max length=100<br />
Session log max length=100  =&gt;  <strong>Session log max length=500</strong><br />
Log sessions=1<br />
Detailed log sessions=0<br />
Log System Info Interval=10<br />
MMS block if internal error=1<br />
SessionLog To EventLog=0</p>
]]></content:encoded>
			<wfw:commentRss>http://yurisk.info/2009/12/14/310/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>SSH login alert by mail Linux or Unix based systems</title>
		<link>http://yurisk.info/2009/09/18/ssh-login-alert-by-mail-linux-or-unix-based-systems/</link>
		<comments>http://yurisk.info/2009/09/18/ssh-login-alert-by-mail-linux-or-unix-based-systems/#comments</comments>
		<pubDate>Fri, 18 Sep 2009 10:24:40 +0000</pubDate>
		<dc:creator>Yuri</dc:creator>
				<category><![CDATA[Awk weekly]]></category>
		<category><![CDATA[Checkpoint NG/NGX]]></category>
		<category><![CDATA[Esafe]]></category>
		<category><![CDATA[Firewall]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[awk weekly]]></category>
		<category><![CDATA[Checkpoint]]></category>

		<guid isPermaLink="false">http://yurisk.info/?p=244</guid>
		<description><![CDATA[As you may have noticed many security-related software/appliances are based on Linux or Unix operating systems in their variety. And as the logical consequence of that remote managing of such devices is done with OpenSSH package  .  What is lacking in these applications built on Linux/Unix platforms is alerting in real–time on successful SSH login [...]]]></description>
			<content:encoded><![CDATA[<p>As you may have noticed many security-related software/appliances are based on Linux or Unix operating<br />
systems in their variety. And as the logical consequence of that remote managing of such devices is done with OpenSSH<br />
package  .  What is lacking in these applications built on Linux/Unix platforms is alerting in real–time on successful<br />
SSH login to the system . e.g eSafe can alert only on login to the software itself (i.e. econsole), the same goes for the Checkpoint firewall<br />
. On the other hand SSH login to the system ultimately means superuser/root access that gives control over the whole<br />
system. To fix it I wrote the following script. This script sends mail to predefined email address each time someone<br />
successfully logs in by SSH to the machine.<br />
I take advantage here of the built-in feature of the  OpenSSH daemon – if you create text file containing commands (as if you typed<br />
them on the command line), and name it either <strong>/etc./ssh/sshrc</strong> or <strong>&lt;user home dir&gt;/.ssh/rc</strong> , these commands in file will be run each time user logs in through SSH daemon to the system.<br />
The file has to be readable by the user logging in through SSH.<br />
<strong>Note 1:</strong><br />
file /etc/ssh/sshrc is applied globally to any user logging in, unless:<br />
<strong>Note 2:</strong><br />
file &lt;user home dir&gt;/.ssh/rc   overrides action of /etc/ssh/sshrc . Caveat here – it is enough for a user to put in his home .ssh directory<br />
empty file named rc and it will disable /etc/ssh/sshrc including mail alerts sent from it. Actually it is not that big of an issue as you may<br />
create rc file in the home directory of the user yourself, give it 644 permissions and while user will know what is going on when doing ssh login he/she won’t be able to do anything about that.</p>
<p>So to script itself.<br />
<span style="text-decoration: underline;">Here:</span><br />
<a href="mailto:yurisk@yurisk.info">yurisk@yurisk.info</a> –   mail to which I get mail alert<br />
mail.yurisk.info   -   mail server that accepts mails destined for yurisk.info domain (its MX record)<br />
SENDING_HOST   -  hostname of sending host, will be included in the subject so later I can create mail inbox rule to pay appropriate attention   to such mails<br />
USER_ID     &#8211; output of the #id command so I will also be able to filter incoming messages on the user logged in</p>
<p>freeBSD# cat /etc/ssh/mail_alert.awk<br />
BEGIN {<br />
# Set up some info to be included in the mail<br />
# As you see I prefer to use absolute pathnames , but you don&#8217;t have to<br />
# Find the hostname to which SSH login happened , to be included in the Subject<br />
&quot;/bin/hostname&quot; | getline SENDING_HOST<br />
# FInd ID of logged<br />
&quot;/usr/bin/id&quot; | getline<br />
USER_ID = $1<br />
SMTP = &quot;/inet/tcp/0/mail.yurisk.info/25&quot;<br />
RS = ORS = &quot;\r\n&quot;<br />
print &quot;helo yurisk.info&quot;     |&amp; SMTP<br />
SMTP                       |&amp; getline<br />
print &quot;mail from: &lt;yurisk@yurisk.info&gt;&quot; |&amp; SMTP<br />
SMTP                       |&amp; getline<br />
print  &quot;rcpt to: &lt;yurisk@yurisk.info&gt;&quot;  |&amp; SMTP<br />
SMTP                       |&amp; getline<br />
print   &quot;data&quot;             |&amp; SMTP<br />
SMTP                       |&amp; getline<br />
print  &quot;Subject:SSH login alert &#8211; user &quot; USER_ID &#8220;logged in &quot; SENDING_HOST  |&amp; SMTP<br />
print                       |&amp;  SMTP<br />
&quot;/usr/bin/w&quot; | getline<br />
print  $0                  |&amp; SMTP<br />
print   &quot; He is most free from danger, who, even when safe, is on his guard  &quot;               |&amp; SMTP</p>
<p>print   &quot;  &quot;               |&amp; SMTP<br />
print  &quot;.&quot;                 |&amp; SMTP<br />
print                      |&amp; SMTP</p>
<p>print  &quot;quit&quot;              |&amp; SMTP</p>
<p>}<br />
- Now the file that is checked on each login for commands ( I put both files  in /etc/ssh/) :<br />
freeBSD# cat /etc/ssh/sshrc<br />
awk -f /etc/ssh/mail_alert.awk &gt; /dev/null<br />
<span style="text-decoration: underline;">Note for FreeBSD</span> (I guess any *BSD) users:  in *rc file above you will have to replace awk with gawk, as in *BSD systems awk behaves as the old-style Unix awk that has no bidirectional pipe to connect to mail server.</p>
<p>PS. You might be asking why awk here ? True, Linux/Unix have perfect tool for sending mails called #mail, but I did it with awk<br />
for  a reason &#8211; not on every (especially if hardened) system you will find mail/telnet/etc utilities with which sending mails is more simple and more reliable. The biggest one is Checkpoint firewall &#8211; it has NO mail or telnet clients, neither scripting language beyond AWK and Bash.</p>
<p>The downside of awk is that it is not perfect for more or less complex protocols. So script may stuck / send commands too fast/ etc and therefore be disconnected by the server.</p>
<p>Also if mail server uses greylisting &#8211; this script won&#8217;t understand it. So check it in interactive session before using. If time permits later I will polish it a bit to count for such cases.</p>
<p>BTW If you haven&#8217;t noticed eSafe has full-blown scripting languages installed &#8211; Perl and Python . With these you are limited by your imagination only.</p>
]]></content:encoded>
			<wfw:commentRss>http://yurisk.info/2009/09/18/ssh-login-alert-by-mail-linux-or-unix-based-systems/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>eSafe has iptables too ….</title>
		<link>http://yurisk.info/2009/09/08/esafe-has-iptables-too/</link>
		<comments>http://yurisk.info/2009/09/08/esafe-has-iptables-too/#comments</comments>
		<pubDate>Tue, 08 Sep 2009 17:58:05 +0000</pubDate>
		<dc:creator>Yuri</dc:creator>
				<category><![CDATA[Esafe]]></category>

		<guid isPermaLink="false">http://yurisk.info/?p=215</guid>
		<description><![CDATA[Did you know that eSafe  software is based on RedHat Enterprise  Linux (RHEL) ? Of course you did. But what does it mean? It means that all (or almost all) tools/utilities/programming logic of the Linux is at your fingertips. Let’s take for example software eSafe runs on the boot  [root@esafe root]# chkconfig &#8211;list rdisc                          [...]]]></description>
			<content:encoded><![CDATA[<p>Did you know that eSafe  software is based on RedHat Enterprise  Linux (RHEL) ? Of course you did.<br />
But what does it mean? It means that all (or almost all) tools/utilities/programming logic of the Linux is at your fingertips.<br />
Let’s take for example software eSafe runs on the boot</p>
<p> [root@esafe root]# <strong>chkconfig &#8211;list</strong><br />
rdisc                          0:off   1:off   2:off   3:off   4:off   5:off   6:off<br />
anacron                   0:off   1:off   2:off   3:off   4:off   5:off   6:off<br />
kudzu                        0:off   1:off   2:off   3:on    4:on    5:on    6:off<br />
syslog                       0:off   1:off   2:on    3:on    4:on    5:on    6:off<br />
network                   0:off   1:off   2:on    3:on    4:on    5:on    6:off<br />
random                    0:off   1:off   2:on    3:on    4:on    5:on    6:off<br />
saslauthd                 0:off   1:off   2:off   3:off   4:off   5:off   6:off<br />
microcode_ctl      0:off   1:off   2:on    3:on    4:on    5:on    6:off<br />
irqbalance              0:off   1:off   2:off   3:on    4:on    5:on    6:off<br />
smartd                     0:off   1:off   2:off   3:off   4:off   5:off   6:off<br />
atd                             0:off   1:off   2:off   3:on    4:on    5:on    6:off<br />
log2trap                   0:off   1:off   2:off   3:off   4:off   5:off   6:off<br />
sshd                          0:off   1:off   2:on    3:on    4:on    5:on    6:off<br />
crond                       0:off   1:off   2:on    3:on    4:on    5:on    6:off<br />
ntpd                         0:off   1:off   2:off   3:off   4:off   5:off   6:off<br />
<span style="color:#0000ff;">iptables                   0:off   1:off   2:on    3:on    4:on    5:on    6:off<br />
</span>webmin                   0:off   1:off   2:on    3:on    4:off   5:on    6:off<br />
esafe                        0:off   1:off   2:off   3:on    4:on    5:on    6:off</p>
<p>Today I played with just one of them – iptables. First things first – eSafe is not a firewall . You don’t usually give<br />
bunch of papers (called money) to use eSafe for the function that any Pentium 4 PC can do for the fraction of the price. So, it<br />
is not supported and not to be used as the mainstream feature. Nevertheless it is here and may come handy in some situations.</p>
<p>In the output of <span style="text-decoration:underline;">chkconfig &#8211;list</span>  chckconfig showed that whenever eSafe is on, iptables is on as well. The default iptables policy is ALLOW ANY ANY :<br />
[root@esafe root]#<strong> iptables -L</strong><br />
Chain INPUT (policy ACCEPT)<br />
target     prot opt source               destination</p>
<p>Chain FORWARD (policy ACCEPT)<br />
target     prot opt source               destination</p>
<p>Chain OUTPUT (policy ACCEPT)<br />
target     prot opt source               destination</p>
<p>Few observations:<br />
- To block incoming connections destined for the eSafe itself you use INPUT chain, FORWARD chain has no meaning in bridged eSafe Gateway (in routing Gateway mode it  would be applicable I guess)<br />
- I tried few basic rules on the eSafe Hellgate 200 while turning on High-Debug mode , and while machine was loaded by debug<br />
mode , using iptables filtering did not add visible overhead to it.<br />
In most of the deployment scenarios eSafe is installed between internal interface of the firewall and LAN. It means from outside it is protected quite well whereas from LAN it is wide open to any trouble coming in. eSafe has its own means of  limiting access to it from certain IPs.<br />
To limit access to eConsole – you go in eConsole to <strong>Options -&gt; Access and Permissions -&gt; configure user</strong> (by default admin will be there)  and IP from which this user will be granted access.<br />
To limit access to WebGUI (HTTPS) : in the WebGUI go to <strong>Settings -&gt; Access Control -&gt;</strong>  put IP to allow it access in “eSafe Appliance accepts connections from:”<br />
To limit access by SSH use Linux means (there are few ways but I show just one of them) :<br />
 <strong>vi /etc/ssh/sshd_config</strong><br />
# add at the end the following line to limit ssh access to 10.99.99.150 only:<br />
<strong>AllowUsers</strong>   <a href="mailto:*@10.99.99.150">*@10.99.99.150</a><br />
Or, using wildcards to the whole network only:<br />
<strong>AllowUsers</strong>   <a href="mailto:*@10">*@10</a>.*.*.*</p>
<p>All the above is correct and fine BUT – what if you need to temporarily limit access and not permanently ? All the above are permanent changes that will survive  reboot and  if you make a mistake you grant someone a visit to the appliance for  console connection. On the other hand you may use iptables to achieve the same access control and should something go wrong reboot will return all back to normal.</p>
<p>So, let’s go:</p>
<p>- I don’t like when debugging some complicated issue after logging off from eConsole I can’t access it again as someone from LAN already logged in :<br />
1) Grant your IP the access to econsole:<br />
[root@esafe root]# <strong>iptables -I INPUT    -p tcp -s 10.99.99.150 &#45;&#45;dport 43969:43982 -j ACCEPT</strong><br />
2) Deny anyone else<br />
[root@esafe root]# <strong>iptables -I INPUT 2 -p tcp &#45;&#45;dport 43969:43982 -j DROP<br />
</strong>- SSH in general isn’t something  a client should have access to :<br />
1) First allow youself access:<br />
 [root@esafe root]# <strong>iptables -I INPUT -p tcp &#45;&#45;dport 22 -s 10.99.99.150  -j ACCEPT</strong><br />
2) Then deny anyone else:<br />
[root@esafe root]# <strong>iptables -I  INPUT 2 -p tcp &#45;&#45;dport 22   -j DROP</strong></p>
<p>3) Restart ssh daemon (it won&#8217;t disconnect your current session):</p>
<p>[root@esafe root]# <strong>service sshd restart</strong></p>
<p>[root@esafe root]# iptables -L<br />
Chain INPUT (policy ACCEPT)<br />
target     prot opt source               destination<br />
ACCEPT     tcp  &#8211;  10.99.99.150         anywhere           tcp dpt:ssh<br />
DROP       tcp  &#8211;  anywhere             anywhere           tcp dpt:ssh</p>
<p> <br />
Those  addicted to iptables know that some spicy features come with modules and kernel options set at compile time.<br />
To give you the taste of  what is included in eSafe iptables, the listing follows:</p>
<p>/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/arp_tables.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/arpt_mangle.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/arptable_filter.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_conntrack.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_conntrack_amanda.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_conntrack_ftp.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_conntrack_irc.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_conntrack_tftp.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_nat_amanda.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_nat_ftp.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_nat_irc.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_nat_snmp_basic.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_nat_tftp.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_queue.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ip_tables.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipchains.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipfwadm.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_DSCP.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_ECN.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_LOG.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_MARK.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_MASQUERADE.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_MIRROR.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_REDIRECT.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_REJECT.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_TCPMSS.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_TOS.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_ULOG.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_ah.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_conntrack.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_dscp.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_ecn.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_esp.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_helper.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_length.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_limit.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_mac.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_mark.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_multiport.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_owner.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_pkttype.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_recent.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_state.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_tcpmss.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_tos.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_ttl.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/ipt_unclean.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/iptable_filter.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/iptable_mangle.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv4/netfilter/iptable_nat.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/ah6.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/esp6.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/ip6_tunnel.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/ipcomp6.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/ipv6.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6_tables.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_LOG.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_MARK.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_ah.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_dst.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_esp.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_eui64.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_frag.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_hbh.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_hl.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_ipv6header.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_length.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_limit.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_mac.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_mark.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_multiport.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_owner.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6t_rt.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6table_filter.o<br />
/lib/modules/2.4.21-47.ELsmp/kernel/net/ipv6/netfilter/ip6table_mangle.o</p>
]]></content:encoded>
			<wfw:commentRss>http://yurisk.info/2009/09/08/esafe-has-iptables-too/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Website/malware categorization in eSafe</title>
		<link>http://yurisk.info/2009/06/12/websitemalware-categorization-in-esafe/</link>
		<comments>http://yurisk.info/2009/06/12/websitemalware-categorization-in-esafe/#comments</comments>
		<pubDate>Fri, 12 Jun 2009 08:41:02 +0000</pubDate>
		<dc:creator>Yuri</dc:creator>
				<category><![CDATA[Esafe]]></category>

		<guid isPermaLink="false">http://yurisk.info/?p=162</guid>
		<description><![CDATA[If some website gets blocked by eSafe for being categorized wrongly you may fix it actually very simple. You enter the link below and change the website category; this takes some time , usually from few hours up to a day,for the change to take effect. If website has no category already then update takes [...]]]></description>
			<content:encoded><![CDATA[<p>If some website gets blocked by eSafe for being categorized wrongly you<br />
may fix it actually very simple. You enter the link below  and change the website category; this takes some time , usually from few hours up to a day,for  the change to take effect. If website  has no category already then update takes effect fast.</p>
<p><a href="http://filterdb.iss.net/urlcheck/">filterdb.iss.net/urlcheck/</a></p>
<p>To see what each category includes:<br />
<a href="http://www-935.ibm.com/services/us/index.wss/detail/iss/a1029077?cntxt=a1027244">www-935.ibm.com/services/us/index.wss/detail/iss/a1029077?cntxt=a1027244 </a></p>
<p>When you want to report an item that was falsely detected as virus/malware by<br />
eSafe you should send your request to :</p>
<p><img src="http://yurisk.files.wordpress.com/2009/06/info1.jpg" alt="info" title="info" width="383" height="49" class="alignnone size-full wp-image-167" /></p>
]]></content:encoded>
			<wfw:commentRss>http://yurisk.info/2009/06/12/websitemalware-categorization-in-esafe/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

