You can get that behavior using multiple http routes, just putting the one that you want to block as the first with a fault injected, and the catchall after. Like this:
apiVersion: networking.istio.io/v1beta1
kind: VirtualService
metadata:
name: nginx-fault
spec:
hosts:
- nginx
http:
- match:
- uri:
prefix: "/fault" # the prefix you want to drop
fault:
abort:
percentage:
value: 100
httpStatus: 400 # Any return code you want
route:
- destination:
host: none
- route: # catchall rule
- destination:
host: nginx