# Julia blocked by CylanceUI

**URL:** <https://discourse.julialang.org/t/julia-blocked-by-cylanceui/28332>\
**Category:** General Usage\
**Created:** [September 3, 2019, 3:30pm UTC](https://discourse.julialang.org/t/julia-blocked-by-cylanceui/28332 "2019-09-03T15:30:31Z")\
**Posts on this page:** 1\
**Showing post:** 11

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [September 3, 2019, 4:48pm UTC](https://discourse.julialang.org/t/julia-blocked-by-cylanceui/28332/11 "2019-09-03T16:48:45Z")

</div>

> [@Sukera](#):
>
> “Stack pivoting” is a technique used in exploit development to gain control of the control flow of a vulnerable program, so if that indeed is the reason Cyclance terminates Julia that’s an issue that should be fixed.

Julia uses multiple stacks to implement coroutines (aka tasks), which is a fundamental feature of the language. If Cylance thinks that what Julia does is an attack that’s somewhat understandable, but it’s perfecrly legitimate for programs to have multiple stacks. You can try the `JULIA_COPY_STACKS` environment variable in the upcoming Julia 1.3 release to avoid actually jumping to any stacks but the main one at the cost of reduced performance of task switching. The real solution here is for Cylance to have better precision when detecting what is an attack and what isn’t.

---

_[View the full topic](https://discourse.julialang.org/t/julia-blocked-by-cylanceui/28332)._
