I assumed tunnel mode in my first response. After conducting some tests, I think I have discovered your problem.
When using SSL-VPN in web mode, the IP address of the client is the IP address of the interface of the FortiGate initiating the connection. If you are connecting to a device accessed by the FortiGate on the Internal1 interface, the source IP will be the address assigned to the Internal1 interface.
I conducted a test with an SSL-VPN web connection and tried to use the web portal ping option to ping an IP at the other end of an IPSec tunnel and encountered your error. A packet sniff at both ends showed the source address was the public IP of the client, not the IP of the FortiGate.
The reason in my case was I created an unnumbered IPSec tunnel. Since the FortiGate interface used to communicate with the remote device (the IPSec tunnel) did not have an IP, FortiGate used the original client public IP, which was not valid under most of the firewall rules and caused a routing issue at the remote end.
Assuming the same issue for you, make the following changes:
1) In System/Network, check the IPSec tunnel attached to the WAN interface. If IP is listed as 0.0.0.0, assign a private IP from an unused subnet for the local and another private IP in the same unused subnet for the remote interface.
2) Make the same changes on the remote unit but reverse the local/remote IPs.
3) Add a static route on the local unit with a destination of the new private subnet of the IPSec tunnel assigned to the IPSec tunnel name.
4) Make the same static route at the remote unit.
5) If necessary, modify ingress/egress firewall rules on the remote unit for traffic between the internal network and the IPSec tunnel to include the new private IP/subnet.