Ask Slashdot: Is Running Mission-Critical Servers Without a Firewall Common?
An anonymous reader writes: I do some contract work on the side, and am helping a client set up a new point-of-sale system. For the time being, it's pretty simple: selling products, keeping track of employee time, managing inventory and the like. However, it requires a small network because there are two clients, and one of the clients feeds off of a small SQL Express database from the first. During the setup, the vendor disabled the local firewall, and in a number of emails back and forth since (with me getting more and more aggravated) they went from suggesting that there's no need for a firewall, to outright telling me that's just how they do it and the contract dictates that's how we need to run it. This isn't a tremendous deal today, but with how things are going, odds are there will be e-Commerce worked into it, and probably credit card transactions... which worries the bejesus out of me.
So my question to the Slashdot masses: is this common? In my admittedly limited networking experience, it's been drilled into my head fairly well that not running a firewall is lazy (if not simply negligent), and to open the appropriate ports and call it a day. However, I've seen forum posts here and there with people admitting they run their clients without firewalls, believing that the firewall on their incoming internet connection is good enough, and that their client security will pick up the pieces. I'm curious how many real professionals do this, or if the forum posts I'm seeing (along with the vendor in question) are just a bunch of clowns.
So my question to the Slashdot masses: is this common? In my admittedly limited networking experience, it's been drilled into my head fairly well that not running a firewall is lazy (if not simply negligent), and to open the appropriate ports and call it a day. However, I've seen forum posts here and there with people admitting they run their clients without firewalls, believing that the firewall on their incoming internet connection is good enough, and that their client security will pick up the pieces. I'm curious how many real professionals do this, or if the forum posts I'm seeing (along with the vendor in question) are just a bunch of clowns.
Everything is Fine.
Is stupidity common? Yes. Yes it is.
In my experience, the stupid people tend to get fired eventually. But the mess they leave behind can be tremendous.
Not just because plenty of things are run by stupid people, but also because otherwise smart people can have pretty damned important blind spots. And other IT people have been talked out of it by their clients just like you're letting happen.
Whether it's common or not has no bearing on whether it's a good idea.
The only question you need to ask them is weather they're willing to accept the quantified risks from having exposed systems.
It sounds a little like you're trying to just fling a firewall at the system and improve some sort of objective security metric.
What threats are you risks to mitigate with the firewall? What threats will it help guard against?
They don't come for free, and configuring them don't come for free.
When I came here, the AD server (2003) where the Oracle Sales DB and the ERP were installed were in the called "DMZ" (at router level) because "Somebody in the European HQ wanted to browse some tables".
Yes, that's in a home router, DMZ, where it means "route everyhing that doesn't match a rule to that server".
Aaaaaaand it had cornflicker. The DC. The DB server. The ERP server. All-in-one and out of our control.
The reality is that there are a lot of enterprisey guys who don't have a clue of what they're doing.
=/
I've set up networks where the server infrastructure itself is on its own segment, so there's no need for firewalls between the servers themselves, but the whole subnet is firewalled by a border router.
A lot depends on how tightly you can lock down a server. On my *nix boxes, I tend to only run daemons with listening ports to the extent absolutely necessary. I have a LAMP server that basically has ports 22, 80 and 443 open, and everything else either shut down or set to listen only on 127.0.0.1. Do I really need to configure iptables?
The world's burning. Moped Jesus spotted on I50. Details at 11.
As soon as they start handling credit card transactions, they will need to conform with PCI standards, which will mandate much much higher levels of protections. There are significant fines associated with non-compliance so you may want to forward them over information about this.
The key is to only ever run the services that are absolutely needed, carefully configure these and keep them up to date. If you follow that advice a firewall is an added level of security but not necessarily needed.
Could you repeat the ip address of this server, you know, for research and the children... :)
Is a POS vendor used by most Australian newsagents. Their contract not only mandates the lack of a firewall, but a writeable share of the C: drive on the Windows machine acting as a server - with no authentication.
While this is incredibly negligent, the support contract makes the vendor completely liable for any security breach that occurs while honouring their contract requirements.
The problem with this battle is that you're a contract worker. So if reasoning/persuasion doesn't work, then you're only options are to end the contract, or fulfill your obligation.
Keep documentation that shows that you brought up the problem, and were rejected. Bake in language on subsequent contracts that give you an out under these types of scenarios, and move on.
If someone is unwilling to listen to reason, is in a position of power, and there's no laws that they are breaking, then that pretty much gives you all of the information you need to know about your options! Just learn to stop worrying and love the bomb.
I don't run a local firewall on my work system, for reference. As a developer, it's common to need to have "random" ports open for various things for testing, and having to deal with a firewall is one more nuisance I don't want to account for. A local (on system) firewall won't prevent most attacks anyway, so I don't feel I'm giving up much real security.
I do run a local firewall at home, but only because it has not annoyed me enough to be disabled yet.
I don't know how useful that information is; consider it a data point.
If your database is in a trusted network zone, it's fine.
If you have a bunch of assets outside the corporate firewall, you're doing it wrong. These belong behind a DMZ firewall, blocking any ports not strictly necessary, possibly with PNAT and coalescence (i.e. an FTP, Web, and Mail server, natted to the same address, ports 80, 443, 25, 21, and FTP PASV going to different addresses behind that).
Within that DMZ, servers provide whatever services they're going to. MySQL on port 3306 will provide MySQL on port 3306; if you add a local firewall, you will have a firewall that blocks all non-listening ports and leaves port 3306 open, so no difference. If you're worried about ssh, use an IP console card (DRAC, etc.) on a separate subnet, or put the database servers behind another firewall. It is, in fact, common to create trust zones for front-end, application, and database, such that i.e. your Web servers connect through WSGI to a CherryPy application, which connects back to a Database, through a firewall in each step. You can do this with vlans and broken-down subnets, one switch, and one firewall.
You have to consider everything when you design secure network architecture.
Support my political activism on Patreon.
In some way every third party vendor does this. Anything that can potentially complicate their installation or support gets eliminated, rather than configured in a way that is appropriate or best practices. It reduces their support cost and increases their profits. Overspecing hardware and network resources for their app is another area where this is done.
From the sounds of it, you're discussing disabling a software firewall, not an actual hardware firewall. There's a lot of applications which require local firewalls to be disabled - for instance, we disable local firewalls when we're deploying telephony application servers because of vendor requirements. Likewise, some applications require SELinux to be disabled as well. All of our servers are still collectively behind a firewall, and beyond that we have a number of ACLs and centralized authentication controlling them. As for not running a firewall being lazy - firewalls are tools. Sometimes they're the right one, and sometimes they aren't. The only way to tell is experience on when to use each tool (and budget too). The more time you spend with networking, the more you'll come to realize that. But since you're learning, stick to what you've been told until you master it. As Picasso said, "learn the rules like a pro, so you can break them like an artist."
Or bandwidth. Or visitors. Or intern-connections. There's a lot of room for serious damage from a lack of security, and not all of it is data theft.
People using your server as a spambot is bad.
People infecting your sites visitors with malware is bad.
People jumping to a different, more secure system from your server is bad.
We tend to notice the data theft issues most these days, because a lot of companies keep a lot of sensitive data, so a Target credit card hijack is tremendously bad and newsworthy.
But that doesn't mean other classes of security risk don't exist.
A zoned security architecture is always best and implementing intra-zonal firewalls is likewise a best practice however there's always pragmatic considerations because of cost or risk of the information being protected. If any of the servers are Internet facing or face an internal desktop network, that should be firewalled off at a minimum.
Harrison's Postulate - "For every action there is an equal and opposite criticism"
Is your firewall "mission-critical"? I meant if your mission involves being accessed from the outside then the firewall is as critical as whatever stuff behind it that you are trying to access.
If the POS (point of sale... although if the vendor are as lax about their quality assurance as they are about network security, that might just also stand for "piece of shit") and the back office PC are completely isolated from the internet, then I would agree there is no need for a firewall. However, retail POS systems almost always now come with a built-in credit card payment system instead of having separate terminals for that... so the POS cannot be guaranteed an airgap out to the internet unless the POS vendor is also supplying a separate credit card payment system with separate hardware that will reside on a completely separate network from the POS and back office system.
My advice to the OP would be to register their extreme dis-satisfaction with the setup verbally with the client, and in writing/email to the client and vendor, detailing the concerns about data security. That way, it at least limits OPs liability for the inevitable fuck-up and loss of customer credit card data to the time and effort involved in hiring a lawyer and producing said documentation when the shit hits the fan and law suits alleging incompetence start flying.
From experience, I know that as the 3rd party implementation consultant, you are nothing more than an annoying buzzing sound to the vendor unless you get the client on board, and even then it will still not work unless there are break clauses around client satisfaction built into the vendor-client contract. All OP can really do is cover his/her own ass, do their best to educate the client about the dangers involved, and leave it at that.
No firewall is probably because the vendor is too lazy to figure out how to configure the POS firewall so that they can still connect to it for remote support/maintenance tasks.
we run firewalls on the hypervisor a'la vGW. But a firewall won't stop people from doing stupid things, but it sure makes day to day annoying as shit.
For incredibly inept companies that really know nothing at all about security to run without firewalling.
Make sure you have a clause written in that without a firewall your client is fully responsible for any and all damages their unsecured server will cause.
Do not look at laser with remaining good eye.
I do a ton of infrastructure builds. From a few boxes to 1000's of VM's. There is no excuse for no firewalls.
If a vendor is disabling the firewall then they should absolutely be approached. If the clown you are talking to says that's the way it's done then go over his head. Tell your boss.
Be gently of course. Doing the run around my hair is on fire dance is not going to win any one over.
You can even help the vendor. There are a ton of tools for all OS's that will help you determine the port that need to be open. Simply run up the software and scan the open ports. Tada you have a simple set of fire wall rules at least. Are they perfect? Of course not they can be improved on. But it's something at the very least. I'm not overly a fan of point to point rules in firewalls as they are self defeating in the long run. ( This is a longer story )
So yes host firewalls should always be enabled. And the rules you use better be documented.
The most recent one I'm dealing with is an IE-specific browser-based EMR (electronic medical records) package that apparently has some issues with newer Flash versions, and by "newer" I mean "released within the past 3 years." They want us to roll back to some version of Flash 10.x (the product mostly works with newer, but has some very annoying delays).
My basic take on this is to go to the practice manager and say "According to the EMR vendor, their requirements are that we run an incredibly insecure configuration. I can do that, but my recommendation is that if we do so, no computer should be able to use both the EMR and other parts of the Internet." It makes me wish we were a Citrix shop; I'd set up a terminal server/app server running that insecure configuration, then just share direct app access via desktop icons for the end users.
fencepost
just a little off
But it's a terrible idea.
If this is what your vendor is telling you, they're either lazy or incompetent when it comes to security.
My advise, you need to get management to sign off on it to do a little CYA, otherwise someone is going to blame you for this when you get hacked (assume there is no 'if' in this situation).
If they've signed a contract with this vendor saying it "needs" to be ran without a firewall, then the person who signed that contract wasn't reading carefully, or didn't understand what they were signing.
Telling you that you don't need a firewall is like telling you that your car doesn't need brakes -- it should be a giant warning that someone is either lying to you, clueless, or doesn't give a damn.
"Real professionals" are paranoid about security, and don't take stupid risks. Me, I'd go with your assessment of "bunch of clowns".
Yes, this might be a small shop, and with a limited budget -- but hanging your production database outside of a firewall is just asking to get pwned. You can safely assume someone is trying to hack into you right now, because there's a good chance they are.
Lost at C:>. Found at C.
Your post is not clear on what you mean by "without a firewall". There are so many places in a typical setup where a firewall could be placed, and yes, it is safe to leave them out in some situations.
For example, your store has a firewall at the internet connection and everything inside is a private ip address. The cash registers run on their own network, firewall'd away from the other computers in the store, with rules to allow for outgoing credit card authorizations and that sort of thing. Does each cash register need a firewall? Probably not, and it might even be a significant expense to maintain updated rules every time the network needs to be reconfigured.
So yeah, it depends on the entire configuration. The tone of your post suggests that the situation is not good though, and of course, it's a lot easier to argue for a firewall these days than against one.
You need to look at the PCI-DSS requirements because this is what dictates the security standards of your network if you are storing credit card information. Specifically PCI-DSS dictates (not your contract) that there needs to be multiple levels of firewalls. Ergo you will need a firewall in front of the web server. You will then need a separate firewall in front of the DB servers. And the preferred setup is a three or more tiered system. Web server with firewall connects to the Application (WCF / web service server) which also has a firewall, which connects to your database server which also has a firewall. Also note that I am referencing hardware firewalls such as a Cisco ASA or a Dell Sonicwall. The servers should also have their own software firewalls enabled whether it's Windows Firewall or Linux IPTables. With that said we are "supposed" to be PCI-DSS compliant and should be for the sake of liability (and doing it the right way). Unfortunately I know many vendors who don't want to spend money on proper setups and run very insecure systems. If you can avoid it don't work for these people and go find a client that has the budget to do things right. PCI-DSS: https://www.pcisecuritystandar... A better option for a cheap client is to not store any customer data and use a tokenized system. Authorize.Net will store all sensitive data for an extra $10/mo and allow you to skirt PCI-DSS regulations. You should still run a firewall though and be as close to PCI-DSS as possible though. http://www.authorize.net/solut...
Some industries do make it a standard to disable firewalls on everything except perimeter devices. Networking talent is rare in these industries so it makes a certain amount of economic sense. You might be surprised to hear that SCADA and industrial control are one of the industries where this is common.
It's not totally crazy, either. If you know that if anything were to ever get on your internal network, you're going to be more diligent than usual about letting things on it. If you put all your eggs in the perimeter firewall basket and it's pretty good, then what's the problem?
Well, here's a big difference: the guy running your water plant is way different than the minimum wage guy you have running the till. The cashier has more incentive to attack the system, especially if he can get away with running a skimmer without getting caught. But the cashier has physical access to the system for several hours per day! What's the firewall going to do to stop him? He can just reboot the machine into an OS he controls, then turn off the firewall by writing to the disk directly.
There's another more important problem: if SQL Server Express is involved then I'll bet the PoS app is doing cleartext database writes, which might include credit card transactions in the future. If that's the case, the firewall has to be configured to allow these writes in cleartext. Mr. skimmer guy just needs to put a tap inline with the register's network port to get all this data, firewall or not. The app is the problem here.
Security is a people problem. Think about your staff and your vendors and choose them wisely. Until that's done pontificating about firewall best practices probably shouldn't be your first priority.
-- thalakan
A firewall between you and the outside world, yes, absolutely. If you have to open ports to your network, that is expected, and you should make every effort to minimize those ports and encrypt when possible. If you can establish a DMZ even better.
Internally you should be maintaining a secure environment anyhow, so there is no need. Between users and vulnerabilities, I can understand why people would want to turn on internal server firewalls, but generally no I don't see that happen. And that's from small to very large corporate entities. Mostly what I see is people who don't know how to manage their networks, or don't understand security, saying 'well I'm going to turn on the firewalls and now everything is Secure'. Most applications on internal networks expect wide ranges of ports to be open, and yes that is normal. If you have the time to manage every server at the port level, go ahead and enable them, but most administrators do not have enough time to handle normal day to day activities, let alone micromanaging networks like that.
I will shred my adversaries. Pull their eyes out just enough to turn them towards their mewing, mutilated faces. Illyria
Seriously. Don't do it.
I had a smallish consulting client from 6-7 years ago that ran their Oracle server on a system that had no firewall protection, because it made it easier for the application server to get to it. It also simplified remote access by a contract developer. As the remote DBA, it was also easier for me, although I advised against it from the beginning.
Sure enough, an intrusion happened (whether my script kiddies or someone more serious I don't remember). The intruders left behind a lobotomized database and who knows how much rootkit. The latter was the bigger issue, as a big part of my job was to ensure that reliable database backups were being taken. I knew I could recover with what I had, but the admins had to know the system was uncompromised.
So...a good day or two of downtime resulted as a new system was built and deployed. (It wasn't a mission critical system, which is why contract offsite DBAs and developers were used.) I restored the database, AND a firewall was put in place to limit all but the most sophisticated of intruders. I also configured CMAN (Communication Manager) to restrict database access itself to known systems only, even though the database wasn't the intrusion vector.
If the system is valuable, or could serve as a gateway to the rest of an internal network, it must have a firewall. MUST have a firewall.
...you mean the windows firewall, the answer is yes - a thousand times yes.
Yes, there should be firewalls (Not sure if client side is needed, depends on the AV used on the devices. There is AV, right?). However, with you being a contractor who is not responsible for this aspect of the design, and you notfied your client of the issue, and they told you to back off, its no longer your problem. Depending on how involved you are with the project, you may want a written document specifying that you mentioned your concerns about this, and they decided to not follow your suggestions, simply as a CYA manuver.
tl;dr: Make your professional opinion known politely to the client in writing, with your advice, them let the client decide, and have records of this decision.
While I agree with you that security should be paramount, in reality, it is often trumped by adhoc business needs and costs. The owner/C-level want this or that to be able to happen, even tho you know it's bad security. You explain it, recommend alternative, then go with what they decide, no matter how asinine, provided you like receiving money. Document the decision so that when the inevitable happens, you've covered your posterior.
From the outset, it doesn't seem like the client is taking things too seriously when it comes to data, they are using sql express after all. The client typically doesn't want to be bothered with our techno babble of how they are doing it wrong, they want it to just work and on budget. They purchase service contracts and warranties so that when something does go wrong, they pick up the phone to get it fixed or point fingers of blame towards when legal gets involved. It's all about passing responsibility. That's why you document and get signed off that the client is aware of these shortfalls and that you work doesn't cover any breach due to the shortfalls. The client sure as hell doesn't need or want a pissing match between you and another vendor, even if you are correct.
Don't piss off the client. Call it a day, cash your check, have some beer.
Uhm, this is SO not true. Google, for example has done white papers and research docs, written articles, blogs posts, and practically screamed from the mountain that they use a "no trust" model including a wide range of individual measures on each resource. While firewalls are not used on ALL devices, they are used on many.
Facebook also uses asset level security, including asset level firewalls; discussing this in an article about them signing a deal with Duo Security, and Ann arbor, MI based security company.
Both of these companies have repeatedly made public statements that there is no canned answer for security, and that even individual resources are treated differently depending on case. You should not use random companies for example without knowing that your facts are correct.
Assuming the servers are correctly configured and hardened, then a firewall is an additional layer - ie the ports allowed by the firewall will be those ports that you have explicitly opened on the server, nothing else should be present irrespective of what the firewall allows. Wether you then need one depends on your budget, your risk profile, wether you need to comply with any external requirements (like pci-dss) etc.
Personally i have many servers with no firewalls, because having a firewall would add additional hosting cost, additional point of failure, additional attack surface, additional latency, and the servers themselves don't run any services that aren't intended to be open to the internet (and thus everything thats running would be allowed by the firewall anyway).
The benefits of having a firewall in my case - an extra place for logs incase my host is compromised, and the ability to control outbound access if the host is compromised, are outweighed by the downsides. The chance of the host actually becoming compromised in the first place wouldn't be decreased by the addition of a firewall, but you'd have the additional risk that the firewall itself could be compromised.
http://spamdecoy.net - free throwaway anonymous email - avoid spam!
so does PCI v2, with mandatory six month reviews of firewall rules
eg. offline - no internet connection - then I wouldnt worry about not having an operating system/software firewall enabled on the 2 systems. Heck, even if you had a linksys giving them shared internet access it could even prevent the RPC worms and stuff from getting in. The day you start surfing on them or otherwise let the internet in then its horrible practice to go without a good edge firewall on that connection; but if the network is entirely offline I wouldnt worry about it. In the larger networks firewalls are independent devices; we no use software firewalls. Oh no..
will work for dragon quest localization
Sorry to barge in like this.
Oracle does not have issues with firewall. A proper firewall will allow a specific program to monitor a range of ports.
Ex.
Open port 80 system wide.
Open ports 40000-65000 for sqlserver.exe TCP and UDP.
You may have multiple listener processes, it takes a few moments and some research but in the end, you ensure the door is opened only for the ports and processes you want. This blocks the door for ports and processes that may be vulnerable thru bugs.
It's not perfect, nothing is. But it's better than staying opened.
Will you get hit if you don't, not necessarily but what if you do??? How much is your data worth? Restore time and data lost since that last restorable backup? What? You don't have a backup or have not tested your restore recently... (excuse me while I rotfl).
Sorry for the nasty punts, but let's face it, the day you get hit. I will say the same thing as today. Rather you hear it today, it's cheaper for you and if I helped in anyway, I'll be glad to not laugh later. I do go see humour shows, I don't need this for entertainment.
Good luck, and best of chances either way you go.
In my experience, many smaller companies, especially ones who offer a specific one-off product, this is a common attitude. This means they've done no real security testing on their product, or how their product is deployed and managed in a customers environment. I think it stems from a couple of things: 1) They aren't security literate. They know how to code or deploy, but they can't be bothered to learn and implement security. They have enough to worry about as it is, and security isn't one of them. It's nothing less than willful ignorance. 2) Sometimes it's more nefarious. They don't want anything impacting their customer experience. Two factor authentication? Firewalls? Application white-listing? Those things get in the way of a customer using their code they paid for. They will not endorse or support it. More over, if YOU implement, it could violate your warranty and null any SLA's. Read the fine print. Ultimately, the (real professionals) answer is this: Defense in depth. For a small business (assuming 1-2 workstations as you've described), a premise (ISP) router based firewall will suffice, and then host based firewalls for each individual client/server/workstation. Keep AV installed, and signatures up to date. Implement a basic change management procedure, and ensure everything stays patched and up to date. All of those things can be done for relatively low cost and high yield for security return. Heck, just doing those basic things puts you head and shoulders above many peers.
I bring nothing to the table.
There are lots of different risks that must be considered when securing a network or system. In my many years of securiy architecture, I've found it make the most sense to create a risk assessment.
Threat x Vulnerability x Impact = Risk
Once you have defined the risks, you can define the best protection method to reduce each risk.
Application firewalls may not be the best protection method depending on the rest of your network security controls. If you have strong network firewalls and every device that connects to the network must be authenticated (and scanned for viruses) before its given an IP address, an application firewall may not reduce much risk. If it doesn't reduce much risk, it may not be necessary.
In business, security is like insurance. You have to justify how much to spend, based on how it will protect us if something bad happens. Further, you have to make sure that whatever the security control is, it doesn't interfere with what the business needs to function. If the database cannot function with a firewall, a firewall is not the best protection method and other options should be considered (Network Intrusion Prevention systems, Data Protection [encryption/tokenization/hashing], Anti-Virus, File Integrity Monitoring, etc). There are many tools available to security professionals today. A firewall is a good tool, but not the only tool... depending on the situation, it may not even be the right tool.
Get a life, not a lifestyle. - Hikem Bey
After 4 weeks of oracle training, the advice from the oracle trainer was that oracle simply doesn't play well with firewalls. I'm not a DBA (thankfully), but that's from their actual instruction.
I've seen firewalls that simply allow any port on any protocol right on through.
Many PHBs seem to think that merely having a firewall is a panacea for all security issues.
If I hear "but it's behind the firewall!" one more time...
Depends on the network design for high security networks yes it is common to have sensitive machines on a physically separate network with firewalls between.
If you are going to be working with credit cards then read NOW and not later the PCI-DSS (Payment Card Industry - Data Security Standard) standards and follow them, or the company could be liable to penalties from your financial institution. Firewalls are indeed mandatory, as is proper documentation, management and review of the firewall rules.
Download PCI-DSS v3.0 here: https://www.pcisecuritystandar...
Oolite: Elite-like game. For Mac, Linux and Windows
In my humble experience, POS systems are those most forgotten, and least protected once you get on to the network. Few patches if any, and the vendors often squawk about only supporting ancient versions of Windows XP. Yes, the POS systems are probably Windows. Probably no AV either, and quite likely all administered with shared accounts that everybody knows. A firewall is by far the least they should be doing.
Some large (internet scale) services run without a firewall, although typically ACLs on the router serve a similar function. The issue is that firewalls have a hard time scaling to internet scale volumes. (source: I have served as the lead systems architect on very large scale internet infrastructure).
KK4SFV
You simply don't know the future security bugs that will affect your infrastructure. Just look at http://www.cve.mitre.org/ or any distribution security announcement like https://www.debian.org/securit... . Security bugs are discovered all the time. With this fact in mind you realize that you need more than a single protection layer to get a chance to detect and drop a harmful traffic. The bug could be deep into the kernel, making almost any magic possible from the application point of view. Having only a few ports open is not enough to protect against this, as the kernel structure and notion of port could be corrupted.
Honestly, determining whether you need a firewall isn't as simple as "yes, always, all the time" or "no you don't need one." You have to know what the firewall is doing, and what security is required. You can set up a firewall, allow all ports to be forwarded through without inspection, and while you have a firewall, it's not helping you. Or you could have a server running a secure OS with only the vital ports opened, without access to anything other than the Internet, in which case a firewall probably isn't doing you a lot of good.
Also, it seems you're talking about a software firewall installed on the server? I wouldn't trust it. If I'm running Internet accessible servers, I generally want separate hardware firewall, and I want to put those servers into a separate DMZ if I can. I might leave the built-in Windows firewall turned on if it's not causing any problems, but if I have to disable it, I don't worry too much about it because I have the hardware firewall.
A properly secured Linux/Unix server should be able to sit directly on the Internet without issues, but you may as well put it behind the hardware firewall if you have the option.
But are we talking about disabling the built-in software firewall on a machine that's only accessible by other computers on the LAN? That's probably fine. You should have some security preventing unauthorized personnel from accessing the LAN, and I would assume the SQL databse it password protected, right?
I guess my bottom line here is this: Since you can't trust a the built-in Windows firewall to actually protect from very much, you shouldn't worry too much about disabling it. Make sure your network is secure without it.
Your trainer was an idiot, not a network admin. Oracle database and the various Oracle apps I've used have no silly issues with firewalls. They may have some apps with issues, but not the main product which uses a single consistent TCP port for connections.
Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
A firewall will not stop most attacks. A firewall has to allow traffic to the services that are permitted (duh), and so that open channel, attacking and exploiting the service is what will allow the attack.
A firewall could not stop that by design.
If an internet facing server is secure correctly, there is no need for a firewall in front of it.
There is however a need for a firewall between the DMZ (which is where this server should be) and the internal network, to prevent access to the internal network in the event the server in the DMZ is compromised.
If you ignore ACs because they are anonymous - you're an idiot.
I'd make every effort to inform them of this security violation, then make every effort to explain it, and then highlight that POS systems are now being considered for hacking. Once you've done that, and the customer still refuses, keep the documentation and GTFO because they're as dense as lead.
Exactly. Too many people (both businesses and home users) say "Well, I don't have anything that 'those hackers' would want so why bother with protections?" The thing is, though, you DO have something they want. At the very least, a home user has bandwidth. If a malware author hijacks a computer, he can use it to pump out tons of spam. The user might notice an annoying slowdown but otherwise wouldn't know what was up. In the case of businesses, infecting your customers with malware (due to being hacked) or your site slowing down to a crawl (because it is a spam bot and is spending precious resources spamming people) is a sure method to lose customers. I'd wager that the money "gained" by not doing a proper firewall network is more than lost by the "lost sales" of customers fleeing after the servers have been hacked.
My sci-fi novel, Ghost Thief, is now available from Amazon.com.
After all, this is the vendor's recommendation, which should be in writing anyhow. Have the vendor sign a waiver accepting full responsibility for any damages and liability that could be attributed to not using a firewall I am sure that the company lawyers would be very eager to have something like this in place.
"It is a greater offense to steal men's labor, than their clothes"
I have seen this so called "requirement" on occasion and think the company that requires it needs to go though a security audit of their own. I also think that anyone that requires Domain Admin/Root access for their software to run doesn't know a thing about security (I get this commonly too). The problem you may face will be through regulatory compliance for various things (as some here mentioned PCI already) There are other regulations you should probably try to discover if you are required to comply with especially if you will be hosting PII (Personally Identifiable Information). Not just talking HIPAA, but some e-commerce sites require a little more security for their data.
That being said, as long as there is a firewall to the internet and your server does not have critical internal only ports open, in most cases you would at least pass basic security requirements, albeit not optimally. Make sure you run a test using something like NMap! As for alternative ideas, you could set rules in the local firewall to allow unrestricted traffic between the servers involved while limiting access from all others to the default rules. You could also set up IPsec tunnels between machines to encrypt that traffic. I would at least make sure you have a path to separate as many features that require higher security as possible. For instance, PCI will require more strict rules and if that is a problem for this vendor, budget a separate server for transaction processing.
Some of those options may help find some middle ground between your requirements and theirs (after all, you are not limiting traffic of interest to them). I would push to have a Business Associates agreement signed by them saying that by not following your configuration requirements, they will hold some or all of the responsibility for a breach involving their solution. It would still hurt you in the case of a breach, but at least it puts them on edge to make sure they do everything they can to secure their solution since they now have a financial consequence for a breach.
Last but not least, make sure you put the POS system in it's own VLAN separate from all other systems. Lock down that network to only POS traffic and put no other device unrelated to the POS system on that network. This is part of the reason for recent breaches from some of the major retailers.
The Vendor will have issues with their product running if you do not configure the firewall correctly and will cost the Vendor support time.
If you get hacked because you let malware onto your POS systems or put a compromised machine on the network it is your problem.
A firewall will just prevent an exploit of a service. So only run the services you need. The real issue for this POS would be an exploit that gains access to the SQL server and a firewall is probably not going to stop that.
See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
Don't be a muppet. Limit the spread of malware on your network as much as possible by only opening things that need to be open, to places they need to be open to. There is ZERO reason, for example (plucked at random to illustrate a point), for your end user PC network being able to directly connect to SMB on your SQL server, for example.
Yes, in theory they need credentials to do that. But why leave it open to anyone who obtains credentials when you can be more pro-active about defending the box?
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
You said they disabled the local firewall. That's how I'd run most Windows servers on a network of any size, because the local firewall just eats up resources on the server that could be better used for the server's actual job. The firewalls should be proper hardware firewalls built into the networking infrastructure located a) between the outside world and the client networks to control access to the network in general, b) between the POS terminal segment and the server segment to control what access the terminals have to the servers and to block the servers from unnecessary access back to the POS terminals, and c) between the two client networks you mention to control what access each client has to the other's network.
The Windows Firewall itself is fairly useless in a large network because as far as incoming connections go it can't control things any better than a hardware firewall can, and for outgoing connections it's pointless because any malware that might try making unwanted outbound connections has to be assumed to have enough access to disable or bypass the Windows Firewall.
That design tells me that you need to put a PCI-compliant hardware firewall between the POS and its associated DB server, and the rest of the internal network. And you also need to have a firewall logger that is actually looked at daily, plus you need to do vulnerability scans both internally and externally. A Windows firewall is not sufficient and won't meet PCI DSS requirements in any event, ever, and isn't going to provide any benefit if the firewall between the POS network and the rest of the store/enterprise is in place.
Any device that processes, carries, or stores ANY credit/debit card data that isn't encrypted *must* be behind a firewall that only permits it to send traffic to specific hosts that are necessary for the functioning of the system, and even then only on the bare minimum number of ports, and almost all inbound traffic is denied as well.
False. If it's part of an active directory domain the firewall policy can depend on what the policy is.
In fact you can google and find some people complaining about the opposite "problem" - they can't turn off the firewall due to domain policies.
If you don't run a firewall and you and your clients are the only one trying to connect to your server, then people see that running a firewall only interferes with things working. Meetings with management are really fun when they run along the lines of "We turned security on and things started breaking.", "Then turn off the security". So if no one is attacking you, you might make it to market faster with less resources than your competitors when only dealing with security after an incident.
My job requires that I deal with a lot of, to put it politely, vertical market software companies. As in, they're the only game in town for that particular function in the industry I work in. It's extremely common to see stuff like this, and it's usually justified by saying "firewalls won't protect you anyway, so why bother?" I only slightly agree -- in my mind the most important thing is to severely limit the use of admin/root accounts and protect their passwords, since you can shut off any security measures once you're through the door.
Usually, it's just laziness on the part of the vendor. The software is assumed to be running on a closed network with no external access in many cases, and a lot of people don't get that even closed networks aren't really closed anymore. I'm completely platform-agnostic, but I've noticed this a lot with typical Windows DCOM fat client / SQL Server (or worse, Jet/Access DB) pairings. As soon as you try to run these securely on a general purpose desktop, you find that port-based firewalling is very difficult to do without opening a huge range of ports due to the way RPC works. Yes, there are workarounds, but in general the protocol is not firewall-friendly. And, the golden rule of vertical market software is "thou shall not upgrade thy technology stack, ever." I do desktop systems integration -- OMG, getting poorly coded VB6 applications working on Windows 8 is a nightmare even with the compatibility toolkit, etc. Not sure what it is with the market segment I'm in, but I see lots of VB6 married to a Jet database, and lots of craptastic fat Java applications. Both can be killers to fix and get working without access to the code/programmer.
To be fair, just because the network is properly setup and allows for certain behavior etc. does not mean the application will play well with that setup. I've seen it happen before (and have been able to demonstrate it with proprietary software) that sometimes the network will not react correctly with certain network setups. At my company we have had to implement special protocols and features in our software just to overcome some inherent network limitations that our IT group pretty much said, "we have no way around this issue, sorry."
I only have limited experience with Oracle though, so take that statement as what you will. I have seen other software exhibit this kind of behavior though.
they went from suggesting that there's no need for a firewall, to outright telling me that's just how they do it and the contract dictates that's how we need to run it. This isn't a tremendous deal today, but with how things are going, odds are there will be e-Commerce worked into it, and probably credit card transactions... which worries the bejesus out of me.
I suggest you relegate the 'is this common' question to a discussion after hours over a beer.
Your real issue is security. I would want to schedule 2 different meetings, preferably with everyone attending in person. The first is a prep meeting with your client and their legal counsel to discuss your concerns, review the contract language that is being referenced by the vendor, and what liability the vendor has if the machine is compromised due to the vendor required there be no software firewall.
The second meeting would be with your client, their legal counsel, and the vendor.
FYI, oracle requires ports from 1024-65535 to be open for any client. 1521 is only used for initial setup dialog. This also forks a new oracle process, which gets its own socket. Afterwards, as stated above, this information is sent back to the client which reconnects on the new socket. This oracle doc explains what I am talking about: https://asktom.oracle.com/pls/...
The actual training did "get into" why it works that way. See the above referenced article explaining how SQL*NET works. 1521 doesn't handle the actual sql query, it forks a new oracle process for that particular request which has a new socket associated with it.
Yup, this is our case. There's also a common misconception that with oracle you can just open port 1521 and everything works, but per oracle, that's only part of it. SQL*NET is weird software.
You drive your car quite fast on roads with on-coming traffic separated by nothing more than a stripe of paint.
There's no limit to the amount of security that you can add to a network. But in the end, the odds are fairly good that fixing the few problems likely to occur is far simpler and more cost-effective than preventing them in the first place.
Obviously, we're talking about a small business, that isn't subject to large and persistent attacks. And should the day come when it is, that's when increased security can come around.
Regarding the ecommerce side of things, most small companies use ecommerce to receive money. So the worst thing that can happen is that they receive more money. That'll be noticed. Providing they aren't storing credit cards, then there's nothing to lose.
Safety third: first the job needs to actually get done, otherwise there was no point in starting it. second, the job needs to be worth doing, or there was no benefit to having done it. third it needs to be done safely. think of all of the great achievements that came from numbers one and two without any degree of reasonable safety. think the discovery of new worlds, exploration, animals, major construction, and every dangerous job out there. the line of what's considered "safe" moves quite freely to accomodate the other two priorities.
Safety Third.
First and foremost, the most common reason I see to have poor network traffic controls (on network or system level firewalls) is that defining the traffic ACLs is to skill/labor intensive. You need to have the skills and patience (read: time) to make sure that everything works and you're blocking everything else.
That being said, I tend to design systems to rely primarily on the network level when I can for traffic controls because I reduce the number of possible points of configuration which helps configuration management, auditing, and troubleshooting. If I do want focus on the host I am more likely to use host level firewalls on Linux systems for 2 reasons, 1) the services to be permitted are easier to isolate, and 2) iptables configurations are much easier to archive, manage, and audit (at least for me, I really haven't had much success with any kind of task automation with the windows firewall or ForeFront).
Cloud IaaS can make this complicated, because it's much more involved to employ network or "soft" VM based firewalls, and creating traffic isolation in elastic environments is tricky. The times I've designed for Amazon AWS, I pushed the systems design to Linux, rather than windows (Drupal/MySQL system that was being migrated from a Windows implementation to cloud hosting) partially because of the network traffic controls.
Network security design is not about firewalling everything, it's not that simple and the more things you have manipulating traffic, the more trouble you're buying down the road. It's about defining your security zones (how needs access to what, and how are they getting there), and then determining what controls to use. If, in the OP's instance, it's a web server and DB server in a DMZ that has ingress of HTTPS (443/TCP) and no egress, then I'm not sure that an additional control between the 2 servers buys you too much. The main advantage I see is limiting the depth of exploit if either of the 2 servers is compromised, but given that they are windows servers, and it's likely that they are using SMB/CIFS (137/TCP, 139/TCP, 445/TCP) rather than SQL server authentication, you have to allow all the ports you'd want to block anyway.
Spyder
My current company has a firewall for the incoming internet connection. (What sane company doesn't?) We also have individual firewalls on each PC but no individual firewall on any server. I'm not a network administrator -- it's a black box from my viewpoint, but I can rattle it and guess what's inside. The servers, I believe, are protected in two ways -- (1) to get out on the internet, you must go through a proxy, and the servers do not know how to do that. (2) traffic on the server subnets are blocked by the internet firewall, except for a few in a designated DMZ. We run into this all the time when applications have features that report back to vendor tech support, but are always blocked by the firewall. (In one case we had an application that would hang when it couldn't make an ftps connection with the vendor's tech support site -- who the heck uses ftps anymore? We stopped using that app.)
So to answer your question, a well designed network will have clients that can get to the outside through a proxy server, and servers that can't get to the outside at all, and servers that can cautiously get to the outside from the DMZ. The servers that are blocked from getting to the outside by the network don't necessarily have to have individual firewalls, and in fact, local firewalls can cause problems with some applications.
Now, if you're running the back end part of the system on a local PC that can also get out on the internet... whoo boy... that sounds dangerous.
Oliver's law of assumed responsibility: If you're seen fixing it, you will be blamed for breaking it.
Is it common, yes. But does common = good? no.
If common sense really was (common), the world would be a much better place.
Unfortunately, lots of (even smart) people to very stupid things, and all too often people focus on "getting it to work" more than "making it safe to operate" (which is, in effect, "being lazy"). So you should keep on arguing for good security practices. The results of not doing so speak for themselves (i.e. Target, etc)
Also, firewalls are one piece of an overall security plan, but an important part. But to talk only about firewalls is kind of missing the boat.
And all this discussion about databases not working well with firewalls - I think people are missing the point. Generally, I would expect "customers" to have a well defined path to this POS - i.e. a web site/api, etc, and that this would communicate to the DB, so all the communication between your POS app and the DB are together behind a firewall, so communication to the DB wouldn't be affected by said firewall. To have the DB directly open to something outside... seems like a recipe for a security disaster...
Having said all that, since we don't know much about your environment, the two clients, how they are connected (the implication is over the Internet, but you don't really say), requirements, design, other security measures in place, etc, we can't really give specific advice for such a general case - it's possible a firewall is unnecessary, but we can't say for sure given the info we have.
Unless *all* datafiles on your client's system are encrypted, also, and I don't think even that's enough.
ObDisclosure: I worked for about 4 months on a contract at Trustwave, a root CA.
Leaving that huge hole in your defenses... I suggest you look, if you don't already know, at .
From the 1.2 std: "Firewalls are a key protection mechanism for any computer network. Other system components may provide Firewall functionality, provided they meet the minimum requirements for Firewalls as provided in Requirement"
Even all data between two systems *MUST* be encrypted, for full compliance, if you're doing your own.
So, what this vendor is doing... I'd say you and your client need to reread the contract *VERY* closely, and if they say they're adhering to stds, they're in violation of the contract.
mark
"A firewall is a MUST".... However
1.) If you are a contractor (or an employee for that matter), and you're explicitly told not to do something, document your concerns, in writing and either do what they tell you or quit. This covers your butt when thing blow up. Note I said, when, not if. You don't get to dictate the business objectives in either case (contractor or employee).
2.) The networks/firewalls are only one part of the picture. I've noted other posts asking questions concerning the surrounding environment. These are good, even if they don't address point (1.) If a "best practice" for an element in the environment breaks the environment, then the "best practice" is invalid and MAY be ignored. It may also be that the app in question is brain dead, but that's a whole 'nother topic.
I've seen way too many "best practices" that do not account for the specific environment and even more "checklist" jockeys who can't figure out how to make things work without them. Learn to do more than to follow a flowchart/checklist.
honestly you could not be more wrong/trolling...
you completely avoided the question
**of course** the objective of any firewall is to do as you say, but stating that fact is not an answer to GP's question
I really want to hear a good answer to GP's question....I used to have my CCNA, but mostly did database and research query stuff...I'd really like to see a specific answer to the question
You really are trolling more than just GP...you're trolling all of us, everyone on here who is an industry professional should have a decent ***specific*** answer to GP's question.
To top it off, you accuse GP of acting like a typical "bureaucrat"
No.
Just dead wrong.
bureaucratic functionaries don't ask analytical questions that demand real world, specific answers...and they use manipulative language to justify **getting a bigger budget** as well
Thank you Dave Raggett
I just started reading the Microsoft CompTIA Security+ certification book. A sidebar story mentioned that a data center kept no firewall on the network because it had other forms of network security in place. The tradeoff was a faster thoroughput performance versus an increase possibility of a network attack.
For us, we control everything else using both hard firewalls and ACLs. Everything in those subnets purposefully needs to be able to talk to everything else. Plus, as mentioned elsewhere, we're beholden to the vendor whose application is running on those boxes, and their config requires iptables and selinux to be disabled on individual hosts. So, we control everything with network equipment above them. I think the only thing we are using IPTABLES for is mangling dscp markings.
I always disable it on internal networks. Causes problems for the most part and serves no purpose behind a NAT or even a properly firewalled network. Why have two firewalls? (with one of them being a buggy microsoft one)
I used to work with a guy who firewalled everything off from everything else. I am pretty sure he did it for job security, because no one else could figure out the russian doll sequence of firewalls in order to fix any of "his" machines. Luckily he was fired for incompetence after losing the backups for an entire department.
As a potential lottery winner, I totally support tax cuts for the wealthy
Yes. Foolish? Sometimes. From your description PCI DSS is going to apply. That means the server and the network it runs on are "in scope". Defending a no-firewall "policy" is going to be a tall order.
Thanks for the ip addresses and/or domain data.
f it does no harm in day to day operations and offers protection when your assumptions fail, why *not* run a software firewall?
Connection tracking can be expensive. If you need that, it's going to cut into the performance of your server, so it can be beneficial to do that on a separate box.
Security through obscurity is not secure at all.
Do you run your home computer without a firewall? Of course a firewall is useful keeping things out but they also let things out from within.
I am Bennett Haselton! I am Bennett Haselton!
PCI compliance.
I hate these crappy 3rd party vendors who don't know how to write software. I just dealt with this with some 3rd party products here. We were finally 'Get it to work with the firewall or we'll send you your crap back'
Magically, the "impossible to do" was done in a week.
The Kruger Dunning explains most post on
So...
If you had a Server with one port open inbound (port 22).
Would you still need to put up a firewall? I don't see why.
Sorry if this is a stupid question - I may just be out of touch with what firewalls can do nowadays. How would the firewall know whether it is dealing with sqlserver.exe on port 40264 or some other program? If it's not running on the same computer? I can imagine that some expensive solutions can do this, but I would be surprised to learn that a stock OpenBSD, say, can do it.
The article talks about this being a small local area network. No discussion about it being connected to the Internet. This is the best firewall of all - a physical air gap between you and the rest of the universe. In many respects this is the best security. So what do local firewalls on each box achieve? In this context virtually nothing except CPU overhead. The database server shouldn't be exposing anything but the database port anyway. The client need not expose any endpoint at all. Configure it this way and there is little opportunity for compromise.
Now as a way to protect your internal lan from the evils of the Internet a firewall is a great idea on the edge, but again they provide very little protection running on the internal servers. You can't just sprinkle firewalls over your network and assume security. They are a tool to limit a specific kinds of attack; to insulate your internal network from external bad actors. If you have a office and servers put the servers behind their own firewall.
We're using Oracle Grid Infrastructure/Data guard on linux. Windows firewall doesn't apply.
This whole "network security" meme is a failed experiment needing to be called out as the ridiculous farce that it is. Firewalls are the equivalent of mounting castle defense against an airforce. It does not work and never has. The opportunity cost of squandering resources on castle building vs standing up an opposing airforce is both high and sad.
Host-based firewalls are even more amusing. They come enabled by default. High probability any application installed needing to listen() is going to automatically punch a hole to do so as vendors have zero interest in dealing with firewall support nightmares. This begs the obvious.. what is the effective difference between listen() and firewalled-listen() ?
If you really want a secure internal system then lock down services/listeners and configure each system to use only secure communication protocols. If this is not possible set IPsec = required and secure the transport E2E only.
The further away from application domain you apply security the increasingly worthless that security is.
Also, hosts.deny all:all and then adding the hosts you want to allow in hosts.allow works just as well as a firewall, without having an extra process running on your systems.
How about this: If you find yourself needing a firewall, your system design has already failed. Every single system should assume actively hostile environment.
I can only repeat your original subject.
This applies to all oracle installations, and from training, this is still the default (at least as late as 11g, I haven't tried 12 yet - again, that is per oracle training). We're running oracle grid with dataguard (4 separate 2-node clusters with failover sites) on RHEL5. It functions the exact same way. Shared socket works so long as you don't mind the bottleneck it creates. It's far easier to remove iptables from the picture, let oracle function as it is supposed to. Any sort of access control can be handled by using hosts.allow/hosts.deny and letting tcpd handle it instead of having a whole extra process in the picture.
FYI, I looked at the 11g docs and you are correct, the default is now to use a shared instance. We are still using dedicated instances on our end. Section 3.4 covers it here: http://docs.oracle.com/cd/B283...
There are firewalls and firewalls. If you have a box with port 80 listening and nothing else listening, and you install a firewall that blocks connections to ports that are not port 80, you haven't really added a whole heap of useful. If you have a firewall that allows port 80 from anywhere and ssh connections only from a particular subnet, then maybe the firewall is earning it's keep. If you have a firewall that warns you about outgoing connections from your server that might be to command and control botnet servers if it gets compromised, then maybe it is worth doing. If you have a stateful firewall that is doing traffic analysis and shutting down particular attacks on your server then great. Shutting closed doors just for the sake of buzzword compliance is not a useful function.
Deny all, allow minimal that is needed. ie. FTP should only have port 21 open. Why open your whole server subnet, if someone compromises one box they have network level access to all.
The "open all" approach is bad administration, imo.
I concur with your opinion.
PCI v3 compliance *REQUIRES* a firewall. End of story. Do not pass go, do not collect $200.
It does no such thing. The requirement is only a tool to keep the whole network from falling under the PCI.
An air-gapped network or an internal only network of trusted peers can be PCI compliant without a firewall.
I think you are pretty confused. If you need to use enterprise level tools you use enterprise level hardware and network configurations. This means that, if you are going to use it you have a separate NIC for each node and an "Oracle Only" subnet. If you don't / can't do that, you are most likely using a tool for which there is no actual need. In other words, you're doing it wrong. Even in this case, you should certainly be blocking the unneeded ports in the 0 - 1000 range.
Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
Yes. Often times in less critical systems, it happens. If it's critical, though, or has any privileged accounts that can access critical stuff, it definitely keeps it. Let me tell you, as nice as the Windows Firewall interface is in Server 2008 and above, it can be a painstaking endeavor to find all the exceptions you need. Then there's always the support guy asking "Umm... why come... why come I can't ping this? It's broke. Fix it."
We ran a Windows server for many years with no firewall. We took credit card info (which was immediately encrypted). We had spent over a month hardening the server by shutting down all but the services that we truly needed. We never had a problem with that arrangement. We added a firewall when PCI required it but I'm still not convinced that it mattered.
And, you forgot DDoS and relay attacks from your machine! Even if you have "nothing of value" on your system (your identity info, tax returns, etc. count, duh!) the system itself is valuable to an attacker if they can gain control of it. When the DHS guys show up on YOUR doorstep because someone hacked into Pentagon computers from YOUR machine that's going to be an interesting day for you, until they figure out you were a pawn. That last bit can take a long time, btw and in the mean time you have no computer and usually can't go near one until the investigation is over. If this happens as part of your job, well, then there's the job hunting that will need to start and the trying to change careers because no one will hire a DUMBASS server admin!
Application support always says to turn off everything that might possibly interfere with their precious application. They would have you shut down the operating system if they didn't need it. Application support lives in a fairy land where the only thing they have to worry about is their application. They don't have to fix anything if the application isn't broken. They have no interest in anything else. A good vendor will program their application to work with the system standards. Most ISVs are not good vendors.
As a system or network admin, you have to protect the application from the rest of the network and protect the rest of the network from the application and protect everything from the users and the Internet. Part of doing that is firewalling the crap out of your core network, and if you can't do that you should be looking at adding more VLANs and controlling traffic that way.
The road to tyranny has always been paved with claims of necessity.
Take a good look at your exposed host. Install only the software that the clients will need and make sure only the essential ports have services listening on them.
Now there is no traffic left for your firewall to filter (except connections to your internal network going through a different interface).
and we don't keep logfiles, so we don't have to worry about checking for breakins and cooptions. hey, we don't comment or document our code, either, it's just us two guys. that way, we get to keep all the millions.
hang on, the phone just started melting and my screens went blue...
if this is supposed to be a new economy, how come they still want my old fashioned money?
There are two kinds of people who run servers without firewalls: Nitwits and professionals.
Nitwits do it because they think they don't need a firewall and it gives them a bit more performance or whatever.
Professionals do it when they know the conditions are right to justify it and they've made a risk assessment that confirms they are right. For example you run a high-traffic server that does exactly one thing on one port and the server software is robust - a firewall wouldn't do you any good, it's just additional security in case you open a port you didn't want to or such.
Assorted stuff I do sometimes: Lemuria.org
It's much better to assume that a server may be or is exposed to malicious traffic than it is to assume not. Even if there's only ever a direct ethernet connection between two machines, assume someone may compromise one of the machines and protect the other. Using a username and password is one thing; if you can filter based on IP address, use software firewall rules to only allow connections on certain interfaces and from certain addresses (or, better yet, localhost), et cetera, you're always better off.
Hope for the best, plan for the worst.
The windows firewall creates terrible delays and jitter, so the impact on for instance sip telephony is terrible.
It seems that your past frustration with one specific application has clouded your judgement.
The windows firewall is not to be disabled, period. "Stopping the service associated with Windows Firewall with Advanced Security is not supported by Microsoft." (System will no longer be supported after doing so, and there will likely be a number of kinds of network issues -- for example, disablement of the firewall breaks certain applications, may cause problems with terminal services, etc.)
Now, there will be some exceptional situations where bypassing windows firewall security may be necessary, and an acceptable compromise; providing a compensating control is put into place --- such as a dedicated network segment for the one computer, with additional hardware firewall.
But past pains do not justify another wrong.
Next question?
---- Booth was a patriot ----
Your servers are already pwned.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
I setup all our Oracle databases.. (Many, many of them). Only port 1521 is open in iptables. (actually, for some, I have secondary listeners).. The Junipers also ONLY allow access on port 1521, (and a secondary, if specified)
I have never had issues connecting to the database.
What are we going to do tonight Brain?
People can work out a vast complex network exists. All that national spread of small factory complexes with just in time delivery and payment.
Add in a tail end network thats waiting on international parts delivery.
So they find their way onto trusted systems and go for the main complex.
Finding a way in they use skill and poor design to transfer out 'plans'.
Some time later they spend big trying to make the plans work. Their own well funded lab comes back empty. Something is wrong, missing or it was never a real project.
To make the above work you need a vast amount of tame press telling the world about sloppy code, successful intrusions, countries getting away with decades of digital design over a few short years.
At a lower level its all about vendor lock in, ensuring the sale of that next version and then chasing the intrusion clean up work.
Systems are open to the net for a reason - as bait or to rent seek clean up contracts.
Domestic spying is now "Benign Information Gathering"
The case for not having a firewall is a lot like the case for unprotected sex:
> The horror stories only happen do dumb people who should have known better (I'm different).
> I know exactly what's coming in and out of my systems
> It adds an extra layer of complexity i don't want to deal with.
> She's taken contraceptive measures anyway.
> It'll probably be fine.
Run away from this client. Do not walk.
If credit cards are involved, then PCI-DSS guidelines are almost certianly mandated by merchant agreements.
PCI-DSS guidelines say, among other things that firewals are required, and that they have to be in their most restrictive ("DENY ALL") configuration, with only the specific connectivity required being permitted.
Therefore, by extension, if this is a point of sale system, and credit card processing is happening on the same network, then by extension, the firewall is required by the merchant agreement, and not only required to be present, but also required to be locked down.
Escalate the situation up the tree until it reaches someone with a clue, or who can take advice from someone with a clue.
I had some phone system idiot that wanted to be able to telnet directly in without needing a password. The problem was almost self corrected forever when he took a open can of drink into the server room and put it down on a 5kW UPS. He muttered something about earth leakage circuit breakers upon being informed about how suicidal that was, totally unaware that 5kW of DC shorting directly through him would not have gone anywhere near such a thing.
Similarly the vendor mentioned here is expressing a view beyond their skill level.
Ever wondered why there is the phrase "stateful firewall"? It's as if that wasn't the only kind of firewall isn't it :)
The way you are using a list of allowed ports and hosts is a non-stateful firewall, just like very simple ipchains/iptables/ipfilter rules.
Why not try Sandboxie?
I've had similar experiences with EHR vendors requiring old, old versions. The lag time and impracticality of their limitations can be frustrating. One product I've worked on shares a parent company that was part of the Obamacare website roll-out (they wrote middleware). After spending some time working with the database on that product, I began to believe in the Infinite Monkey Theorem.
Highly uninformative post as it doesn't mention this situation is only for NT. On UNIXes, port 1521 (or whatever port is selected in installer) is enough.
Oracle's emphasis is rarely on Microsoft's operating systems. Not only in RDBMS, but many other products support UNIXes primarily, and Microsoft's operating systems secondarily.
Bingo Dictionary - Pragmatist, n. A myopic idealist.
The database had to be in a certain mode though (Don't know if it was shared or dedicated), and some changed to the ORA file or other were necessary too to specify the port.
Oh yes, and in good Oracle fashion, this was only possible from Oracle9i, or before Oracle10 or something like that
And why it pays to be an Oracle consultants, folks
Next lesson: try installing Oracle on a linux platform...I hope you guys know something about library linking, compiler options and make files
The example provided here is a very high level Slashdot comment ;-) There are several different risk models that can be used, either qualitative or quantitative. The right model depends heavily on the type of organization you're working with.
The one I mentioned is from the InfoSec Handbook. Others cover the value of the asset instead of Impact (Threat x Vulnerability x Asset) and some include accounting for mitigation and countermeasures like TIK (threat*vulnerability/countermeasure * Impact or Asset). I've worked for companies that have their own internal models, companies that want very complex models and companies that use very simple models which every variable is ranked 1 - 5 (1&2 Low, 3&4 Medium, 5 High).
The core thing here is not the specific model. As long as a consistent model is used to rank vulnerabilities and threats and can define a useful value for determining the cost of the event versus the cost of the protection method, then its useful (and may be sufficient, depending on the situation).
Get a life, not a lifestyle. - Hikem Bey
The post sounds to me like it is asking about host based firewall on the server. If you have a firewall on the internet connection then not running firewalls on the hosts themselves is exceedingly common. Historically the hard crunchy outside and soft chewy center model is all anyone ever expected. Now it is considered more important to have additional security in the interior. If all it takes to completely compromise internal security is for one user to wander in with an infected laptop, that isn't good. The need for, benefits of and headaches attached to host based firewalls on servers vary depending on the environment. It isn't something I insist upon.
Mechanic: Somebody set up us the firewall. Operator: Main firewall turn off. CATS: All your [data]base are belong to us. CATS: You have no chance to survive make your time.
In most companies of any size that I have been involved with an application portfolio would need to list the ports and services that it would use.
You could also turn off the firewall, run nmap against the system and see what ports are open. Ask the developers what their application uses from the ports discovered and then turn the firewall on again. Then block what you don't need and open what you do. Yeah, it's a pain in the ass, but not every machine inside your network is always going to play nice with everyone else, so firewalls on important systems are needed.
How come Slashdot never gets Slashdotted?
I think most firewalls handle that dynamic re-assignment of connections to higher ports automatically. None of the oracle server's I have access to show firewalls open to wide ranges of ports.
Maybe it is a windows firewall issue? (I'm all linux solaris)