Security sandbox violation when connecting to Socket from flex - apache-flex

I am using a Socket (not xmlSocket) connection between flex applications and the server pushing messages.
Now, when I connect from the local machine to the server everything is working file and running, connection is succesful and I get data back and forth.
When I upload the application (flex) to the server and run it from there, I get a security sandBox violation message.
Note:
1. I do have a crossdomain file with * wildcard both on port and on domain.
2. I created a Securiy.allowDomain("*") as well.
Another thing.
I also created another listener on that same server, listening to connections for port 843 (default) and this service just waited for a connection send policy file to the client and that's it.
That did not solve the problem as well...
That's next?
What should I do to fix the problem?
Appreciate your help.
Avi

The fix for this issue was a dedicated policy file serving server.
I implemented a socket listening to the dedicated port where flex is looking for policy file, once I got a connection and a request I answered right back with the appropriate policy file.
This solved the problem for all users and is working very well for me.
Thanks

did you try Security.loadPolicyFile? Does your server on port ever actually 843 receive policy file requests (that's a tiny XML sent to request the crossdomain policy file)? Does your actual server ever receive policy file requests? What traffic do you get on your server?
greetz
back2dos

.NET
Add crossdomain.xml to your Web server root directory, for example,
C:\inetpub\wwwroot.
Java
Add crossdomain.xml to \ArcGIS\java\web_output, for example,
C:\Program Files\ArcGIS\java\web_output.
http://resources.esri.com/help/9.3/arcgisserver/apis/flex/help/content/deploy_application.htm

Related

Requested action aborted: Access violation at address 005F6DB2 in module '***.exe'. Read of address 00000000

I am using Apache Jmeter to send FTP load on a Server. After setting up the FTP request on specific IP and port, I get this error:
Requested action aborted: Access violation at address 005F6DB2 in module '***.exe'. Read of address 00000000
I know that I have all the access and I don't know why a module can block me, although I know that software (***.exe) is not blocking my ports. What is the problem?
Here is the attached Wireshark screenshot from the server when sending the clients request, the red line is the problem and it occurs in different places each time I run the test.
The problem doesn't seem to be related to JMeter
Try uploading file(s) using "normal" FTP client like FileZilla or WinSCP.
If the problem persists:
try identifying its cause using Windows Event Viewer
try to trace system calls using i.e. WinDbg
or just raise an issue on your application (FTP component)
If the problem does not occur on "real" FTP clients:
double check that your FTP Request sampler configuration is correct, see Load Testing FTP and SFTP Servers Using JMeter guide for details.
try uploading the file to the other, i.e. public FTP server to see if it works
try implementing file upload purely in Groovy using JSR223 Sampler. See FTPClientExample.java for the code you could re-use. Make sure you have the following line in your script:
ftpClient.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out), true))

Can't access IIS website from local IP

I have a .Net service hosted on IIS. The service was accessible from IP:Port/Service.asmx, until recently when I couldn't access it from IP or System name again but only from Localhost:port/Service.asmx. I have pinged the server and it is replying. I have also confirmed that the local ip is listening on port 80. Really I don't know what is wrong, I have been on this for so long.
That's a hard one. Things I'd try:
Rebooting system.
Set a breakpoint at the earliest part of the request pipeline to verify whether the request is making it into your .Net code
Make a browser request via IP for a static file like an image. Is that served? That lets you see if the server will respond for a request that likely isn't going through Asp.Net.

Flex socket and erlang socket communication problem

I'm creating a client-server game. My client is a flex based game, and my server is erlang server.
At the beginning, when I test directly my flex client in flash player, I can establish a connection easily to my erlang server through socket connection. And both can exchange data with no problem.
The problem rise when I deploy my flex app at Apache http server, and running it using a browser by calling http://localhost/ ... my flex socket sends message requesting for a crossdomain policy to my erlang server.
So I create an xml message that represent a crossdomain policy, and send it back to my flex app as a response for that request.
Yet still I can't establish any permanent socket connection between my flex client and my erlang server. I know this because I add listener on my flex socket that will modify its internal state to CONNECTED, if a connection between client-server has established.
I haven't experienced the problem but maybe this would help.
The default policy file is named
crossdomain.xml and resides at the
root directory of the server that is
serving the data...
You can use the loadPolicyFile() method to access a nondefault policy file.
http://livedocs.adobe.com/flex/3/html/help.html?content=deployingoverview_12.html
A policy file served by an XMLSocket
server has the same syntax as any
other policy file, except that it must
also specify the ports to which access
is granted. When a policy file comes
from a port lower than 1024, it can
grant access to any ports; when a
policy file comes from port 1024 or
higher, it can grant access only to
other ports 1024 and higher.
http://livedocs.adobe.com/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00005403.html
The flashplayer restricts your socket usage in several ways. One you already found out :) The other is to specify whether you use the network or not. There is a networking mode and a file system mode (access to the filesystem). You can't have both.
So you should try to compile it with this:
-use-network=true
And yes I know it's a PITA doing socket programming with flash. You should implement every OnErrorXYZ method and print as much information as possible. Using wireshark or a different network sniffer is also a good idea.

Flex AIR Application Connecting to RemoteObject Through Proxy

I am having some issues trying to make an AIR application connect to a RemoteObject when the application is run in a domain that has proxy servers for outbound connection.
The error provided is as below:
[RPC Fault faultString="Send failed" faultCode="Client.Error.MessageSend" faultDetail="Channel.Connect.Failed error NetConnection.Call.Failed: HTTP: Failed: url: 'http://myTestService.org:8080/default/message/amf'"]
Any ideas? I think the proxy server may be preventing the application from accessing the Remote Object. How do I work around this?
Thanks.
Edit:
I saw a quite similar post to this:
Remoting with AIR
And I did declared the endpoint and destination to my RemoteObject.
In application/WEB-INF/flex/services-config.xml give only relative paths, do not use ip address and port number. You can look here for detail moving to production server
And here send failed error
In your case channel url should be
"/default/message/amf"
Drupal RPC Fault looks to be some what same as your problem and has issues with crossdomain.xml
Do check it.

IIS7 on Windows Server 2008 R2 connection problem

I just got IIS7 set up on a Windows Server 2008 R2 machine in VirtualBox. After doing so, I could not connect from any other client, though http://localhost worked. For that matter, I was unable to even ping the server.
After doing some research, I found that enabling File and Print Sharing on the server solved the problem, but surely there has to be a better way, and I would much prefer to learn to use the best method, rather than the easiest one.
What, specifically, should I do to enable both pinging of the server as well as access to the web server running on it?
Isn't it that the inbound web HTTP port is blocked by default? I'm not a server guru but can remember going to the firewall to allow it through. Should already be there.
Out of the box on Windows Server 2008/2008R2 firewall is installed and users cannot access resources or services on the server unless you configure exceptions to the firewall. There is one exception to this are services/resources on this server that you make available through the GUI tools (Initial Configuration Tasks Wizard, Server manager) - these automatically create firewall required exceptions for you.
So in your case either upon File and Print Sharing installation or upon using File and Print Sharing config wizard/Shared resource provision wizard (most likely the later) required firewall exception was created for you. The rule in question is: File and Printer Sharing (Echo Request – ICMPv4-In) - actually allows ping, but I guess Windows also uses it for network resources discovery and other things implied by the role you installed.
Nothing prevents you from not enabling File and Print Sharing and just enabling mentioned firewall exception manually.

Resources