Transition功能塊本質(zhì)上就是一個“wait” statement;一個Transition包含最多10個用于邏輯門的條件;這些條件使用3個主邏輯門和1個次邏輯門連接在一起進(jìn)行邏輯運算;在SCM繼續(xù)執(zhí)行之前,Transition statement在邏輯上必須為TRUE(=1)。
(2) 每個新的Handler在添加時總帶有一個invoketransition功能塊,缺省的invoke transition是一個“空”的 transition,沒有任何條件且所有邏輯門都為NONE;若SCM要執(zhí)行這個Handler程序,需要操作人員或另一個SCM發(fā)布一個START命令,每次從程序的開始invoke transition處執(zhí)行。
(3) 如果Handler需要連續(xù)運行,invoketransition必須包含總是為TRUE的statement且程序最后一個STEP必須反饋連接到這個invoke transition;為了disable SCM自動執(zhí)行,可設(shè)置Force Permit 參數(shù)為 On 和 Force Request參數(shù)為 Off,該設(shè)置讓總是為TRUE的條件為FALSE。
(4) Transition 條件 Bypass/Force請求,在SCM的invoketransitions總是為TRUE且SCM設(shè)計為連續(xù)執(zhí)行回路,為了停止SCM的執(zhí)行,當(dāng)強(qiáng)制允許為ON時,可以將一個條件強(qiáng)制到ON或OFF。
4.2 Step 功能塊
(1) 一個STEP最多包含16個可執(zhí)行的輸出表達(dá)式。輸出表達(dá)式控制跟蹤通過CM或SCM參數(shù)的過程行為,記錄SCM的事件、提供Comments, Warnings, Notes, and/or Output Instructions界面與操作人員交互。
每STEP有兩個與時間相關(guān)聯(lián)的參數(shù),MINTIME 和 MAXTIME。最小等待時間(MINTIME)指定了當(dāng)前STEP的所有輸出完成后,延時多長時間執(zhí)行隨后的transition 功能塊。最大活動時間(MAXTIME)指定了step timeout報警觸發(fā)前當(dāng)前STEP能保持多久活動的時間。MAXTIME不影響當(dāng)前STEP的的執(zhí)行,MINTIME和MAXTIME在一個循環(huán)內(nèi)測量,也就是說如果PERIOD=1000ms,則它們的值只能響應(yīng)到秒。
(2)每STEP有一個stopcondition option (SC.OPT) 和一個 interrupt conditionoption(IC.OPT)。當(dāng)停止條件選項設(shè)置為ON且組態(tài)的STOP條件為TRUE,則SCM自動地開始執(zhí)行StopHandler。當(dāng)中斷條件選項設(shè)置為ON且組態(tài)的interrupt條件為TRUE,則SCM自動地開始執(zhí)行interruptHandler。
(3) STEP的輸出應(yīng)注意在Instruction 和 Expression 都存在的情況下,優(yōu)先級別最高為Expression,Instruction則忽略不執(zhí)行,只能作為附加的描述信息。當(dāng)改變一個CM或SCM參數(shù)時,STEP的輸出表達(dá)式只支持一個委派作業(yè)。
(4)Step Output Instruction 具有HTML的格式,有兩種類型:Informational and Confirmable。其中的信息Informational Instruction不需要操作人員確認(rèn),而ConfirmableInstruction則是需要操作人員確認(rèn)。
(5)SCM STEP輸出的執(zhí)行帶有或沒有STEP輸出延時組態(tài)。在輸出表達(dá)式之間含有未確認(rèn)的Instructions存在時,所有輸出表達(dá)式可以在當(dāng)前STEP變?yōu)榧せ顣r同時執(zhí)行。
5 SCM Synchronization (SYNC) 功能塊
PLC product line. At the time of Ruben's disclosure, Schneider had proposed solutions to the two reported vulnerabilities, but patches for other vulnerabilities were still under research and development. In order to help users ensure the safety of PLC while other patches are still in the development and testing stage, Schneider provides a user guide entitled "using doveno SA products to alleviate PLC vulnerability".
This detailed guide explains how to filter harmful traffic using Hirschmann Tofino industrial firewall before it reaches the PLC. As shown in Figure 4, these firewalls are placed in front of one or more PLCs. These firewalls were configured according to the rules formulated to solve each vulnerability. For example, the FTP buffer overflow vulnerability (ics-alert-12-020-03) could have been resolved simply by blocking all FTP traffic. Unfortunately, because FTP traffic is critical to some processes, this approach is not feasible