[FX.php List] [OFF] Filemaker Web Security?

Joel Shapiro jsfmp at earthlink.net
Fri Sep 5 13:21:02 MDT 2008


Thanks Webko & Kevin

Webko, your line "The vast difference between SQL and FM is that FM  
effectively has no command line" is key, thanks!

Kevin & Webko both mentioned PHP vulnerabilities:
K: "PHP code for form processing can still be vulnerable"
W: "It *may* be able to compromise the web server, or at least knock  
it over through buffer overflows etc - that is more a php  
vulnerability than a FM one, and php does issue decent security  
advisories."

Any pointers on where I can get more info about these issues?

As to my question "Do people here do that on *all* submittable  
fields?...", the "that" I'd meant was filtering the fields in PHP  
before submission to FM, e.g. using  htmlentities(), strip_tags(),  
etc.  Do people do *that* on all submittable fields?

Thanks,
-Joel


On Sep 4, 2008, at 5:26 PM, Tim 'Webko' Booth wrote:

> Dear Joel,
>
> I am not a security expert but...
>
>> This is how the client replied when I asked for more info:
>> "I keep hearing about "sql injection attacks" being used to  
>> compromise web pages. So I was wondering if Filemaker had a  
>> notification service about updates and / or security issues. It  
>> may be that Filemaker is "flying under the radar" when it comes to  
>> malware writers and there is little reason for concern. Given the  
>> security of the Internet nowadays I would rather be safe than sorry."
>>
>> It seems that FMI does *not* provide (decipherable) security  
>> update notifications, so I can pass that along to the client.
>>
>> Investigating "SQL injection attacks" (e.g. <http:// 
>> www.sitepoint.com/print/sql-injection-attacks-safe/> ), I'm  
>> reminded of Jonathan Stark's DevCon presentation in which he urged  
>> (numerous times) that we Filter All Data, incl. the use of  
>> htmlentities() & strip_tags()...
>
> The vast difference between SQL and FM is that FM effectively has  
> no command line - I do not believe an injection type attack could  
> compromise a FM database. You could put whatever code you like into  
> a FileMaker field through a new or edit, but that is not  
> interpreted as run-code by the FM engine.
>
> Of course, you can get bad data, and if the attacker can guess some  
> of the other field names, or knows them somehow, they could over- 
> write records, add data in places you don't want, or hijack a  
> delete routine to remove records that you want to keep...
>
> It *may* be able to compromise the web server, or at least knock it  
> over through buffer overflows etc - that is more a php  
> vulnerability than a FM one, and php does issue decent security  
> advisories.
>>
>>
>> Do people here do that on *all* submittable fields?   For all  
>> FMFind, FMEdit & FMNew?  Is there some guideline as to when that's  
>> more or less important?  Are there other functions you like to use  
>> for this?
>
> I do not allow FMDelete - people can mark records as not to show,  
> or for deletion later, but I never use an actual delete in any web  
> page.
>
> FMNew I'm reasonably OK with - I do have at least one system where  
> someone or something randomly adds extraneous records, but as it is  
> an open system on the web for registrations, I expect some level of  
> bad data. I do make sure key fields are there and conform with  
> system requirements.
>
> FMFind I'm not worried about to any great degree - any system that  
> allows a find does so for a reason - I want people to  see stuff.  
> Exception is systems where i have targeted user groups, and then I  
> start storing some important info about the users into session  
> variables to use in each find.
>
> FMEdit I am fairly careful with.
>>
>>
>> Also:
>>
>> 1) Is a site vulnerable to this type attack when using FileMaker  
>> security for logins (internal or Ext Auth w/ AD OD)?  (My guess is  
>> "no" since these aren't fields in a web-accessible database...)
>
> It should be somewhat less vulnerable than an open site, as you  
> have restricted who can see it. And the authentication side of it  
> should be happening inside your network,making man in the middle  
> more difficult.
>>
>>
>> 2) When using records w/ username & password fields for logins,  
>> would using the format:
>>   $login->AddDBParam('UserID','=="'.$_POST['user_name'].'"');
>> be safe enough to avoid these types of attacks, since FM can't  
>> process additional code like SQL seemingly can
>> (e.g. the submission of: ' or 1=1 -- ) ?
>
> You could be paranoid and do some parsing/stripping/filtering, but  
> that's pretty much what I've been doing - it will either match or  
> not - php itself may be vulnerable at this point.
>>
>>
>> 3) Are there any such risks within FMEdit calls?  Does it matter  
>> whether fields are submitted via radio buttons?
>
> FMEdit is probably the command to worry about the most, especially  
> if the recid is ever visible, or your primary key. Like other web  
> systems, if people can craft a GET call with either of those, they  
> may be able to change data you are not expecting to be changed.
>>
>>
>> 4) The above URL cautions against SQL procedures such as  
>> xp_cmdshell and xp_grantlogin.  Do FileMaker or FX.php (or the  
>> API) have any such dangerous code?
>
> Not that I aware of.
>>
>>
>> 5) Realistically, if a site is hosted locally, has an SSL cert,  
>> and has no links from any external pages, is there much risk of it  
>> being found and thusly hacked?
>
> Realistically. Not a lot.
> Like I said earlier, I had a FM system with a gaping known security  
> hole, and the patch toi plug that hole was never triggered in 5  
> years (apart from my own testing...) - and that one was heavily  
> used and publically accessible...
>
> Hope these musings help to some degree
> _______________________________________________
> FX.php_List mailing list
> FX.php_List at mail.iviking.org
> http://www.iviking.org/mailman/listinfo/fx.php_list



More information about the FX.php_List mailing list