Windows Event Logs Windows Event Logs are records generated by the Windows operating system and applications that detail system, security, and application-related events for monitoring and troubleshooting purposes.
Once Windows Event Logs are flowing in a Tenzir pipeline, you can use any
operator to process them. The below examples simply import all data into a
node .
Collect logs with an agent Installing a third-party agent to ship logs away from a Windows machine is
common way to send events to a remote location.
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nOVbXXPbRrJ9z69weVx1MDAxZjdRXHUwMDA2wFx1MDAwMFx1MDAwNHLrPtBcdTAwMDJlw/GAplxiSKbubt2iQFxuXCJBiYpEmVx1MDAwNLby32+fnlx1MDAwMVx0UpJNx9FGW3dTXHUwMDFikU30fPR09zndg/zrh1evXi/Km/HrX169XHUwMDFlr7LhbDK6XHUwMDFkLl//XGL55/Ht3WR+TT/Z/P1ufn+b8ZOXi8XN3S8//zy8uTnYaFx1MDAxZGTzK605no2vxteLO3r2f+j7q1f/4n835rpcdTAwMWRni+F1Plx1MDAxYrNcdTAwMDL/tJnOdXeF8fyaZ7Zs31x1MDAxN57dkvb6icldSNMtxiP6+WI4u1x1MDAxYm9+gei1NcvD/iBYlFEh3I/v7Yvs4m24mfViMpv1XHUwMDE35Uzva5hd3t821nS3uJ1cdTAwMTfj08locYnZd+Rrvbs5WWCjdTu/zy+vx3d3Wzrzm2E2WZSQXHSxlmoj/PJqI1nRN7n5ylxuvtiZ+nA+m99i6r9ZY/yzmfx8mFx1MDAxNTmt4Hq0eWZcdTAwMWOMs/HF5pml2ZDbmOdyPMkvXHUwMDE3JHTsxmRjtqvlOtImu3ve+lx1MDAxN0xxXHUwMDEzjfiI/7mx5u3walx1MDAxY0Hl+n42a1x1MDAxYeR6ZFxmsvXDOX7o7HpL02O2vGYxXi3Wu2icsbK927vjj9aHZXUzXHUwMDE0y8Vg2i3D1+vnfjefNuu8v1x1MDAxOVxytctYLSGF5bRkiza4/n02uS521zqbZ8XGy1j6+4+Pe/fWOlx1MDAxYo7dXHUwMDEyTzq29KVcdTAwMTOIliP2duzHN/3CXHUwMDFk2/KcXHUwMDAzXHUwMDAxX/Klb0npOjt+7n6Xn19cXGRBXHUwMDE2PPRzO3BcdTAwMGVcdTAwMDLL9T1HOC1LXHUwMDA08lx1MDAxMa93d53eXHUwMDEzbiBdVz63y3/JK1x1MDAxZNtvyW/wys2q5teL/qTCXHUwMDAx2P6W9Gh4NZmVW1x1MDAwN8juSvY7nVxcj+bLu1eHs1x0Le7n/viWvPT11mPt2SSHJ7/O6Inmj/TkYkJIsH5gMb/Z/JrRxMPJ9fg22icnz28n+eR6OEv2W1x1MDAxN5ll/K4+R+vAdlx1MDAxYj5yN8avsIL7xYj9XCJcdTAwMWU59q5wXHUwMDFktpbryZZ0W/uHratOVC4u885tcnpm+zdcdTAwMTe+LDpPhO1O+P1VQev423Bky++Co8Xt8PruZnhLZ/kwVC3vXHUwMDExSLJtcSCa/9ukjVx1MDAxYaFaLcuWLdd+oVxi1Vx1MDAxYV9+si5m4c2ZeDe86aa9X0dev4FQPz4+rFY+O57YrcQ9+XR00X7XXHUwMDFmTZZRfHa8PUs9//D2dr7cd1xc+a7tfJr7v6ks+tXr0dDXq5v7/cbdXHUwMDAzUZ3Ac6xmkD5cdTAwMDei2vKp0Gz5vm9cdTAwMTFf9PaOzMfP6EVHpnTsXHUwMDAzT1xuYdt2q+VcdTAwMTNzc3ZcdTAwMDL1u/D0i4HqyoOWXHUwMDE1XHUwMDA0XHUwMDA0kFI6jvtcdTAwMTim2lx1MDAwZjDVcqXjWYHv/KWoardsz/9cdTAwMDbPfFx1MDAxNFXFlvRcdTAwMGKo2s637PfnoehXkGRcdTAwMTdFd9axXHUwMDE3alr+XHUwMDFmR03bd3aldWw60qdcdTAwMWNOhGzv2LTv+tO5M5uNflxuz1x1MDAwZlx1MDAxN785XHUwMDAz12qlLzw2xVx1MDAwZWo+U1x1MDAxMWfZjyCmfFjD2Z7Tcj1PbMjMi0LITNhXp053XHUwMDEwdtrBUXE0TlI76X1cdTAwMWLifGtcXP8hxHFcdTAwMWPvKbe2pCXJ6+nfe/v147t+4UWctIiOuUJIi1I5layytePorYPvq+OecvUgOPCDILBa5MUulcveQ8d/XHUwMDA0c6i4l45cdTAwMTB/bSX378Wco9k9LerVm8lcdTAwMWZcdTAwMDaeq8lo1MzrO9jzlXy8iz2PrefZXHUwMDAxSNrWrnRcdTAwMWSpgriLXHUwMDFkON7+7DCb+9nZp647UWfHcd4uss9FPvvPQiDn++q270UgXHUwMDFm5M/3X2qJNrhdVZf3Y6s/XHUwMDFkqYU4Oj3xJ7f2yyil7Fbz6J5cdNik5T9cdTAwMTkuftByhSW9/dvuj1vzpVx1MDAwM5tcYlx1MDAwZTyCXG6CXHUwMDBiO2j5ruXtxM9zXHUwMDAxXHUwMDFiLe2AXG7mwHJcdTAwMDIppFx1MDAxZHjBPshcdTAwMTZ4lmc73v8nYDudXFzP5vn5ePhcXMD2lTT/SGvywXqeXHUwMDFk2Fx1MDAxY7u1K11HqiO8lvCE+Ia2x/HnXHUwMDEz0VmUt1NcdTAwMTF0rtwr+6j1xv3PXHUwMDAytub3v6S0cohNuM169kUh29vjN/ez0dGvcT/6NT3rfXpvedmvL7G08p7065Zjgcd/w/XY45t+6Vx1MDAwMORYXHUwMDA3XHUwMDAy/TzH372p0n7+XFxcdTAwMDDktlx1MDAwZVx1MDAwMnTzbIdcdTAwMWO55VuNpPVcdTAwMDVcdTAwMDBqSddxLUs+e0vh5Vx1MDAwMFD86cM8fybs+Uom3sWenaU8O+y0nuy1Wz5RXHUwMDE2aVx0Z//Gx3z1ySv9I7fXyuYqXHUwMDFjiNHnLItfenj+ufdgf7u4XHUwMDE4Z8Fj19Xiyeuub7hcdTAwMTJzXHUwMDAy15de64Vi0ulPXHUwMDFmR532WX+afLpaXGZn0+Gs/C1/XHUwMDE51ZbjXHUwMDA2wbNj3Vx1MDAxN4KpZUk3cFv2/sXW48Z80Vx1MDAxNI5cdTAwMTDmoFx1MDAwNbd1XHUwMDA1oVx1MDAwZV5/2Vx0recqtPxcdTAwMDM63sBcdTAwMGV8mrclXHUwMDFhN5Tr0HJcdTAwMWZcdTAwMTI835Ve4LvBs1x1MDAwN9PX/DL4XHUwMDA2v/w+oOt8RseOXHUwMDEw5tU/rlx1MDAwZi+H19fj2d1z3GJ9XHUwMDA1XGJ2QW+zrIeL2lx1MDAwYlx1MDAwMaXzh+LVXHUwMDEyT7+USLTUp3hccvYnp1x1MDAxZpxjL1Jvj/+3dze/++00boXp9UtcdTAwMGbY3Wai/TT4XVxiP1x1MDAxM+JcdTAwMGZGqCtcdTAwMGZ8z/FcdTAwMDPLXHUwMDEzlus9RkSbSzFcdTAwMTFqk6xFXHUwMDA1wvPfbj13hDZ6Tl+J0J9etW9uZlx1MDAxNGhcdTAwMGJyxn9cXP/0qj/O7m/pPPlzebdcdTAwMThfaeni/lx1MDAwNlx1MDAxZo7mt8vh7Wg8esVB9FQ0z8ZcdTAwMTeLP8xhtza7XHUwMDFiu3/egveK9EB+MdI1M3gk1F3xZCPUsyxbXHUwMDA0Qu7fXfkyVXmRke54O5H+jK97Pfa218PgXHUwMDE2bqvlSd/5S+FXWtKym1x1MDAxZbhvcN8threLN5Pr0YRy/C9ccj5bvye/z+tcdTAwMWOcXHUwMDBlsnuskoh/sP1P46F8eMNcdTAwMTYzkjWPfj2+XHUwMDFlfX1ccl9cdTAwMDbjxlx1MDAxYX56sFxi399nXHUwMDE1s+Hd4nB+dTVZkHE/zifXi10jsrXaiM3L8fDBUdIumr+Rc0126tVcdTAwMWJcZrpdmGw+vdo4XHUwMDE3f1l//uePjz79k/fU8z80/z6VYiZXw/zxd2Pkk52uwPdd27a+4b2146JohVx1MDAxN/fv2lx1MDAxZk9P41x1MDAwZmH39s11fvdEinkxpbS3U0s7VuvAlqTnPqxnt3POo/nkW1x1MDAxOIZtt1x1MDAwZVxcP1xiKKE4LVx1MDAwMmz3kVfXpHvgWq3AXHUwMDBmPK9cdTAwMDVQb/TT1zWB9Dxb2o1q4d+flDzf9+xv+c9cdTAwMTaaYbbgSH59N/w8XHUwMDFlbbnL2Lyl7ZxcdTAwMGad4Wg0spzxhfCsLPC9sZeJUUZcdTAwMGU6XHUwMDFl2rbresJcdTAwMWVL11xyzi8suGw2ap1cdTAwMGIxXHUwMDFju75nXHTPOVx1MDAxZtuZPz73R14wtMfnnuvLljV2MtvOMitzXHUwMDFhTkhcdTAwMDRjvFx1MDAxNbLWJuysvULtSTR3nnxcdTAwMGLNpuLT9y1cdTAwMTns37X68pu4L1x1MDAxMs3db0DzPXj7l1/eXHUwMDE2j8E5XHUwMDE13LaLXHUwMDA2odNqXHUwMDAxyFx1MDAxZr6hQ9juubYjn/3NgC/hO/lyo8b7XHUwMDBi8Z2xlTzTdlx1MDAxZK9cdTAwMTW4NuUqt/HYflxiv73w/yzUbbhcdTAwMTE//8CBnoLhXHUwMDFmzJCvhzc3fUpw4/VxvP48XHUwMDE5L9882oPF/9AgZENy+rvbqD17XHUwMDBl3PhcdTAwMGJVVlfjpMlcdTAwMWN+vvuc/3111bh+nvybXHUwMDEzM8XIMD3+gEnx8ZetZf1cdTAwMTdqLU/++PFdbJ+Vb+T56eo+q8Rk+O5YZOH881x1MDAwN2fkjErXUaX7ObvKPqtpe6lcdTAwMGWDanSVTaJ3o5uzd8fzj/2oipP2JHp7OVx1MDAxYp6O5qNQTOKKvr87uzn7NDo8d/IgmrZzddjGczn/9vbs5vztMoiu3M/nV+nkYz73s7dHYnj4pvjYf1x1MDAxZqvpQERhz/4w7Vm9KrJVKUXcb4t4wn/LeKruVdXJ43Bwr5JeTs9XXHUwMDFmplx1MDAwM0k61odpJpIwsrt9aalJu6K/pVx1MDAxMop0ivtuWOSqyulvRDrZksZ3olDJXHUwMDBm01x1MDAwZc1cdTAwMTc56lBKVdI6S+moYll2w1x1MDAwZc2j6NmU5jlcdTAwMGLVNF/R+Kv4kNZwKG2a3yY9qfrSVVVGz/XuVaiWWCN0u1x0ZFjr7FQlXHUwMDE5/XZixiho3lx1MDAwZe0vk3GY51qW26S3oj1aqmpcdTAwMGIzrlx1MDAxZGPchPZZ9cpuqnjcXHUwMDE4+4AsSS2shdc5VZZcdTAwMWWzbbHuoXTjksdbxmleku3v4+lcdTAwMTHNn9K+lTBz8Vrxm9pcdTAwMTmT5qD1tys9JllwOiPdnsv7316nIFx1MDAxYttKy5xu2JNbspLmOFx1MDAxOcBeZFPF48bTXHUwMDBl26qb5DgjLas6WDedX1R1k0Gu5yqWdFx1MDAxZWXclzR/tlwiX7BoX8tun2U2nT3sXHUwMDBmWVx1MDAxNYcpn1NcXOFsscfBSo+XlX36S+uwVbokP1x1MDAxOJD9XHUwMDA2+lm2x8Ahm5lnWcemZ2kvPIfL64NOhXPCObxX9JfGL2jvqqRzq9hHXHUwMDBmpdUlXHUwMDFmJ18t2X5cdOxcdTAwMDd/U/SX10T7XHUwMDE5kD2VIHtaibbRSmm/dmlcZtGFjaZcdTAwMDPy64zW2Kn0OeT3MZ9Dj/yUzlrbRmrfxd+BczJNLaMv6MwtWjetOS35XHUwMDFjaF1xleZxQvtNOi7vXHUwMDBiY1ZYS1xu+yzjXG52wFiFpWW5q22EM4jgI1ZcXJ9TmNFYZ5H22TbmhZ9W5DckXHUwMDFmXHUwMDE4X06d7XE4biyzNkeFfJZcdTAwMWM3OLfm2ig2yVx1MDAxN7WMbMH+sZGdnMI2qjpGXHUwMDFjldrXezg/Z1x1MDAxM0dFnSsk5as6jpyYYlx1MDAxMfmCcscmjmpcdTAwMTnljXVcdTAwMWOxXHUwMDFm9tjnje7SjFfFXHUwMDFkiqMqovxxpJo56nRcdTAwMTLlZ1ezu3PKfVHVKVVcdTAwMTKt1CT6/CCvVW34pVPHKfmlXHUwMDBiv0F+6nK8ZbJcdTAwMTnDnMN0XGZcdTAwMGL6zdmS6biCPZeIK+jHiTK2zErEzWbMXHUwMDE0Y8JcdTAwMWb0fDiHXHT08kqFyFx1MDAwYqOQ1ka2i0qyt/6NcqeCjaZZc8wtmVxu32/yXHUwMDFh69d767mctzZj1rnGzGdyWngyjCZvroanqzvCkSnbbdopo4n/98Ppajn4dDyP3vaCqFx1MDAxMCXiSCVcdTAwMWT4XHUwMDFlnT3H3ZLOXGb7dynn5FqWLuOJllFcdTAwMWVGbqjUREJX76FcdTAwMWFcYvK7iv1u2tGyaSRw9nTuyFx1MDAxZCvtt5Rr2Z9cdTAwMTR82cRJx6WYxT7oXGZcYiMo59BY+E7zKMKfXHUwMDFj/rJiPyk5XHUwMDBmuFx1MDAxNNsl9lx1MDAxOVx1MDAxZvLzXCImTOHvsD/54PrzJl45r3aT7Zjg58K2s1x1MDAxZK+wc1Rux1mHPlx1MDAxN3ZcdTAwMWSvXG5jYPxcIi9cdTAwMTXiJrwkvTbp5av1M/B/ilvMR/5cImpcdTAwMTnh2U5+gF5Hslx1MDAxZXwwKWDfJc61e7i1h43sZLCKybd5PNhcdTAwMTP7qFx1MDAxNOUkM1x1MDAwN+V/4y9S8Vx1MDAxOWJcdTAwMGXlXHUwMDE4n6dcXFx1MDAxNyEvYjysXHUwMDE1slx1MDAxNeVcdTAwMDFh5pDIOYpzTlx1MDAxYjmAY6dcdTAwMGZcdTAwMWJcdTAwMTKOx1x1MDAxZMX7J4yo421cdTAwMTVXPWOjnqixkeJDn1x1MDAxYvLSVGm/pPzMZ1x1MDAwYt9KcoO/WVx1MDAxOZvzpLxY6jFTW+dcdTAwMWTeg9CyS8pcclxuXHUwMDE4S88o7MdlnyO+gJjCutnGVZvsTfNVsEmRa518pXVcInCYimNcdTAwMTVcdTAwMThcblx1MDAxYtLz5Fx1MDAwZts2hGza2bEhj7PcsSHGcrv9LVx1MDAxYlwiXHUwMDBlSsZNtiH7+srYUNDzK+ZNXHUwMDE0r6oqeI5Iy2ueUo8jmDfVPGVacH6NkUtcdFO319ajOTqGU2SVtt1atsYxXHUwMDA1XFzcwTHkYcLQXHUwMDFkXHUwMDFjY1x1MDAxYu7ERVx1MDAwZjl2XHUwMDE3x3BcdTAwMWXuXHUwMDA2x2hPnCuBY4jdzmrvXHUwMDFjnlxmkOfEJod3wFx1MDAxMyo6o5Xmie1cdTAwMDZcdTAwMGbrlOyLxl60dmFkdlxc+5rmdSvwIcI2o5tWbK8kXHUwMDAyV9jmilx1MDAxYlx1MDAxOXzeOpmCtyjKazwuco/mRiHsxjJcdTAwMDH8x9q6YVxuu+m5mItEWKdgu/G4iEfIiNPDblx0xu5ojoi8dtjWe2Sui7VcdTAwMWZHZEecL+XCXHUwMDBlfNtG7tK/Yf34rTBjUswlLHNw3rxOel5V8E98J1x1MDAwZTHVul3EN+aqwIPAv5G7Mvj8tqw6PiVOXHUwMDEw6jF7Jl9cdTAwMTF/XHUwMDAz32JZWm3nq47m9tNcdTAwMWFcdTAwMGbajoLtacxu0mnmwFx1MDAxNepcdTAwMDQ6XHUwMDFm+Fx1MDAxMeuBWymdS1eak1x1MDAxMWYm4Ex5ZfxqXHUwMDA1flx1MDAwNFx1MDAxZd1cdTAwMWOHZdNs20dcdTAwMTPwqp69szbwQWtcdTAwMWJcdTAwMGZcdTAwMWEycOhcdTAwMTJcdTAwMWNE8Zgx11x1MDAxNlx1MDAxYrtoXp1cdTAwMTlbI9/D1pgnt9W2rZlDmzNcdTAwMTUxxzDLKlx1MDAxNTbPXHUwMDBlXHUwMDFjXHUwMDFhPC5iLkR+bnM9gvmnqG3aVv1cdTAwMWL8U01cZmdmvFx1MDAwNS9nWVx1MDAwNb7IY1x1MDAxMk+DrVx0b8FTXGbXzy3ms8mg1DHFXHUwMDFjfKnPrylT4mSq/Z3Wj3Ft+Mem3mBcdTAwMTnVI6nOj4li/8FcXLRcdTAwMTZnq4bhcTu2lnUs7ZOI6WLZqIl4j/G09608pYJvMjdKYkW8XHUwMDAzXHUwMDFjnfLLXHUwMDE5PuP8aV7ku4jiRVWIUzpbzm3MXHUwMDE5qpRrI85riCPWSVHXXCKnS6NjMf/i3Jc6zNOgXHUwMDA3XGbX+XClyl1cdTAwMTnsZnQnbeRrh+pcdTAwMTnUvlvjUZ4ouYZh3dzIaEdb61x1MDAwMC9gPeA0xrKY15FcdTAwMGXhXHUwMDBivlfdjtr+zmNSXFxcdTAwMWZyPVx1MDAwZb5VccyRXHUwMDFlxdWSToa+XHUwMDE3XHUwMDFjg9pcdTAwMDbg7UrnfPhPXHUwMDA1n0mZP1x1MDAxMq6QP5Gv01x1MDAxY1x1MDAwNmNKk7OW6Fx00EjweYn8Qlx1MDAxY4wwalDyekvCKPZvYGZu5uR6XHUwMDExcUZxTDVcImKm0jWdwU/kaeiXXX1WjKlky5L7XG6lyevY/zTXOM41dIQ105jKYF3b7WOMQ+5FVIjbNf9g3exe6TjQdXiF/VxmVlxy3Vx1MDAxNfCY7cqcvsb8tktrW/LaXGY/6jLGsIzyeo0xOTCGddW05lxc5Du837ZcdTAwMGJep2V5yVx1MDAxOLORIeZcXI3LPOZqm+uxjLjyXHUwMDE2LvM8XHUwMDE099v8kcdEv6SByywrai5KNSRwOde4XFx1XFxwOpp31e3r+p7rS5Zv8VXSQ/8g386x/Fxc4WznWOJRh7t8tSE7XHUwMDE5XGJ9PuiH5Ki54Vx1MDAwYjb3i4iHMm4hfijvxMxtWLckf6RYiZAv3LU++1x1MDAxNfRTi/tcdTAwMWSs30OuXHUwMDE2nKvIZ42+VcvgI/Br7iMlyGusXHUwMDBmTlxiXHUwMDFjL1x1MDAxOaNCjlx1MDAwNZtjnDlcdTAwMDNyXHUwMDE5nlx1MDAxYpCNiN9XwPGUxtPrJFx1MDAxY6yMPvpVrN9lvmv0q0jLklx1MDAxM6X9rufqunZAXHUwMDFjVDFcdTAwMDc1NdUyLlx1MDAxMDPIXHRtc7bg9pyn0Fx1MDAwZkEvg22t47tcdTAwMDOfNs9ccqhcdTAwMWU8w2iU+3orcyaS9oG9gYeSL+q82U16Jp9E5jt8XHUwMDAx+1x1MDAwM49W2JPoso/gt2LJtVx1MDAxNdu+Y2qhQnJcdTAwMGaIdbLaX904adf6kvZt9DtC51x1MDAxNOy/U/umIG5k9Fx1MDAwYml4qEO+J1hcdTAwMWZ1t8F4ek5z+lDBX4w+nTfyQIW830atXGJ94Kxb66NcdTAwMWbEXHUwMDE4USmd5zCmqUdcdTAwMTX6X7ynNY5cZpOEzm/CNaXsa59Z8Vmwn6aOrj8zl3me9ntTk2bWJmY4J2JcZvLn2MRHvop1z8qm2MNaXHUwMDEwa1x1MDAwZedccqq3KZ7LTXxlWlx1MDAxNlx1MDAxZZ1y71xmdTiPkTl1jy7mWorHkLoviz2mbj1cdTAwMDbV1I7p8clcdTAwMThxwj0y3YsjPNW4sN5cdTAwMTNzT4c5oY49u5ZxnExqXHUwMDFi0Np0P3ClMVx1MDAxNHjX0TyS83BdV0W01uPQfDe9u6jO7cLYRnKsXHUwMDE4W+9fXHUwMDEzXHUwMDE06MeVOm7aVD91XHUwMDFjtlx1MDAwMdVcdTAwMDTkXHUwMDBiiDFR/1x1MDAxNunfbDpn3b/m7239XHUwMDFj16roYVx1MDAxN8RVKJaTXGY8XHUwMDExXHUwMDE4LzheptxcdTAwMWaCPrioYL/UONGU2fFswHVcdTAwMWFxJS1H/1x1MDAwM1iOfFmauULmXCK6LmKuiLlSy8hKo2tzrKBemnJcXNb7Mc9FXFyTaV3OlyR7TzVBgd9WNFx1MDAwNvpNXFx/8Fx1MDAxOIRRXfShzXqU4ciQUfzBj7nnqzlysTK1XHUwMDA3OINjOLKLmlX1XHKP0Fx1MDAxY7kpK0+4jkX9vpGDR1x1MDAxOJ7ocm3JOYu5XHUwMDEy88TG/KhcdTAwMWRcck8saq6DvG14YsF3XHUwMDA2nJ9Qa/W1ruL8jpx/XHUwMDEy1bYw9nNgP/1bbadByZyN+XbmmrOzmCfjOfQnO6o+o1LPTzxcdTAwMTX9Z+1cdTAwMGZmTW2NK2tcdTAwMTn8u0A9aLOfXHUwMDFiueH+hFx1MDAxZKlT+0lcXFxyNCdPXG57faaci6FLfo5cXG3WaupcdTAwMDTi5O1an3vUmtN3XHUwMDFhZ8+15Ip838X6KUdz/7aWw/boRau6r1x1MDAxZXKN4HLPm2tcdTAwMDRwsVx1MDAwZddcYtAlbDc1Qqp73knhmtzh6Pqg/t5eNWqDusdR11x1MDAwNVx1MDAxOF92k+26XHUwMDAw46P2265cdTAwMGJcdTAwMTDDabldXHUwMDE3QFx1MDAxNtnNumDdXHUwMDBmXG5x1lx1MDAwM/Tf4ed2t76D4N/4r9T8bKvOcMydhu5cdTAwMTOGXFyP2Vxckya7tUum70m435PrXHUwMDFhby3jnqupfTHmYLVd+0KWrXbqS8zj1jhb177EhVx1MDAxZtaskFW9uvbF3mzGdqp92Xbhe2OvgaxrXz6zpLc1XHUwMDBl4TO48E7tW5C/qN21uZynJlu170ZGvIz73YXiMclunDspv1x1MDAwM9P0PFVhcmzmdkPtL3zPdci9e9yjVdo/XHUwMDEwXHUwMDBiPd33T9J67pJzrK6HpZFRjafvXHUwMDA3XHUwMDE06qJUz032M/NEtf+6OkdyP9Ou/Ytqrko/R5xxerS2l7nvWaJcdTAwMTdTx0ScmLtMve4tLNn/blx1MDAwMTZcdTAwMDFcdTAwMWY8UbRcdTAwMDe+XHUwMDFmJe5cdTAwMTDqz1x1MDAwM1x1MDAxYnFcdTAwMDHuQ7nY3JNS3uecQtyp6q1cZnZcYsV95k7JdTjxSehTrq64J1x1MDAwMvtQjWD0XHUwMDFkbWfU2KrkO1x1MDAxMtxcdTAwMDNxb59ktPZe1TPxmmpcdTAwMTnlO/NcdTAwMWNsXHUwMDA0+624X1xy/1x1MDAwYrl3XHUwMDA2XHUwMDBlSf9cdTAwMDfWXHUwMDE1ldZvU12HedCfz9A3XHUwMDEy6Kl1da9cZr04xDxkXHUwMDBlr1x1MDAxMfiX4ty53yH1Myn7hLZPXHUwMDAxPMVzlr5z7KGfZtaSXHUwMDEyt8DfXHUwMDFj+Iexl9xzwrOcXHUwMDFmISO7TXO9XHUwMDFl4ndmLDqXzKyRuDV6SqhdK+RvXHUwMDFlT/dBgDNhIZU+XHUwMDBiqm3BXHUwMDBiOuAjpbb5e8X43Tf3y1x1MDAwNdfdhM/ca1x1MDAxN7pcdTAwMDdI8cs1eyrNPbSr++hcXO+LmO+2cTeTXG6qJaBPXHUwMDE4XufKjo5/0qd1oNYv9Zlhb+CzxM2nhc7FIdXbqdLcnflcdTAwMTTfXHUwMDAxWeCzzPlcdTAwMTLci3C/hvIrj4kz03effeRfRbVcdTAwMWI49sD0XHUwMDA0kVx1MDAxNzLwafi1VGZcdTAwMWX6XHJcdTAwMWNcdTAwMWTxxPjTq1x1MDAxMG+K+b/GmFx1MDAxNL5lc78sqXuJbVx1MDAwN3fr+u6Fv1x1MDAxMy+OUCOQPv5cdTAwMTJuJbU+esyoeTLX9KdWXdP/RnzFVcf0vDLuW/P9rb5X5v6+6anfK4OZXfTkXHUwMDBlubdQ8Xjg81x1MDAxZKW/8zlEXHUwMDBl9qLvoaGn9PtcdTAwMDL8O/xcdTAwMTHz8l/0LGXC54/3XHUwMDBmcD+MPKFrT9RcdTAwMWScl6aMY4z3XFxncq5LXHUwMDE557iPx7hcZt1cdTAwMWX55czo9+BcdTAwMWJcdTAwMTbzN+7ltblPaMZ0kDO5v8/vTECX6vHpmdYlPCdd3GcvXHUwMDE19z4wd2QxZ5ty37zWp/0gh+EuPKo0X1x1MDAwNcdMUVPZzG84TnBvkaE3XGJcdTAwMTnll0jLSv2dY1x1MDAwNfdcdTAwMDfcK8FYqeGU3Fx1MDAwM4O/8d260u9MrDSm8nNVn/NQKnWeyFxczoHo7yQ9UedZ8lx1MDAxZjNuT3a5XHUwMDFmpu+dlJ6/otxHvIHve1x1MDAxOTt5j1x1MDAxNHOcXHUwMDBmuU5HboB+m3mExo2cz6FcdTAwMWLOXHUwMDE05W70tVx1MDAwNPevKV44d3E+Q08nZ/xiXHUwMDE53y3yXbVg34VeOHC6XHUwMDFhn1xc1PtcdTAwMTQv/Fx1MDAxZVxizoznqVxiy1x1MDAwZbU+5XNZ1+Xw2VjnQ2H0yT49R+uTravc3GvDT1nfXHUwMDA2XHUwMDA2XHUwMDE43HJcdTAwMTnXoJ8o29ipxF2N1u9V8dpOnVq/gl9cdTAwMThMXHUwMDEyvL5cdTAwMDT1PfZ5XHUwMDE28udwwL1MrrU5N6N/XFxUjL/ge1PuXHUwMDE5INdxru8mVCfgLj1BTYb63exFv3OBe1uh7+9xtui5XHUwMDBmuFx1MDAwZsj8WGOIrd9cdEFcdTAwMWTX5rtcdTAwMDWNVUrXm1jHocFcdTAwMWG+XHUwMDBiUSv9zlx1MDAwNvJ9gVx1MDAxZVx1MDAxZb6Xeq/og3Cu13oh+Fx1MDAxNJ5cdTAwMWIsda2wxta9+8DMk/vc27VVXG5/o/1QPudam+9v0Fx1MDAwN1x1MDAxZax0na/Qk6m4XHUwMDBmxFiDnmVKeaJwkXdifueHzoX0Y9T+XHUwMDFjK9BH76Rt6d5Qz4xJfI3vtnp8T6N7yZeK/drc28TV+5DjhGxr6lx1MDAwM7zL45i4cvh+nnPiwMRaJrhcdTAwMTdcdTAwMGVcdTAwMTnuPDtcbrHjKl4n11xm5Fx1MDAxM3SuU/hEp75vXHUwMDAwxyGfRW9dmefQy8yI86JmXHUwMDAwj9H5mPJcdTAwMTXNw/VK2cj7wFx1MDAwNV2DhspghZKUL7hcdTAwMDYhe0lzh1Dye1x1MDAwZtw/jlb1u0GUc8jf86V+pmcnYVx1MDAwZfxDPiNewZ/1Plx1MDAxM8ZcdTAwMDbUJVx1MDAxMtxcdTAwMTPvpmgspnxJuNdcdTAwMDUvoXWDs+Pegday0vq0/kTzXHUwMDFm/Vx1MDAxZVx1MDAxOI8p+V5Gc1wirZvQJ82dSnBHrUv4V3MnqsNpn5Lf41xiI6fmROCUVMPgnkVsOFFGfptcdTAwMGJ+94E5XHUwMDE151x1MDAwMNpcdTAwMTNkhMNcXMeDl1x1MDAxNFLLUsNrXHUwMDA2ltYjXHUwMDFmmlx1MDAxYZ6ScG9Uxlxch1x1MDAxYb0kQ21cItnHSsN7RM7xXHUwMDBm30PtrO8g8WyKu2mL/aBcdTAwMWFcdTAwMTieRTFcdTAwMDRuzjV+avaSXHUwMDExNzpcdGONXHUwMDAzNfeS+l5cdTAwMDb5oFdxv4ZtXHUwMDAxPtPW73NcdTAwMTmbJfx+XHUwMDFlzoR7XHUwMDBiIe7lYtyPmrtcdTAwMDV9XHUwMDE3j2eoruaeXG5jXHUwMDEw97q4bklcbtOXIFx1MDAxZZXU+uyjfFx1MDAwZqLzKutcdTAwMGKV9Mx9yYBrfOhzLHFcZlx1MDAxNej/SY5cdTAwMDX0onH3kERL85xUjOH6bofv6fGeYdKRXZ1cdTAwMDPQl6L8jP5cdTAwMDbqq56J6Yj7uFxca+ieyorxz/QyuNeMM0hcdTAwMTX3O+icSpM3lorn4LpcdTAwMWRr1XmG31x1MDAwNVCusVx1MDAxN+eX/XtY7VxuNqJ4XHUwMDE1hodU6FfTWqimqd+T6CzBj7j/qt91tPk80f9kO+M9TOKVyZnR5/4n3t+U+t1cbpaZ51xi+9iHm7K0OsE9XG7VwCqs19BGTEvunW+eh20kY3Y1qNfFfVncsYBj850692XRw0EvXHUwMDAye+9cdTAwMTn9XHUwMDBl6lx1MDAxZH7vXHUwMDEz8Wz0V+j74j6Kclx0+D/vVfE8tFx1MDAwNvbRNnM3mlx1MDAxYnU8+Vx1MDAwNr+3sDRcXNBhvEvAR1imcZJr7ohrfqyHfIPWm6FcdTAwMTcqdCxqu9NcdTAwMTk63KMl3zP62Fx1MDAxYvRcdTAwMTHXfPfE+lx1MDAxNWJcdTAwMWH31XiHprYp+i+QXHUwMDExPiSXxm7cXHUwMDFi310n3lx0be5HsC1cdTAwMGZZRueBup5lTrxjXHUwMDFm5Fx1MDAwNNQ4fIeV4Fx1MDAxZFx1MDAxYqyH7ylW2r451Vgzo9+x9Zib8+GcQryF31Hk3o6RsX3xvlx1MDAwM/o42lx1MDAwN7B/85ut+9Wct1mm/YRy/jQyey9cXOZysHOF3Mz7lFxc77GP1mee1b5cXJ83c0t8/1KMfHBi+6yS/93472Vvx/V/eOBcdTAwMDVS2lbLXHUwMDEynrTWL7D//sPv/1x1MDAwN4yQRYkifQ==Windows Client/Server Agent Fluent Bit Winlogbeat NXLog Event Log Channels - Application - Security - System - Setup - Forwarded Events
Regardless of the concrete agent you are using for shipping, the high-level
setup is always the same: the agent sends events in a push-based to a Tenzir
pipeline.
Winlogbeat Winlogbeat is Elastic's log shipper
to get Windows Event Logs out of Windows machines into the Elastic stack.
After installing
Winlogbeat ,
create a configuration:
winlogbeat.yml # Choose your channels.
winlogbeat.event_logs :
- name : Application
- name : System
- name : Security
- name : ForwardedEvents
- name : Windows PowerShell
- name : Microsoft-Windows-Sysmon/Operational
- name : Microsoft-Windows-PowerShell/Operational
- name : Microsoft-Windows-Windows Defender/Operational
- name : Microsoft-Windows-TaskScheduler/Operational
- name : Microsoft-Windows-TerminalServices-LocalSessionManager/Operational
- name : Microsoft-Windows-TerminalServices-RDPClient/Operational
# Send data to a Tenzir pipeline with an ElasticSearch source.
output.elasticsearch :
hosts : [ "https://10.0.0.1:9200" ]
username : "$USER"
password : "$PASSWORD"
ssl :
enabled : true
certificate_authorities : [ C:\Program Files\Winlogbeat\ca.crt ]
# PEM format
certificate : C:\Program Files\Winlogbeat\tenzir.crt
key : C:\Program Files\Winlogbeat\beat-win10\tenzir.key
Start Winlogbeat as a service After completing your configuration, start the Winlogbeat service:
C:\Program Files\Winlogbeat> Start-Service winlogbeat
Run a Tenzir pipeline Now consume the data via a Tenzir pipeline using the
fluentbit
operator that mimics an
ElasticSearch bulk ingest endpoint:
fluentbit "elasticsearch" , options = {
port : 9200 ,
tls : "on" ,
tls . key_file : "/opt/tenzir/elk.key" ,
tls . crt_file : "/opt/tenzir/elk.crt" ,
tls . ca_file : "/opt/tenzir/ca.crt" ,
}
import
Fluent Bit Since Tenzir has native Fluent Bit support, collecting logs via the Fluent Bit
agent is a simple approach.
First, install Fluent Bit on Windows according to the official
instructions .
Then create a YAML
configuration
to send Windows Event Logs out via the Forward
output , which
encodes the events using Fluent Bit's MsgPack-based wire format:
input :
- name : winevtlog
channels : Setup,Windows PowerShell
interval_sec : 1
db : winevtlog.sqlite
output :
- name : forward
match : '*'
host : 10.0.0.1
Adapt input.channels
according to the Event Log channels you would like Fluent
Bit to monitor.
Run a Tenzir pipeline Use the fluentbit
source operator with
the Forward input :
fluentbit "forward" , options = {
listen : 10.0 . 0.1 ,
}
import
Ensure that the listen
parameter matches the host
value in your Fluent Bit
configuration.
Test the configuration Test the setup by running the Fluent Bit command line utility:
C:\Program Files\fluent-bit\bin\fluent-bit.exe -c \fluent-bit\conf\fluent-bit.yaml
Deploy Fluent Bit as a service To make the setup permanent, run Fluent Bit as a
service .
Create the service:
sc.exe create fluent-bit binpath= "\fluent-bit\bin\fluent-bit.exe -c \fluent-bit\conf\fluent-bit.yaml"
Start and check the service:
sc.exe start fluent-bit sc.exe query fluent-bit
Start the service at boot:
sc.exe config fluent-bit start= auto
NXLog The NXLog agent collects Windows Event Logs and offers numerous output
modules . You have several
options with Tenzir. We use the JSON extension to format the data in all
examples.
Ship logs via TCP To send logs straight to a TCP socket, use the TCP output
module with the following
configuration:
<Extension json> Module xm_json </Extension> <Output tcp> Module om_tcp Host 10.0.0.1:1514 Exec to_json(); </Output>
Import the logs via TCP:
load_tcp "10.0.0.1:1514" {
read_json
}
import
Ship logs via TLS/SSL For an encrypted connection, use the SSL output
module with the following
configuration:
<Extension json> Module xm_json </Extension> <Output ssl> Module om_ssl Host example.com:23456 CAFile %CERTDIR%/ca.pem CertFile %CERTDIR%/client-cert.pem CertKeyFile %CERTDIR%/client-key.pem KeyPass secret AllowUntrusted TRUE OutputType Binary Exec to_json(); </Output>
Import the logs via TCP:
load_tcp "127.0.0.1:4000" ,
tls = true ,
certfile = "key_and_cert.pem" ,
keyfile = "key_and_cert.pem" {
read_json
}
import
Ship logs via Kafka The Kafka output module
publishes to a Kafka topic that Tenzir can read from. Use the following output
configuration to publish to the nxlog
topic:
<Output out> Module om_kafka BrokerList localhost:9092 Topic nxlog LogqueueSize 100000 Partition 0 Protocol ssl CAFile %CERTDIR%/ca.pem CertFile %CERTDIR%/client-cert.pem CertKeyFile %CERTDIR%/client-key.pem KeyPass thisisasecret </Output>
Then use load_kafka
to read from the
topic:
load_kafka topic = "nxlog"
read_json
import
Collect logs via WEF & WEC Instead of deploying an agent on a Windows endpoint, you can also use native
facilities to collect logs centrally.
To this end, Windows comes with a Windows Event Forwarding (WEF) mechanism on
the endpoints that uses standard Windows Remote Management (WinRM) protocols
to transmit events. The Windows Event Collector (WEC) is the service running
on a server that receives the events sent by clients through WEF. The WEC
aggregates these logs and makes them available for review and analysis.
Administrators can create subscriptions on the WEC that define which events to
collect from which clients, using criteria such as event IDs, keywords, or log
levels.
The diagram below illustrates a typical setup:
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO19aXNcIsmS7ff+XHUwMDE1Ms2XmXev6FhzuXPnmVGCqqJKXHSFSKRCr8fKUIJcdTAwMTCLXHUwMDAwXHUwMDAxKshcdTAwMWO7/33cPVwiRbKp0Nal7tfqXHUwMDA1XHUwMDExmbF5uFx1MDAxZj/uXHUwMDExmfqfX1x1MDAwZVx1MDAwZVx1MDAwZWfxuH34j4PD9lwialx1MDAwZbqtSXN++Hcs/96eTLujIVxcXHUwMDEy9H06uptEdOf1bDae/uPXX5vjcW5ZK1x1MDAxN41uTM32oH3TXHUwMDFlzqZw7/+D71x1MDAwN1x1MDAwN/9D/8/0NWlHs+awM2hTXHUwMDA1urTszpHrheXRkHrmrsd8V/uOur+jOy1Ad7N2XHUwMDBiLl81XHUwMDA30/byXG5cdTAwMTZcdTAwMWS+Lza6l37BXHUwMDE1J7dHSe/TZeVd+aa37PWqO1x1MDAxONRm8YBGNVx1MDAxZMFMltems8mo3z7vtmbX2Pda+X2t1miG3d9fnozuOtfD9nS6Umk0bkbdWYxljN2XXHUwMDFhXHUwMDE5/ONgWbKAb0dcInNcdTAwMGJV8dha78ejwWiCvf/bXHUwMDE181wixpbdXzajflx1MDAwN8YwbN3fM5s0h9Nxc1x1MDAwMmuyvG9u5yUybV+3u53rXHUwMDE5XHUwMDE2OplcdTAwMGXbJFxc5XmeKz3vvlx1MDAxYztcdTAwMTmXWrTK/71cdTAwMTTopHnTLmGF4d1gkFx1MDAxNcqwZYWSasNSXHUwMDFmpC3513JcdTAwMTZ4fzGjR8tcdTAwMWXuxq2mWW/uMsWY0lx1MDAxYXRiqVx1MDAxMYPusL/e/WBcdTAwMTT1lyryS6avx6mm5+9UTe1pVzFH7a+a/cZcIrp8v4h6kXvre72TyvlX/2SHal43o+u7SfvRyrmm0s/XTf5cYtXkbfznQdX8t7bfjtpXm2qpxX5qyVx1MDAxNVx1MDAxM9JjXFyK5yvmyoVcclxyvNfapf5m1GbWXiyNK7PIV1x1MDAwM2dwIc/0h1KxOTr/NFxcuMVx6/D+vn/9fXuzpnLYOnPvbryrd1+/nFWvb78lRfeDv9pL2n9zMlx1MDAxOc0z7drfXHUwMDFlMFx1MDAxYuVKMJ2XMpuV+Wcshlx1MDAwYneXyUjXV64ruNjbYrZcdTAwMGLzrVuM8nLCXHUwMDE3zJMu6qqS3ppcdTAwMDHpZ1x1MDAxOdDVVeRH/qZcdTAwMDEpIXNcblBJXG7NfS250Jv2JPWGOUnOXd/X3Hltc3pJzVxcjmo0nNW6SZv82krp++ZNd1x1MDAxMK8sXCKpLIjwvDtsjebTg+J3XHUwMDE421x1MDAwMUh2XHUwMDAwLmA0Ofj38+Lxf1x1MDAxY67cnlx1MDAxZnQ7qNWHXHUwMDEx3NqerCj8rFx1MDAwYkzo/obZaLy8XHUwMDFhwVx1MDAwMJrdYXtS2lx1MDAwN/hHk26nO2xcdTAwMGXCx41cdTAwMGbE1P6YrizPZdb7sjlt41WUin6689PeeuG98/O0o1x1MDAxY/hZav6PTFlcdTAwMDdnQYddd4qT8PxCeOMrT/WLL8rLXtyQlVp1feKVXFxcdTAwMWZXW1xcn8dyLPuTmba1XFzX5UK5Wry65T7NXHUwMDExuu3rr/xqUFx1MDAxOF+wj81xpV793HJq+zrCi9OucEN99vX9Vf5jrdWdl8pcdTAwMTen+znCXHUwMDA321VcdTAwMWbz8uvIu1xyotJnp1xuTVx1MDAwZlx1MDAxN+O7P5aDVbutkmvH913leHtb5fZFettW6YmcXHUwMDAz4lx1MDAxNkK4Lng7JleMVDI39yxcdTAwMDf7YPCkVc7l4C61UkpK7atNw1x1MDAxNZs+VivpcN+T6rUt9dV9LFspfcDH5jsr8nucL73ptlpZl7TmTn/gStbd6dpQ9nKb3Hu62+Rsdz5cdTAwMDNCXHUwMDE3XHUwMDBmXCIo8Vxiv9n7fOq3XHUwMDE2w3ff2HBcdTAwMWP2jz52L4aTt0+B1zynep7nvLpqR/5cdTAwMTbOK9ial1xcSv7eXHUwMDFlubPzntQ+ucu1z332XHUwMDAyuY6neNJnu6ZcdTAwMWQu70dcdTAwMWX6tuU0XHUwMDBi4Vx0c+ad76fTXjSdV4tcdTAwMWb39aTnPN9cdTAwMWFPumr2/e7seFqdNFx1MDAxNpWv7lx1MDAxZsuT+rvtVCvf44+JVLfL8k07UiDxOVx1MDAxN+1BM19cdTAwMGKIWtWazT4vTt3JdpmX077vXHUwMDBi34N+XSb5ps3qjbSPYK7nMOXIP36curdcdTAwMGY18d/JqHPw2/D4ujlcdTAwMWO2XHUwMDA309dcYk9/4GLW/elyWJuD2su5Kvkkc+WSrZfe26viQkvvMcw3md6MP6n2xew2jM5EsV67Kc8rb9xgnVWvKpmz1vejdlx0dlsosFxcz5GeXHUwMDBmXHUwMDFkQkixLZEkNlxm1NXScYB8/+HtM5NcdPuBfVx1MDAxZVx1MDAxZLxcdTAwMWZN5s1Jq90yuZpd1jloX82eTHdXhr9ui1x1MDAwZlxyYT+iq1x1MDAxZbRF47q3XHUwMDE5o5NcdTAwMTH0mjVCSIb5IU/sb41cdTAwMGaTnzdpjUqsWaN4XHUwMDE2x30w7HS2JIi2uEjtuiB2+eo09lVMcDprTmbvusNWd9g5XFzZNLTby/tcdTAwMDR/OOfmeFx1MDAwNaDIjqM7XHUwMDFjOLNFy23H9rC1R5dcdTAwMGb6x8d2OWhOZ8ejm5su7lwif1x1MDAxOXWHs3VcdTAwMDGRJPJoedft5sYywZCz10Bxumuh6Fx1MDAxOFx1MDAxYl2NN5a/XHUwMDFkXHUwMDFjZIZ5cD++XGZcdTAwMWRfvfvI2XX/L9nPXVx1MDAwMNK9aXa2RsnC2blPXHUwMDA0XHUwMDExsutKl+9cdTAwMGZcdTAwMWan/b5buLr7mP9yfl4+KVQm74ad6Vx1MDAwZfh4M0Gyu7azKnwnXHUwMDA39lx1MDAwYqR4XHUwMDE3jmzFiMd4diHcnPZ8XHUwMDFmQEK6wMH1lvyV0jnNXd/zXHUwMDFkx0WeniVcdTAwMTk2Xlx1MDAwNqLlXGIlMiz991x1MDAwNlx1MDAxYVx1MDAwZcOX0lnGZ49cdTAwMDOaXHUwMDE52ebhtPm9vbqdaEZ7yOVlUzZbrVx1MDAxNpftK+bwyPectlx1MDAxM7FWpIVoN4XQ2mGijSdcdTAwMTEuryBO9Jyo5V4y1mxrz+HMkZdtXHUwMDExee1Lr+X4TdG+dLSnXFzelpFcdTAwMTBRxCOZUT4gXHUwMDAy7Vx1MDAxNVPlS3Pje5nYTlx1MDAxZi13b+BoxcBXSLV/gPtwRv5NemiH7e+hn3uqZtuhms2zXHUwMDBi4J1cdTAwMWQtpPp5JFx1MDAxOVxyh7mCP9FwXsRD3/vGLS70YVx1MDAwZr06yj+WI/We5UdcdTAwMWbOODu7XHLdXHUwMDA3PNLsXHUwMDExXHUwMDFitXzQKdRcdTAwMWH+LC71mf7ySVxcRVdcdTAwMWZcbm/dl1x1MDAxZenf6ZjSvqfnuFx1MDAwNnBljnDe6O5sIJzJ9PRcdTAwMGI/mSfjJpvPXHUwMDFhvUpcXPhcdTAwMWSOKT3Y7uvnlJer8VrHn/ydJ1x1MDAwNpWWPjArtj+t3b5Ib91cdTAwMTRBysBjXZir72i5sUH7WuefuC9zWmqfSV8yXHUwMDA3eLSzaaib559cdTAwMWOmfaBxP31n9jGKuVx1MDAxY9VzTj9cdTAwMWRcdTAwMGa6z9iifSif/Fx1MDAwM1x1MDAwZrLruNP6gF79fFx1MDAxM3d3hqDcXHUwMDE3rpCOXHUwMDE0+5/uvS7UhF//vuifyHKiQ35ye128ffvGupZTfts7tVx1MDAxZf5w/ZN86s/ap42q0fi4eXJdfVx1MDAxN9WKpyfvRsqvfXmLvm+3PYEl+Y5Sjzgsv33SbzrePFJcXOWE78NMfaZcXC97qPbt7ajCXHUwMDAwXHUwMDE13P3qx+hf3fO9uf3UXHUwMDFmeILfez+1PVx1MDAxOHTH0+0nfMXuPVVHaDxI7u1PV5tnXnl+O/lcdTAwMTZ8/jprXHUwMDFlXYxmxcqs8cZN1nVzvqtcXPiBKFn5S2vA+kfOs5zhwydcdFx1MDAxObJVz4PQXFxcdM6cralYJ6c5mIjE4yhKic1MrM+0djzP2b7lc+9cIlx1MDAwZXuyq49j76hU07Put8/v+eko8VNcdTAwMTfy+1x1MDAxOLsrfdf1spr9XHUwMDFjXHUwMDFmRKq/TaNlXHUwMDA2UNZzIVxceFr7j1x0wG6+Xfrt6qBXzLvVOPlyXHUwMDFk9T6M3rhGa57TXHUwMDFhXHUwMDAyIFx1MDAxNyWOO/Krx3qOOMCI63jM40ox7WZcXPJTfFLUbqlWc1x1MDAwYt/LKdd3XHUwMDE5/Cek9Dzlbmo3hInS81x1MDAxZF/TXHQklbnlXrtcdTAwMDV3MGG5ne+9hnZvPqoobMnTXHUwMDFlVXy00mdcdTAwMTZjJdm6nrn8fXKiK9dedltxp4Lgz4ZqLJv7Jfv5aHRcdTAwMTBcdTAwMTm+s3GGiHnS8aW3f6p0Pp2c5kv54um19L5cZsaFfvx1vivkezPwIHOuI3zJXVxybJHL1eRcZnglpkFnJVBJ4TncXVx1MDAxYthcdTAwMGKBg8hJXHUwMDAxTk8x7nFXXGJ/XHUwMDBiOkiFKiCBRHtcXLjZmO8+XHUwMDE2XHUwMDE0a8v1XHUwMDE3OFx1MDAxY/w5wGG3fuDPhma8XHUwMDE4OOw+kiBcdTAwMDCoPC2yT1x1MDAxZP9cYlx1MDAxY44uR065KuKzwuyCXHUwMDBm9c1wfOUs3jg4OCznQPCq8XlQhY/XrFx1MDAwNrBK5zxYXHUwMDEw7eM16ew+ffhcdTAwMWNw4H6O+b6SjDNcdTAwMTfIrdyWxuU5X7lA9YBcdTAwMWL7XFxv5olcdTAwMDTnysNnbv5iXHUwMDBlfzpwONqpIPizoVx1MDAxYS9cdTAwMDVcdTAwMGUyXHUwMDEzoG081eNoMFx1MDAwN/6It5REo+B40Vx1MDAxNO9PiidHt83PrFxca47CN1x1MDAwZVx1MDAwZfjcnVx1MDAwYmGox1x1MDAxZFx1MDAwZuLOTDLLbOvkmFx1MDAwN4DtK8/X2s08W/GizMGHiFg4iiuBz75qtoU5wEh8Jlx1MDAxY18xX1xuT7pcdTAwMWLMQTlwxc1cdTAwMWVP/Vx1MDAwYlx1MDAxY1x1MDAwZf5cdTAwMWPgsFs/8OdoQzVeXG5cdTAwMWRcdTAwMTTfeVx1MDAxYVx1MDAxYdg2XHUwMDA3qPJcdTAwMWbxLJF/Mr7uLj5cdTAwMTU6yfHk4lp8nFx1MDAwNoWLN1x1MDAwZVx1MDAwZVrkXFzBPFxiKITjaCX0WtZB5EDsTHHPUcrZfcLxeeDAc1x1MDAxY1x1MDAxNp8xkLjyXHUwMDE5XHUwMDA0MpvgIHRcdTAwMGVcdTAwMTgjaFx1MDAwMPc5fIjlqlhwkFx1MDAxMHZy0J+/wOHPXHUwMDA3XHUwMDBlO/WDrq5rxiOxYecxTOeBJ/Y9rYCneI94bunhszdvdJt5bY/5Wccwd26DyW2v0Vx1MDAwMFNcdTAwMDa2KFx1MDAwNFx1MDAxM1Jqlt3NsPbue1x1MDAwMlx1MDAxZnFcdTAwMTJ/zFx1MDAxMyB7W+yuw5pcdTAwMGa/muZgeVjziOWYXHUwMDBiZiGX/1eZ28z5TfKvruu7XHUwMDE4RSq+iWN/sDObXHUwMDE5lcJcdTAwMWZQJUnPXHUwMDA1ezA3Lj3mPbaBdW18JMbsfCeI2Fx1MDAxZJwwobmSPts/rdm7atyMep9O370v1D5/r7du56z77a1DzFx1MDAxMXdkjnHugG6CbFx1MDAxZClXXHUwMDE5XGJEhDlHSVx1MDAwZWjrXG7pSv68XHUwMDAw5VJcXInLy23ZXHUwMDBilVx1MDAxM1p7roJcdTAwMTG4nr/tXHUwMDE0WvaITbrToZiLj1r89Ee3nrtcdTAwMWK//9OTNbDlg/u97+lvw2ZcdTAwMTSNJlxiV1x1MDAwN7PRwfTuclx1MDAxYU2641x1MDAxOSr4St1cdTAwMTfZo3/wocqnjGyvjXr58MOWu6zbyTjM9bykK4Bzc70/f7jmUZXdzqS6/no7+Fx1MDAxNnqjdzzb61tcZi5cdTAwMWOeg4DN85a1yaDB0PBlkGJtXHUwMDFjL3OaXHUwMDE0YshcdTAwMWNcdTAwMTgkvr7P3fL8s+/ktMt94IvKdbxskjKlXHUwMDE1XHUwMDE0XGZl5/ZcdTAwMTOe9MCtnGc/XHUwMDBljTtCvnYx8atcdTAwMWM3s1+0Yt/L4tS+/1m9a0/ik+509n9/XHUwMDFi4lx1MDAxNVNwUGr912+H7LfDgy/N2TX8mlx1MDAxZo9cdTAwMDdgtmhOv1x1MDAxZNpb6fZaXHUwMDFi33u3/bb/889fzeXdXHUwMDE1au3oblx1MDAwMiq2792zu/Get8bTWftmy73//JVmXGLf7G80+ac9XHUwMDEz/lTs+kvq61JfR+ZtwOw/XHKYs1x1MDAwZpmsP8PquVpwnnGHP1x1MDAwMuZcdTAwMTN56pSCXHUwMDBmp9+q09H09rzsXHUwMDE26sDc3zQwXHUwMDFmrb8hUbLXXHTtXHUwMDAwbpHDXCKmettcdTAwMDHZ2+BUXHUwMDAyxu/SK1j//+FUR1x1MDAwN1mDXHUwMDFkXHUwMDFlXHUwMDFk3Jsj/m4siErB7J6GS896V8VTXHUwMDA2t1x1MDAxN7Fyn2a/WfXdePM8vl5T+I8w4Na7u+i6VTy+PftwcXtWbPd619X6W1x1MDAwZptcdTAwMWM/h4dvXHUwMDFjrfBp4My7m81ZMSBBmL924V/OVfY9/C/6UFx1MDAxZMfDkNBcdTAwMTMsiFx1MDAxMr6TydI89FpFXzLFgYb9xFfO+MKX6mmPoT/pXGLz8Wh41e2A5uxcdTAwMTMgvVx1MDAxMsX40Vx1MDAxOF7iXHUwMDA1i7vfO1x1MDAwM6x2ZzDEtPCY46r9o6HFh3lt9JmfXFyctG5L42+TLv/Wrb51mz3K8lx1MDAwZUqovlJGVWzLqG6++klpXHUwMDA10CF+/qvZXjeF+kd++FxcrOYhxWNcdTAwMWY/322PbubN1Fx1MDAxYu8j9rj0ga7t70NcdTAwMWZ+XHUwMDAy+I3a48Zr2X6qNXLX833NPP5Tea8vXHUwMDFk76lvZ9nnJVx1MDAxM7w/XHUwMDFida+GpWDezVx1MDAxN2eBmo6/dZeqcJDZt+A5h2tfO1xc4b5cdTAwMDVwXHUwMDE4kbnLbFt4OVx1MDAxZuDL48z1mFx1MDAwNJ+u7Fxyf8K3UFx1MDAxYz1cdTAwMTdcdHZxaf3Aw7T4pm7gmO7+OHBbjy6C6oeTXHUwMDBm58fOhXvrNL35h7f4MG2OeVx1MDAxYYJcdTAwMDTlu77jrMb7xlNrmVx1MDAxM3hcdTAwMWNccpktXHUwMDE3Sq49XHUwMDExyHiOcd/38HApXHUwMDEz3H9eMnPnpoTn5ZjkXHUwMDFlIDFnUmdcdTAwMGZTP1x1MDAwNCT0jnXvT/CI4P5cdTAwMDF0cXh3057AXHUwMDEwVrjtazwl+CDF/uEwXuLdjju3XHUwMDFi/N1RMeOgqj5/XHUwMDA0w35cdTAwMTio34wlOznuMzBmpjzNVTaks3asc9xcdTAwMDHXquFcdTAwMWbpe2r1QUHh8ZzCxyXXh/gy9iuYXHUwMDAzKMI9qSV8KE9t+7NcdTAwMDNb3lx1MDAwN8lcdTAwMWPmrtz9XHUwMDEzXHUwMDFll3/dd7r4gqnfXHUwMDBmXHUwMDFkTtvT8WjYOph3Z9c/XHUwMDE3IPZcdTAwMTnJ677/VTk7eb9cdTAwMTK+XHUwMDA33v5cdTAwMTEnXHUwMDBlvOrFl3Pv+JyXToJ3t1x1MDAxN6Orm9P4XHKCxFx1MDAwZsJw9XtcdTAwMTL/TXN3lMZHZX66t3azXHUwMDFh+FdcdTAwMTSeJdtq1/3Pot6C76berudJzlx1MDAxZZNcdTAwMTJcdTAwMWJ8LZ/Mx3JUvlx1MDAxZFx1MDAxNOP5t+ZR8uXTy/5JoFf4XHUwMDAzqsBtc1x1MDAxMORcdTAwMDHP3vhzWWSZyreJ7OdcdTAwMTjow39WVTs5x0WOvWmrW1x1MDAwZfzg6XOg5K//VyxcdTAwMWawVodDYPAka32S9zzvXHUwMDBlT4OD793mwXktyJd/XHUwMDFi/nutkv9yMFx1MDAwMpU9+NyeXFy2J6PpwWhy8DFcZr/UXuPv8D3oUZ86ukdcdTAwMWT8+cVCw2FzPK7NYDVcdTAwMGXTXGbH4fdue/5u61x1MDAwMVx1MDAxNfxBVkSwQC+pXZ5cdTAwMWF//TfVLlMwhzfdm3aYfa/zr9Pvnb8tblx1MDAwNodrXHUwMDEw8vu9Plx1MDAxNzS6WT89IVSBX/+xMqz/xFx1MDAxNXDU3798LIuL+J26PF/cRVx06zY/nrKoMPp+XCJbslx1MDAxNWtcdTAwMTnE+nt0XHUwMDEzfVx1MDAwZnr5eXDsJ62bqFv62Fx1MDAxYV98PFx1MDAxZH2plZJymO+WPlxcXHUwMDBmmuetUavAuuVcdTAwMDS+f7xcdTAwMThffG1cdTAwMWRfyo5f6uU7wXFcdTAwMWXv69C1XHUwMDBmXHUwMDE348tcdTAwMGZzv3Sjv1/e1LtfOiMv+vCeNY/f9b/UPpWDXoOVXG5VcdKr8mpSXHUwMDEyQaxYuZZn5S59xuVecFx1MDAxNyTFTrnQuFx1MDAwYsJqXHUwMDA37k9OelxyXHUwMDA1dfhJL2JhoSQqNcWDbj6BzzhgXHUwMDAx1OnfVVxu/U6QdOCzXHUwMDA0daI5tC9LhUCd9IrQX0lcdTAwMDbHSlx1MDAwNTGMM1Yy6M/jSqFcYv1cdTAwMDRwb1x1MDAxZPq5KFx1MDAwNL3OXHUwMDAy2l+Uj2FcZsdKQP9cdTAwMDLqqaCmdJBEcF/1LihcdTAwMDRzXHUwMDFjI9athFiGY1x1MDAxZJxcdTAwMDdhXHUwMDA0185sXHUwMDFifei3XGLzi1S50OmYso6Aelx1MDAwYpgjXHUwMDBmkjyz7Yoytlx1MDAxYsI8k2pcXKlcdTAwMDfUblx1MDAxOeeBZWGd41honL2AmzbznOpcdTAwMWUrXY6pvXm53olB9nfl3nvov1x1MDAwZfNcdTAwMGWY7YvGiteCtTahXHUwMDBmXHUwMDE4fz4xbYJcdTAwMDR7XHUwMDAzqFvVNP/VcTKQsVxiTJmsXHUwMDE0qmqlLIY+zlx1MDAxYSgvkGlA7ZZ7RZJVJezgXHUwMDFhmbKkiOOG9SsllbDRMX3157BcdTAwMWVxuaag/2hcdTAwMDG6wGFe80qNylx1MDAwNKw9ylx1MDAxZsuScqFO61ROcG1xjo2FaS+Ka/BcdONcdTAwMTBBfVx1MDAwZXrQXHUwMDAw+TXMvSSPhlx1MDAwNJnZe6mOgHthLtSHpvFhnVx1MDAwNNdcdNfhU1x1MDAwMJ/Qflx1MDAxZuZcdTAwMWXEsG5cdOnoseJcdTAwMTXQcdDVmORcdTAwMTei/FDfXHUwMDAy+KQxwXxcdTAwMWEgz4CBPHloZLRcYoxea2iDVVBGvVx1MDAwNuh1XHUwMDA0YywmZlx1MDAxZDp3ZVqHKugprLWRjTK6i59ccnnWq3Nbn8Gac1x1MDAxODeMuVx1MDAxZdM6wLjKSb1TXHUwMDBlYb5hUdO8sM1cdTAwMDTHUkf5zMtcdMpcdTAwMDHb6nNT1tFGRrhcdTAwMDYl1Fx1MDAxMV5O16lcdTAwMTBBW1x1MDAxNyWjs3nsXHUwMDE39TRcdTAwMDG9gfKG1eW6XFxth+yG27HJoEBrSXaD65ZcdTAwMWRcdTAwMWLYJuiiKVx1MDAwM1mQfizLzs5RNkFyinZcdTAwMTRcdTAwMWJdr+L6yaVcdTAwMWT1U6xQgFepXHUwMDFkyTLYXCLiXHUwMDA1YMfSjtIywI17O1wiPaySztu6c9teUi6CXHUwMDFkJSXAj/dBXHUwMDE2o867pc7FzWB6XHTYV0qKcVx1MDAxMJZcdTAwMTZBt/R9XHUwMDAz15I86qVM7Vx1MDAxNPRSo94gPlXI3lwilbVhwjBjw1xmrsmVMmNXKM852lx1MDAxNdYvh4GVZVx1MDAxNKPdLNusY5uoXHUwMDBmpj9cXIcu1uskQVx1MDAwMXGhVYCxgexKMcjbXFxcdTAwMDPsXGZQRr0o2+ZKWVD4tMQ1qp/OrapcdLeWbaZYY/uzmFY4a5a6726a54sp+JFcdTAwMWXJrVeMS13vb8e9xbzx9XRU+lD1S31cdTAwMTajXHUwMDFkXHUwMDA1YVx1MDAxMXVcdTAwMGbWnuxuXHUwMDBla4bz14A5XHUwMDFkU1afl7umXGZwXHUwMDE4sSFcdLpcbuuaOSRcclx1MDAwNnqXkN71iqasV2K49rDuiFx1MDAxZFx1MDAwYqO3gLWkT1x1MDAwMeqytZOiXHUwMDA2m8V5wFx1MDAxYYCPXHUwMDAwzIG28Dv0XHUwMDEzgP/poL4sSE9iwlx1MDAwMVxytlx1MDAxZOM8y8d0PyuDT6HvKH/Qwfvfl/ZKuFpcdFdtgu4r5OWqvaKcS/GqnVx1MDAxNeH3vkjtNcA2sP1+J1x1MDAwZdBuXG7XUC9cdTAwMGb1Oov7e1D/wW6xP9BcdTAwMTeWloE/W8NcdTAwMDesV1RUXHUwMDBmdTDso3znuK6V45U5LMvOXHUwMDFhizLoNrWH8sR5JFx1MDAwMWCS7Vx1MDAwM/Df6otcbmhccrGPQFqdXHUwMDA3rCshLmJ7OFYsW1x1MDAwMFx1MDAwZTDbh0LMXHRcYnPyiFx1MDAwMWQ7NZQh+PFyMaD5g49I7W1RTqpWRlWW+kawXHUwMDBms26IS73A6CXgM60t6lbYsf43ist2PVx1MDAwMVx1MDAxN2PTZl1cdTAwMTjcoTkwU3ZccthcdTAwMTCgj4V7XHUwMDAynI8mnVx1MDAwM76ANoXjJlx1MDAxOSd5kDf0l6BM+lx1MDAxZFOnszB1SshhXHUwMDEyslX0oShDuFx1MDAxZvRhVYZY1iuuyZDama/JXHUwMDEw29KV2opcZtFcdTAwMGVi8pskQ9L1hZUhg/tcdTAwMTfEm8Beg6RPfZRMecpT0nZcdTAwMTjxppSn9PqEr2XEUvCpq2OrQlx1MDAxZkXLKaLEyO6+7N6PXHUwMDA16Fx1MDAxN9f8XHUwMDE44jD40DU/RjJcXLOLKmLsulx1MDAxZsP10Es/XHUwMDA2c1wirEQ/hrZbXFzsjeFhXHUwMDAzcY4tMbyIPCGBNVpcdTAwMTiemM/wsGJMumjlXHUwMDA1Y2e2TJRTXTO8boF8XGJ8m61bT0heYVx0ucIqV1xclqHO87NcdTAwMWXyllx1MDAwMHCN2kXsMdyogHKjMob+XHUwMDFmx1Yp1FFupi/iXCIlXHUwMDFjJyO5Ubtoj1hcdTAwMDacXHUwMDFl5Vx1MDAxNmLbRcNcdTAwMTFcdTAwMTHXjvNmjsR1ceynJZAjri9gYVx1MDAxMXVbIHaZazh+vNa3bYLNhVQmcb1pnHB/kKB+4nfgXHUwMDEwPVO3gvaNfSXIg5B/I3ZFqPOrZcnpOXCCgmmzavFcbvhcdTAwMWLyLSqrJ6t4VTTcvpf6g7xcZlD20GYlLGYxcIFxXHUwMDAyrFx1MDAwZupcdTAwMTHVQ25cdTAwMTVcdTAwMTgsXVx1MDAxOE5cdTAwMDY+M0TO1EmsXi2QXHUwMDFmIY/OtkNlvWhVR0PkVVWxNjbkg3zVXHUwMDFmZMqQQ8fIQVx1MDAwMmqzTLHFUi6GV0dW1oj3KGvspyOCVVlcdTAwMTOHtmvKymTDVJZcdTAwMDSF7Nohh0ZcdTAwMWVXXCIuXHUwMDA0ei4oXHUwMDFlwf57XHUwMDE42+R5elxy9TPoWs5M/lx1MDAxNnk5lSXIXHUwMDE3qU3gaShr8LfIUyzX73Dis2EjNjZFXHUwMDFjfG7WL1tcdTAwMTaws57Rd1x1MDAxOD+2K1A/lvFcdTAwMDaVQTxSN/hcdTAwMThcdTAwMDakP9hcdTAwMTeMRa7EMNRuUZiyXCI3Ook23Z9nYlwimmO5V30sT0lQN4lcdTAwMWKF5Vx1MDAwMHhcdTAwMDdydMCXXHUwMDBi/Fx1MDAxZNdcdTAwMWb6Rbwrgb1cdTAwMDRcdNoprC1hXHUwMDFicYakTrFcdTAwMTHhXHUwMDFh2lx1MDAxMdWpY1xci5iubFx1MDAxZE78i7CvLomnYT304Vx1MDAwNlx1MDAwZlx1MDAxN0G8XoZys3W7ecRrXHTxXGbGvivtXHUwMDAxTsRcdTAwMTTDUN2OLYNcdTAwMTmtjFx1MDAwM3lcdTAwMDHVQz+NbXHidVBcdTAwMDf8XHUwMDBifk8qxWD1O7VcdHZ9TPE48q2EbFx1MDAwZeqBXc1hZeB7n2zQyFx1MDAwMHl7YDBcdTAwMWb1J0GdqVx1MDAxM39cdTAwMDS/XHUwMDAy+lx1MDAwNLpcdTAwMGV9WFx1MDAxZlx1MDAxM1vMmmNOXHUwMDAwWkKdV4gvwMHARzViXHUwMDFhb1xmPor0XHUwMDFifWbH9knxXCLaXHUwMDE52DHEiGgziYnprP9EnMb6ccWsXHUwMDE1+VSQZUx5hdjiOs6/1zF+nGLoXHUwMDEyjlx1MDAxOdpcZqyvy+tcdTAwMWG2cUy5iFx1MDAwNO32nn9Q3eguMHZg4vBcdTAwMDTn01hk6i7QXHUwMDFmk1xcidOnPj+vYWxzXHUwMDFhm+VHXHUwMDE18jFUXHUwMDA2uJ76mFx1MDAwZfpcdTAwMTiqXHUwMDFi9FLOXHUwMDA1ukPzzWvkdaasXHUwMDEzk49ZlqHNaeOXqc3FKtejMuDKK36Z+lx1MDAwMbtf5Y/UJuZLMn6ZyvopXHUwMDE3hVx1MDAxOFx1MDAxMv1yx/jlpKiR00G/i0rNxPdcdTAwMTRfUvlcbl+Fepg/6KxiLN3Xl6tcdTAwMThcdTAwMGI86nidr2bKzlx1MDAxYcysXHUwMDBm5kM6XHUwMDE4c6MuXGLKXHUwMDE3XHUwMDAxXHUwMDBmJb+F9lx1MDAwM7hTJm5DdWPQR7CVXHUwMDEy4oW+r096hfXrnPJcdTAwMWRUv4pYzVxiq0BnbX2elqGOoF5TXHUwMDFlKURcXKP6yFx00Y/H5KNcbmRcdTAwMGKCbJw4XHUwMDAzYlx1MDAxOd7XXHUwMDAwXHUwMDE5XHUwMDAxv0/Qj9ehPTNO8IOJrY/5KqpfIb5r6yclU1x1MDAxNp5cdTAwMDVG76raxLVccuCgXHUwMDAxcVBcdTAwMWJTzct9tFx1MDAxOcSEvF1b5PaEU5hcdTAwMGbBXFxcdTAwMDbJ2th3XHUwMDExddre14B48Fx1MDAwMltcdTAwMDPsqy7smiiYXHUwMDA3zlxyeSjoosHNSli1eFKy31FcdTAwMTdwfsijXHUwMDAznFx1MDAxM6uQjuC1/pxiK5J90cZCfUU5IKpcdTAwMTOl+qrLYT6tr2Detn6RXHUwMDE5TMH5XHUwMDE3U91kwI1s/b6yPFSC7jGqj3G39fFwn+H0hVx1MDAwMPXF1of1Rlx1MDAxY0hcdTAwMTD381x1MDAxOCtiffSzOq2P+SDyXHUwMDExSWBwXHUwMDBl27TxaID5L5rTvVx1MDAxZmmGIaxfl2JKVTM6s6C1ID2tS1x1MDAxM39Gmnie0XtcdTAwMWKTRnxpM4SJ2Fx1MDAwNuhz2dpHZ1E2OStcdTAwMDG2h2NBW5OEXHUwMDFiXHUwMDEwb4M9x0v7ikxZ4f055c4wXHUwMDBlpzZcIpnm6MpcdTAwMTRLUVx1MDAxYsrkZXGOdZ22XHUwMDAxMbW0OT5VRjuhXHUwMDFjmcnFgT81fuF+TsQ9JXFCY3tcIi0jO+mmMoCxmXzgwvhQ9HdFwyNcdIfTuKpcdTAwMDRjPS3Y7zZ3V0qxnVnZKLJcdTAwMTUr6/1jgj7m42JjN3mIn4qSZFx1MDAwMDFcdTAwMDHoXHUwMDAy2lx1MDAxOEuvlcw1XHUwMDAx62zy1/Q9b+6jWFx1MDAxNXPYfeAqYMthhDxcdTAwMTF9PCN76VF+XGLrI1x1MDAxN2Wkl8ZPZMtEedCgOFxyuJIpx/xcdTAwMDf6csTL2PZVIC5i4lwi4orYV53bstjWXHUwMDE1ZCtcdTAwMTgv9cgu0/nY+0pcdTAwMTSTmbqEl1D2XHRigj5eW0BcdTAwMWKYb6L4g9pcdTAwMDBcdTAwMWZVwTy0XHUwMDFkT2A5MpaB/aFcdTAwMWVTztdw5P7Cxlx1MDAxZchcdTAwMTmk5chcdTAwMWFj1qBmeYThyNmy+IziWIzfl+XIIyxP1Fx1MDAxNFtcdTAwMTJmXHUwMDExV1winpjpXHUwMDFmY0fLXHUwMDEz+ynXQdy2PLFPe1x1MDAwNoRPXHUwMDE4a9VM3YDwXHUwMDFkMf+slMrCyk+i/My1VE6NmDhcdTAwMWLx7UjbtePEk/E+zE9cdTAwMTaDdI1i0z/wVMw/XHUwMDFifbBjylx1MDAxYr9yX4b63cd4UJCe23LL/cF31GWqJ+WkYTh52Fx1MDAxN/drSliMdUHPXHUwMDExq+1YbZxcdTAwMDCcPJ/Wp1x1MDAxY7Xh9MXM2lMsuVx1MDAwMN3XOH7AaMrfpuUoe8xFXHUwMDA3aV69QDGCppw3xVxiyMWKXHUwMDE0I2Bd8O02RqibnHfY11x1MDAxNjukiVx1MDAwZtLv+UUmNkhzXHUwMDFjaVxcgO2rSrhcdTAwMWFcdTAwMTdg+1x1MDAxOPutxlx1MDAwNWjD9Xg1LsCyksjGXHUwMDA19/mgXHUwMDAyrnVcdTAwMDPz76jnopLuQdA1+lSGn63EXHUwMDE50u5pmDxhgeIxQTFpuFx1MDAxZbtEZp+E8j1cdTAwMWRcdTAwMTPj3ZdRztXGvthmY7FcdTAwMWH7Ylm0WIsvsVx1MDAxZp362TT2XHUwMDA1LrxcdTAwMTmzYllSTWNfnJsg31x1MDAwZbEvya7wycqrodLYl9YsrK60XHUwMDAz/lx1MDAxObnwWuzbXHUwMDA3fVx01semXHSnuiux77JcZnhcdTAwMTnlu/tcdTAwMDG1XHRyI+xcdTAwMDR8R59m+kn6XHUwMDE2YyNdKVx1MDAxOH2hfa5jyt3jPlpi9Fx1MDAwM22havL+YT3tOyaMNfGwsmVcdTAwMTDjmf2BXHUwMDAw46K66Vx1MDAxYuRn+yml+qtcckZSPlOk+lx1MDAwNTFXYu5cdTAwMDPO2Ht/Ly+73zPHXFxMalx1MDAxM+XQ7mWaca/4kv33XHUwMDE2UCbIXHUwMDA3z1x1MDAwMphcdTAwMDPtj1x1MDAwMncomN9cdTAwMWJcdTAwMDLtXHUwMDAyuVx1MDAwZmCx3SdcdTAwMDXcJ0xcdTAwMDHulFRcdTAwMTfWd7CA8szFmOJw4JNYXHUwMDFmsDqhnFxiylx1MDAwN2JcdTAwMDRbX1x1MDAxYTljjFx1MDAxZMS0R4L7QJTbhzJcdTAwMTh7Nalae62bMsA7e1x1MDAxZspcYuW3oHw16l+BcmfIIeE/9HX9xNTPQ1xch/1gfj7CvFx1MDAxMcOcWsXkyjBcdTAwMTeHNo9lksaI/q+O6075XHUwMDBlZe6pk05cdTAwMTj59NGf4n3c7DlWMZ9mx1JcdTAwMDdugZ9cdTAwMWT0f9j2nHJOeC/hI5aB3HpcdTAwMWQzXHUwMDFl4He2LViXyI5cdTAwMTG4NeaUMHZNXHUwMDEwv6k9k1x1MDAwN0E/U+irwKxcdTAwMDXEtshcdTAwMGKKyEdiI/NPXHUwMDAx+e+a3V/uU9xccv6Zcu3M5Fx1MDAwMMF+KWavK7tcdTAwMGatTVx1MDAxZZ3ifVamvW3cm6kziCWwPvjwXHUwMDE0K4vG/qE+jFx1MDAwM2P92KxcdTAwMTnOXHL5LHDzXt9gcVx1MDAwMeLtemC4O/Ep2lx1MDAwM+LIZ4nzhbgvQvlcdTAwMWHAV2pcdTAwMTPXzOx91lx1MDAxMH9cdTAwMDOI3ZBjN2xOXHUwMDEwcSFCPo16rVx1MDAwMttcdTAwMGZcXEOOjvZE/qeaoL1cdTAwMDXE/42PqaNuXHTKl4VpLjEvcW/d7L3Qd+DFJYxcdTAwMTGgPn6C31xu0/qYY8aYJ9I2P7Wo2Pw32lc5KdqcV0R5a9q/NfvKlN+3OfW7wPrMXG7m5I4pt5BQe8jni4H5TutQkjhcdTAwMTezXHUwMDBmjfVcdTAwMDJzXoCuoz5iv/SJOUtcdTAwMTXS+uP5XHUwMDAz3Fx1MDAxZkacMLEnxlx1MDAxZIRLPfJj5O8pziSsq5OfozxcdTAwMWX5ZaxbXHUwMDA1vVx1MDAxY9j6VdRcck78jXJ5ecpcdTAwMTPaNiViJuX36cxcdTAwMDTWhXi8d2Hqgj+HurifPVx1MDAwZij3gX2XOHG2XHUwMDFl5c3T+jBcdTAwMWbEMNxcdTAwMGIvJYavXCLHrGNMJYjfkJ3gvkWEuUEsXHUwMDAzfCmZsth8J1vB/Vx1MDAwM8qVYFt1yykpXHUwMDA3hvpGe+uBOTOxMD6V7ktqhEN1ZXBcItKEgZjfXHSrLMVZ0Fx1MDAxZttuVVUoXHUwMDFmZvadXHUwMDAy039cdTAwMDLYXHUwMDA3vIH2e8l30lx1MDAxY8HmXGJcdTAwMGYpTkdswPp54lx1MDAxMcZvdGhcdTAwMWQqhUFcdTAwMDDYjXktRvlrsFx1MDAxN8IuwjPM6XTIf1FcdTAwMTntLdJeNSPdxXqFhqxcdTAwMTj/pDHeXHUwMDA3e6FzILhm1E9cdTAwMDK+7NjUXHUwMDA3PFdpXFyOOls2eMhsfZBPVZr6IOukY/e1UU+pvkBcdTAwMWZg/ZYmv4b1w0BYOcW4V2PqV5PyvZyKaf1cdTAwMDT1wvokRuNcdTAwMGIxvsd5Xlx1MDAxNOj3QoNymVx1MDAxNGtcdTAwMTM2Y/64n5D/Rb7Xo5xcdTAwMDFiXHUwMDFkYX0lhDhcdTAwMDH30kOMyTB+t3MxZy5w35aZ/XtcXFvMuTcoXHUwMDBmSPzY+Fx1MDAxMGHOhGBcdTAwMWOXp71cdTAwMDXjq1x1MDAwMlx1MDAxM2/iOI6tr6G9kGBhzmwg3vcxh4ffYzNXzINcdTAwMTDWm3pcdTAwMDXkU3hfY25ihXvfundcdTAwMWWYeHKNcrtcIqijvsF8XHUwMDAwzynWpv1cdTAwMWLMXHUwMDAzN1x1MDAxNibOXHUwMDBmMCeTUFx1MDAxZYh8XHLmLOuAXHUwMDEzfY24U6YzP7AuUL+MsT/ZXG7Wx9xJnpvcUNW2XHR8jfa2qrRPY3LJ11x1MDAwMem13bcpJ59cbmQnIFtcdTAwMWJcdTAwMWbgWVx1MDAxZWntStL+PGFiw9paxChcdTAwMTeOZbjnWVxm0HZ0QOOkmFx1MDAwMXRcdTAwMDLWtYc6UUz3XHUwMDFikOOAzmJuPbD3YS4zXHUwMDAyzosxXHUwMDAz8lx1MDAxOIPHgFfQXHUwMDBmxStxXHUwMDA299EvmFx1MDAxOLRcdTAwMTBYX1x1MDAxMSjAXHUwMDBiikFAXsruIcR07oHyx6VFejZcYjBcdTAwMDf0vTM391RFWOig/0M8XHUwMDAzXkG/m3mG5Fx1MDAxYjAuUcg98WyK8cWAl+D3KshLYNzI2XHfXHUwMDAxxrIw9WH8oeE/5lx1MDAxY1x1MDAxOLWpaF/GcFwiUzeE31xmd4qRO5q64P9S7lx1MDAwNHE4zFPROY5CSaacXGI5JcQwuM/ClpwoXHUwMDAyve0wOvtAnIowXHUwMDAw5oRl4Icpjkde0lemrG55TYObeqBDPctTQsqNqjLFobZeXHUwMDE4YWyiSMdiy3tYh+xcdTAwMWZ1XHUwMDBmY2ezXHUwMDA3iffWcW+ak1x1MDAxZSRccsuzwIaQm1OMX7dziYBcdTAwMWKdXHUwMDE1ysZcdTAwMGak3EuZfVx1MDAxOcSDakL5XHUwMDFhklx1MDAwNfKZvDnPZWVcdTAwMTbS+TxcXFx1MDAxM8otXHUwMDE0cF+ujPujdm/B7MXjPVx1MDAxMFdTToV8XHUwMDEw5booblx0+zYvXHUwMDAxPCpM65OO0j6IwVWqz4KwavdLXHUwMDFhXHUwMDE042N9siWyoT7m/1x1MDAxNNlcdTAwMDLmonHvISzN7X0qIFx1MDAxZm72dmifXHUwMDFlz1x1MDAxOYZFVTFcdTAwMTiAeSnAZ8xvYHxVtTZdojwuxVx1MDAxYSansiD/Z3NcdTAwMTmUa8Y1qFx1MDAwN5TvgHWKLW7MXHUwMDAz6oPidlx1MDAxY6vBXHUwMDE5Olx1MDAwYlx1MDAxMGgrL8KX/XNY+Vx1MDAwNGVcdTAwMDT2yixcdTAwMGZJMF9ccmOBmCY9J1GcIz+i/Ks56yhoPTH/SXLGc5jAK8NcdTAwMGJbn/KfeH5TmbNcdTAwMTVUZu9cdTAwMDPfRzqcLasnZ7iPXHUwMDAyMXBQSMeQR5tWlDtf3o+yUeSzk0Y6LsrL4lx1MDAxZVx1MDAwYnJs2lOnvCzmcDBcdTAwMTeBc6/a+kWMd+jcJ9qzrb/AvC/uR1x1MDAwMZYg/6e5XHUwMDA21Fx1MDAwZoyBdDRP3Fxy+sY4XHUwMDFldIPOLcwtXHUwMDE3lOTvQuQjVGb8JMXcJYr5cTygXHUwMDFiMN5cYnOhzNiikTusoaRcdTAwMWMt6J6tj3PD+mjXtPdE9Vx1MDAxM7Rp3K/GMzSpTDH/gmXgXHUwMDFmwmsrN8qNr49cdTAwMTPPhGbnw0iWx1RcdTAwMDbrgXE9lcnymnxcdTAwMTBcdTAwMTMwxqE9rFx1MDAxMM/Y4Hhon2Jh5NuBXHUwMDE4a2DrXHUwMDE3hWlzuT6EKcBb6IxcIuV2bFx1MDAxOclcdTAwMTfPO2BcdTAwMWXH6Fx1MDAwMM7fXlx1MDAxMyZfTbhNZUZPXHUwMDAw83slO/e+Ji6Hck5cdTAwMTCbaZ6K4j3S0XTNo1SX0/UmbonfXHUwMDFmspFcdTAwMTNZXHUwMDE2XHUwMDE3ifqvzJn5STt9TMDxlcI3/zBH8ftcdTAwMDPs//rlX/9cdTAwMGL9XHUwMDA1SWIifQ==Windows Event Collector (WEC) Agent Event Log Channels - Forwarded Events Windows Client Event Log Channels Send Event Logs according to subscription <QueryList> <Query Id="0" Path="Application"> <Select Path="Application">*</Select> <Select Path="Security">*</Select> <Select Path="Setup">*</Select> <Select Path="System">*</Select> </Query> </QueryList> - Application - Security - System - Setup Configure subscription Enumerate subscriptions Respond with subscriptions WinRM via WSMAN (SOAP over Kerberos or HTTPS)
On the WEC, you typically ship the collected logs away using a third-party
agent, as described above. Read below on using
OpenWEC as an agent-free alternative.
The following configuration steps are heavily inspired by
SEKOIA 's
instructions.
Setup the Window Event Collector (WEC) We begin with setting up the WEC prior to connecting the client to it.
Setup Windows Remote Management (WinRM) Configure WinRM as follows:
winrm qc - q
The argument qc
stands for "quick configuration" to perform a basic
configuration of WinRM with default settings. This configuration includes
starting the WinRM service, setting it to start automatically with the system,
creating a listener on HTTP to accept WS-Management protocol requests, and
configuring the Windows Firewall to allow WinRM traffic.
The -q
flag means "quiet mode" to avoid prompting you for any input or
confirmation, i.e., it makes the process non-interactive.
This command sets up WinRM to listen on HTTP, which is not encrypted. For a
secure production environment, it's advisable to configure WinRM to use HTTPS,
which requires additional steps, including setting up an appropriate server
certificate for encryption.
Enable the Event Collector service Use the wecutil
command to perform the necessary steps to set up the Windows
Event Collector service:
wecutil qc /q
As above, qc
stands for "quick configuration" and /q
for "quiet". The setup
includes actions such as configuring the service to start automatically and
ensuring that the service is in a state ready to create and manage event
subscriptions.
Create a subscription file Create a new file with the following contents:
DC_SUBSCRIPTION.xml <? xml version = "1.0" encoding = "UTF-8" ?>
< Subscription xmlns = "http://schemas.microsoft.com/2006/03/windows/events/subscription" >
<!-- Name of subscription -->
< SubscriptionId >DC_SUBSCRIPTION</ SubscriptionId >
<!-- Push mode (DC to WEC) -->
< SubscriptionType >SourceInitiated</ SubscriptionType >
< Description >Source Initiated Subscription from DC_SUBSCRIPTION</ Description >
<!-- Subscription is active -->
< Enabled >true</ Enabled >
< Uri >http://schemas.microsoft.com/wbem/wsman/1/windows/EventLog</ Uri >
<!-- This mode ensures that events are delivered with minimal delay -->
<!-- It is an appropriate choice if you are collecting alerts or critical events -->
<!-- It uses push delivery mode and sets a batch timeout of 30 seconds -->
< ConfigurationMode >MinLatency</ ConfigurationMode >
<!-- Event log to retrieved -->
< Query >
<![CDATA[
<QueryList>
<Query Id="0">
<Select Path="Application">*</Select>
<Select Path="Security">*</Select>
<Select Path="System">*</Select>
</Query>
</QueryList>
]]>
</ Query >
<!-- Collect events generated since the subscription (not oldest) -->
< ReadExistingEvents >false</ ReadExistingEvents >
<!-- Protocol and port used (DC to WEC) -->
< TransportName >http</ TransportName >
<!-- Mandatory value (https://www-01.ibm.com/support/docview.wss?crawler=1&uid=swg1IV71375) -->
< ContentFormat >RenderedText</ ContentFormat >
< Locale Language = "en-US" />
<!-- Target Event log on WEC -->
< LogFile >ForwardedEvents</ LogFile >
<!-- Define which domain computers are allowed or not to initiate subscriptions -->
<!-- This exemple grants members of the Domain Computers domain group, as well as the local Network Service group (for local forwarder) -->
< AllowedSourceDomainComputers >O:NSG:NSD:(A;;GA;;;DC)(A;;GA;;;NS)</ AllowedSourceDomainComputers >
</ Subscription >
Key elements are:
SubscriptionId
: Give a unique name to your subscription.SubscriptionType
: Choose between SourceInitiated
(push) or CollectorInitiated
(pull).Description
: Provide a meaningful description.Query
: Modify the event log query to specify which events to collect.LogFile
: Define the destination log file on the collector.AllowedSourceDomainComputers
: Adjust the SDDL string to specify which computers can forward events.There are several GitHub repositories out there with ideas for additional subscriptions.
Activate the subscription Now that the collector is running, activate the subscription:
wecutil cs "<FILE_PATH>\DC_SUBSCRIPTION.xml"
The cs
subcommand stands for "create subscription" and creates a subscription
according to the file passed as the next argument.
Verify the subscription Finally, verify that the subscription is active:
wecutil gr DC_SUBSCRIPTION
The gr
subcommand stands for "get runtime status" and displays the
subscription status for the ID DC_SUBSCRIPTION
, which corresponds to the
<SubscriptionId>
XML tag in the configuration file.
Setup Windows Event Forwarding (WEF) After you completed the server-side configuration, now configure the machines
that should log to the WEC.
Setup Windows Remote Management (WinRM) Active WinRM as follows:
winrm qc - q \
This step is identical to the WinRM configuration on the WEC.
Change local group policy settings Use the Local Group Policy Editor (gpedit.msc
) to navigate to the Computer
Configuration\Administrative Templates\Windows Components\Event Forwarding
path. Here, you'll need to open the policy named "Configure the server address,
refresh interval, and issuer certificate authority of a target Subscription
Manager."
In the policy settings, enable the policy and click the "Show..." button for
SubscriptionManagers. Enter the server details for your WEC:
Server=http://WEC_FQDN:5985/wsman/SubscriptionManager/WEC,Refresh=60
Replace WEC_FQDN
with the actual FQDN of your WEC.
Apply the local group policy Refresh the Local Group Policy settings and apply the changes by running:
On the WEC, now verify that the machine forwards
events .
Collect logs via OpenWEC Instead of natively running a WEC on a Windows machine, you can also run the
third-party implementation OpenWEC .
eyJ2ZXJzaW9uIjoiMSIsImVuY29kaW5nIjoiYnN0cmluZyIsImNvbXByZXNzZWQiOnRydWUsImVuY29kZWQiOiJ4nO1ba3fbRpL9nl/h4/k4MVx1MDAwN+huvLJnP9BcImzDUYOmXHUwMDA0SqF25+RQIFx1MDAwNfEhUZYok8Cc/PetW91cdTAwMTBcdEpy5MR2tHNGeVBsoPpRXXXrVnXrXz+8ePFyWV6NX/704uV4nVx1MDAwZueT0fVw9fJHtH9cdTAwMWFf30xcdTAwMTaX9Ejw95vF7XXOb54vl1c3P/3jXHUwMDFmw6ur1kaqlS8ujOR4Pr5cdTAwMThfLm/o3f+h7y9e/Iv/vzXW9ThfXHUwMDBlL4v5mFx1MDAwNfjRZjjXkbut6eKSh448XHUwMDE1OdJVzt1cdTAwMGKTm1x1MDAwZVxyt1x1MDAxY4/o6dlwfjPePEHTy9lgnZ++WefTPPhcdTAwMTiF0/3u8S/R/mbUs8l8frgs52Zdw/z89nprTjfL68VsfDxcdTAwMTktzzGvnfY7uZtcdTAwMDVpYCN1vbgtzi/HNzdccpnF1TCfLEte32b6Rlx0P73YtKx33mCJ0NlcdTAwMTl7bzFfXFxj7L+5Y/yzXHUwMDE5/XSYz1xumsLlaPPOOFx1MDAxYefjs807K7tcIrHV7/l4Upwv0ehvXHI2ZsWSwoVcZlx1MDAxZFeKuydcdTAwMTjiKlx1MDAxOfFcdTAwMWX/c6PO6+HFOIHI5e18vq2Ry5HVSOPBKVx1MDAxZcS75rJtMlxys1mO18u7VWxt8tncn5/II+9tXHUwMDEyXHUwMDBmXHUwMDE3x+8v10F8NXp5995vPz7crVx1MDAxMc5GR8HtRXj2+pdcdTAwMGZHvfOPv1Zx8DZqjlKPP7y+Xqye2u/JwURcdTAwMDSZd/TLm7P2u8PRZJWkJ1x1MDAwN0/r1/620evt1WhobNxcclx1MDAxY+U4ke+FkVx1MDAxZt09n08uZ7u6nS/y2cYtftia8D13bOh121x1MDAxM1X0mCe6MvBcdTAwMWNfbpvE77niw7v03F0xiFqhXHUwMDEyjvBcdTAwMDLPXHUwMDBmpVx1MDAxN6mGZ4pItLw/5ZtnZ3mUR/d901x1MDAxNU5LujReqEJfitBcdTAwMTX3XVV69zxVujTjyHP9b+2pnzPOUPpbdvH7xrmZ1eJyeTipxoxNjdY3w4vJvGxsI1stqbB7Nb48jvdeNlx1MDAxZbTnk1x1MDAwMib8MqdcdI+vXHUwMDFi1r2cUMy6e+FiMlx1MDAxYW1cdTAwMDeinEZcdTAwMWJOLsfXyVNcdTAwMDLI4npSTC6H8+yxydDqx+/qXHJzW8LbsoabMZ5isd5n/XNyMSxcdTAwMWVcZpXbXHUwMDAwvuugoZDCU57c6PH3XHUwMDFj9GA2XHUwMDBiOme379pcdTAwMWaOj9P9Tvf69WVx89xcdTAwMWTUc+GgKlx1MDAxMLuOXHUwMDE5tJTvXHUwMDA1hJLm51EvXV5cdTAwMGYvb66G12QnfzCKiqBFcEyeKmWAkTYzufNU5bU8ckxcdTAwMDJtP/DoXHUwMDFkZ+OfteeGyveFXHUwMDEy3mZ539tzXVx1MDAxObpENdS27T7Vc2+Ww+XtXHLv8PDTuFx062a2L115OpTD0WjkyvGZ47t5XHUwMDE0+mM/d0a5J8R4KITn+Y5cdTAwMTgrz4tOz1xc4YZ+PlxuTlx1MDAxZGc49kLfpWBzOlx1MDAxNnk4PlxyR340XHUwMDE041OKgSpwxzJcdTAwMTdcIs/dXFxu2Vwi+fe4QSfubIt+raPrZ13OhORcdTAwMDdcXE5cdTAwMDbuoy7nhU7kXHUwMDEyf1JPdrnPk4Smy+24zl/lcGqHnErxODk9c8LccT7rVlx1MDAwZrpf7VpcdTAwMGbx0/vs1KdcYulcdKn+0phHXGJcdTAwMTA4f9BzrpevJ5ejyWVBXHUwMDBmN0yyzqOeXHUwMDEyhzhK5uyATstcdPxIyM3/5dZbxfBcbpDl2JY7XG77cnw52kyiOe/hzXJvcXExWdKKPywml8vdN3hcdG14zPl4eE+/1PP2M9rxyU7ud4VOm/x/89uLzY7zl7vf//njg2+Hj73+JL//fGZcdTAwMWE97vtkXHUwMDA0YeA7X+D77rzoXHUwMDFjXHUwMDBlomWZzFx1MDAxY+/De3GWn73tPPdw+8p7brmpJ4me+8L/5t5/Z0lflJtq4V/fXHUwMDFjfHD3V9XV0FktXHUwMDA3027Z+Vx1MDAwZblpbe1fXHUwMDExsj7rOI/lkGKLmO34XGZlj0FcdTAwMTDKyH+yyzyszOfuMsrzW4FcdTAwMWZQVkY6l1x1MDAxNC9lw4O+YVx1MDAwZVx1MDAxOcmWRzmrIyPp+L7aYp2fySF9h7JOb4vF/ttnkMdcdTAwMTT4XHUwMDE2q5tcdTAwMTd780mDhnzVRPJ34H43kXxsTl8jn1x1MDAxY8/nk6ubXHUwMDA3Q1x1MDAxY/EosdtcXPsrpVlkQsHT3XV4XHUwMDE0pquP17/qn39ZXHUwMDBlX50slnF3OXje7PZVXHUwMDEwtKJAXHUwMDA19ON4joo2yijZlf9UsPss1/VcdTAwMWP4alx1MDAxODqUP1xiSndcdTAwMWVMI31KIyUl9Z6KaDfE/SwyciiLXG5Df2P729674YFTOfH2yvBVcugtJ7/+/MY9WFRRXHUwMDFkPr6Tk/uR2krL/2T8Yct/yKBJp49cdTAwMTl05HmUlSv36TVMffHraTTuzadxO+iV1YfzfPp28cwt2nNbnkfwT1ZNsZYygmalJGxcdTAwMDVCXHUwMDEys1xyKe9WwvP/jIH/LVx1MDAxZo/UaPhcdTAwMDCba6mAyFx1MDAwNv0npFxmKW+/b9tcdTAwMTQkJYraniM9J1Jbr9zZtnB9olxm0cNM71vY9lYyZu1M2Jbfvo/JP5Yl7iZY3yd1azz7qknbq0dcclx1MDAwND/3TGPT3Vx1MDAwZtufX4xcclwieJScXHUwMDEyNITEXeXTo93q5vqgnbTjg3NcdTAwMTl+mF91ZuUvq4/PXHUwMDFkXHUwMDFiJDFTXHUwMDExSTfg2pVsMtPAaTmejFxiNkJHhL5cdTAwMWLsTOwrYYNoSUFcdTAwMTFPOW7oXHUwMDA2QkRcdTAwMGaAg1SwXHUwMDAwXHUwMDE5evSKXGJcXO9e4Fx1MDAwYkMhfXrh4erpf7Dh/zE2PG5cdTAwMWb4uWdcdTAwMTlfXHJcdTAwMWL8x1x1MDAwZj+9iP6N5Fx1MDAxN1x1MDAxY36+Ol34aU+UR53liXvpXVxcXp3562dcdTAwMGVcdTAwMGW+06KkMfJwnKhcdTAwMDSl6lx1MDAxYq9DXHUwMDBmvtdcbmlDwFx1MDAxYYJA+t+GOLhRy4lcIiVcdTAwMWTXXHSI2cqHMli3XHUwMDE1qYB4XHUwMDFlXHUwMDExY9qXrezaYoNwXUVcdKX7XHUwMDFm4vDvXHUwMDA3XHUwMDBlr1x1MDAxZTVcdTAwMTD83DONr1x1MDAwNVx1MDAwZXIrXHUwMDAy7SZcdTAwMTUoXkTCezo25Fx1MDAwYr23XHUwMDFlijf78f6rj8OfnfRwuMieOTaEouVcdTAwMDeUgoauXHUwMDFmUs6pNrbJZ0Jhy1x0XHSvI1x1MDAxNVKOXHUwMDE1RHJnYl+JOESUXHJcdTAwMGJfuYqIXHUwMDFhbb7zXHUwMDAwcXDDVuRcdTAwMTCUKyeSXCKUwT3ioHx6XHUwMDEyhOL7Jcz/wYbvRVx1MDAxY1x1MDAxZbVcdTAwMGb8vLpnXHUwMDFhX1x1MDAwYlx1MDAxY9RcdTAwMTZRvndMRF5cdTAwMTPIL0GHj9H+1flk/b5TVHvXJ+fi3Y3unDxzdPBEK1x1MDAxME5IXHSF8H1PXHSvWXJwg1YgnchcdTAwMGJd6XnS+XPF70fRwW25OIx3fOGqyKFE5j46XGKvRYyRTMCNXFz6XHUwMDEwm12x6CAp63TJgP6DXHUwMDBl/37o8Kh98NNdy/hCcHj0/kjge7utNTj4jlxmVeipp9/Y+vz54DM9XHUwMDBma55cdTAwMWZ/pqL+hNsjj1x1MDAxZlx1MDAxZqtcdTAwMDeOj11x7/g4XG6F51x1MDAxM1x1MDAxY/+lp11+6Ko/euvqaS7652+VbLU9eofk/9lNkS1cdTAwMWL5I++74ksvlzx2Rq7ko3/x4FL0pEgqtiz390Bheja4WEzfXHUwMDFmvH7TOfz5U3/0ceVMfn3uoPDK9WXLcV1fSFx1MDAxNHl9KXfuc1x1MDAwNrLlK1xciFx1MDAwZVx1MDAwMyFcdTAwMDPp/rmU4lScidPTh8pccqolPC9cZlx1MDAxNM0gXGKjh07M1T1cdTAwMTAhKSfApc6HacJzv4G2dWa+dW/8d87MXHUwMDBmyVlfxJ9oYi/2XHUwMDE3xc3/Xlx1MDAwZfN8cVxyuHmxXFy8uLk9vcmvJ1dLXHUwMDE4eEP26efpy8XVY4fpjVXtnpz/kZk96VRdqj/m3erRiO/h5mJcdTAwMTB4Tz9kXHUwMDE4vb7Nz0fx3sejtydcdTAwMWaP4vF0et7rP3fnXHUwMDE2zZD/jS6MuThAj1x1MDAwMl8pR4nIXHUwMDBmN864xffvu650lOtcdTAwMDV/7Vx1MDAxZkxcdTAwMDRu4P7p6y5Oo/Uzrru3uDybXHUwMDE0ZFx1MDAxOU9x0/n4bPlccpz09+bwJId0wz/GwV21XHUwMDA1lLtcdTAwMDGXTEdQUvp0XHUwMDEyXHUwMDFl9k4+XHUwMDFjh3vHbrKvX388WZxdXHUwMDFjlOPn7pKvtu9tfoVr3F9GxO9FUOErXHUwMDBmJzvf/Fx1MDAwZlxmv8dcdTAwMTXuvyZT/uvYcpP7/mB7eDm8ujpcXJKK79KPl58m49XrXHUwMDA37y/iXHUwMDA35Vx1MDAxMnZl/puRTS3k2//hyCY/enkxuVx1MDAxOGfbf3b1j5tPxd/XXHUwMDE385c7Xv/9/pqFzHTYP9jn6E+//tSY1n9cdTAwMDFcdTAwMGV99eOHd6k4KV+r0+P1bV45k+G7XHUwMDAzJ+8sPu3LkVx1MDAxY5We1KX3Kb/IP+lpe6X3omp0kU+Sd6Ork3dcdTAwMDeLXHUwMDBmh0mVZu1J8vZ8PjxcdTAwMWUtRlx1MDAxZGeSVvT93cnVyS+jvVNZRMm0Xei9Nt4r+Nnbk6vTt6soufA+nV70J1x1MDAxZopFmL9941xm917PPlx1MDAxY75P9XTgJJ2e2J/23F6VXGJdKic9bDvphD/LdKpvdVx1MDAxNVx1MDAxN2lncKuzXkHvV/vTgVwiXHUwMDE5d3+aO1knXHUwMDEx3UPl6km7os9SO5pkZrfdzqzQVUGfXHTJ5CvqXyZcdTAwMWSt9qcxjZdIvaeULmmepZJ6tiq7nZjG0fRun8Y56ehpsab+1+lcdTAwMWXNYU9cdFx1MDAxYV+QnNKHytNVTu/1bnVHrzBHyHYztGGu82Od5fTsyPYxo3FjWl+u0k5RmLZCkNya1ujqqu3YfkWKfjNaZ9Uru33N/aZYXHUwMDA32rK+i7nwPKfaNX22XZbdU15acn+rtF+UpPvbdPqGxu/TurVjx+K54pne6ZPGoPm3K9MnaXA6J9mex+tvztMhXHUwMDFkXHUwMDBibdpkt9NTjbaSxjhcdTAwMWFAX6RTzf2m05h11c1cbuyRaatizJv2L6m62aAwY81WtFx1MDAxZmV6qGj8fE224NK6Vt1Dblx1MDAxM7T30D/aqrTT531KK+wt1jhYm/7y8pA+aVx1MDAxZUL3V2RcdTAwMDdcdTAwMDPS38C8y/pcdTAwMThI0pl9l2VcdTAwMDS9S2vhMTyeXHUwMDFmZCrsXHUwMDEz9uG9pk/qf0Zr1yXtW8U2uqfcLtk42WrJ+sugP9ibpk+eXHUwMDEzrWdA+tRcdTAwMGXp082Mjtba2LVHfThd6Gg6ILvOaY5xZfahuE15XHUwMDFmemSntNdGN8rYLj5cdTAwMDfyaNp3rbxDe+7SvGnO/ZL3geaVVv1cIs1ovVns8brQZ4W59KGfVVpBXHUwMDBm6GvmmrbCMzrCXHUwMDFlJLBcdTAwMTE3rfepk1NfJ4mx2TbGhZ1WZDfUPrC23JfNfthvXFw7N6k7vJfsN9i37bmRb5ItmjbSXHUwMDA128em7ehcdTAwMTi60dVcdTAwMDH8qDS23sP+yY1cdTAwMWbNaqxQhFe1XHUwMDFmyZR8XHUwMDExeEHYsfGjuo1w486P2Fx1MDAwZXts81Z2Zfur0pj8qEpcYj/e6G2MOp4kxcnF/OaUsC+p4lJnyVpPkk/3cK1qwy5l7adkl1x1MDAxZexcdTAwMDb41GV/y9W2XHUwMDBmM4ZcdTAwMTlcdTAwMWZ26JlstFx1MDAxOb+CPlfwK8inmba6zEv4zabPPvqEPZjxsFx1MDAwZlx1MDAxM8hcdTAwMTWV7lx1MDAwMFx1MDAxN0ZcdTAwMWSaXHUwMDFi6S4pSd/mXHUwMDE5YaeGjqb5dp+NNt15v8E1lq/X1vNcdTAwMTi3Nn3WWGPHs5jWOVx1MDAxYSaT11x1MDAxN8Pj9VxyxZEp621cdTAwMWGXyST8+950vVx1MDAxYfxysEje9qJk5pTwI53FsD3ae/a7XHUwMDE17Vx1MDAxOdbvXHUwMDEx5lx1MDAxNKatv0onpo1wXHUwMDE42FDpiYKsWUM1cMjuKra7aWzapomDvad9XHUwMDA3dqyN3Vx1MDAxMtayPWnYsvWT2COfxTpoXHUwMDBmKEZcdTAwMTDmUF/4TuNoij9cdTAwMDXsZc12UjJcdTAwMGV45Nsl1pnu8ftOSjGFv0P/ZIN3v2/8lXG1mzV9gt/rtGXTX6HnpGz6WUy/z0Ttr1x1MDAxYX2g/1lRavhN55zk2iRXrO/egf2T32I8slx1MDAxN6duo3i2g1x1MDAwZpCLXHUwMDE1y8FcdTAwMDazXHUwMDE59LvCvnb3XHUwMDFha9i0XHUwMDFkXHLWKdk291x1MDAwN31iXHUwMDFklSZMsmNcdTAwMTD+W3tRmvdcdTAwMTBjaGltnrAuXHUwMDAxLqI/zFx1MDAxNW1rwlx1MDAwMceOoYA5mjGnXHJcZmDfOYRcdTAwMGUpjqex5vVTjKj9bZ1WPaujnlPHRvJcdTAwMGazb8ClqTZ2SfjMe1x1MDAwYtvKXG5cdTAwMWJ/8zK1+0m4WJo++8LgXHUwMDBlr8ExbeeEXHJcdTAwMWExlt7RWI/HNkd8XHUwMDAxPoV5s46rNumbxqugk1lhZIq1kUnAYSr2VcRQ6JDeJ3to6lx1MDAxMG3TeEeH3M9qR4foy+tcdTAwMWU2dFxiPyg5brJcdTAwMGXZ1tdWh1x1MDAwZb2/Zt5E/qqrXHUwMDE5j5GY9pqn1P04zJtqnjKdMb6mwFKKqc259WiM2HKKvDK6u2u7i2NcdTAwMWFxcSeOXHUwMDAxhymG7sQx1uGOX/SAsbtxXGb74W3iXHUwMDE4rYmxXHUwMDEycVxmvlx1MDAxYq+fjOHZXHUwMDAwOOdsMDxcdTAwMDZPqGiP1oYntrd4WFxcsi1afdHcXHUwMDFk2ybS2tZcZq9bg1x1MDAwZlFss7L9ivWVJeBcbk2uuGmDzbtHU/BcdTAwMTZNuMb9XHUwMDAye1xmN+pAb9zmIP5jbt1OXHUwMDFmejNjMVx1MDAxN0kwT4f1xv3CXHUwMDFm0UacXHUwMDFlesvQd2w4XCJwba9t1shcXFx1MDAxN3M/SEiP2F/Cwlx1MDAxOLYtgF3mXHUwMDE55o9nM9sn+Vxcxm1cdTAwMTL7zfOk93VcdTAwMDX7xHfiXHUwMDEwUyPbhX9jrFxuPFxi/Fx1MDAxYtiVw+abbdXBMXGCjumzZ/GK+Fx1MDAxYvhcdTAwMTa39asmXsWG20/reNCWXHUwMDFhuqc+u1m8jYFr5Fx0tD+wI5ZcdTAwMDO30lx1MDAwNkvXhpNRzMzAmYrK2tVcdTAwMWH8XGI8ertcdTAwMWZum+ZNXHUwMDFizcCremJnbuCDbjNcdTAwMWVstYFDl+AgmvtMObfY6MXw6tzqXHUwMDFheFx1MDAwZl1jnELopq6ZQ9s9dVL2YW6rdGd778ChweNcdTAwMTLmQmTngvNcdTAwMTGMP0Vu03brZ7BPPbGcmeMteDm3VeCL3CfxNOia4i14iuX6hct8Nlx1MDAxYpTGp5iDr8z+bbdp52hq7J3mj35cdTAwMDXsY5NvcFx1MDAxYuUjfYOPmWb7wVg0XHUwMDE32chhuN9YmLbYNTZcdJ+erbZyXCJeYzrtfSlPqWCbzI2yVFx1MDAxM+9cdTAwMDBHJ3w5we/Yf1x1MDAxYVx1MDAxN3iXkL/oXG5+SnvL2MacoepzbsS4XHUwMDA2P2KZPvJaYLqyMi7zL8a+vmSeXHUwMDA2OcRwg4drXe62QW9WdtJcdTAwMDZeS8pnkPs2+iOcKDmHYdnCttGKXHUwMDFh81x1MDAwMC9gOcRp9OUyryNcdTAwMTmKL/hedWPd/M59kl/vcT5cdTAwMGW+VbHPkVx1MDAxY/nVinaGvs/YXHUwMDA3jVx1MDAwZcDbtcF82E9cdTAwMDWb6TN/pLhC9kS2TmPYXHUwMDE4U1rMWqEmQD3B5lx1MDAxNfCFOFx1MDAxOMWoQcnzLSlGsX0jZlx1MDAxNnZMzlx1MDAxN+Fn5MeUI8JnKpPT2fhcdJyGfNk1e8UxlXRZcl2htLiO9U9cdTAwMGJcdTAwMTPHOYdOMGfqU9tY1/ZcdTAwMGXRx1x1MDAxZddcIir47Vx1MDAxZP9g2fxWXHUwMDFiPzB5eIX1XGbWW7JrxGPWK3P6Oua3PZrbiudm+VGXY1xmt1x1MDAxMa7XMaZAjGFZPa05XHUwMDE32Vx1MDAwZa+37YHXmbai5Fx1MDAxOLNpg895Ji5zn+sm1+M24sqNuMzjkN83+SP3iXrJVlxc5rZZzUUph0RcXC5MXFyuYlx1MDAwZpyOxl13XHUwMDBmTX7P+SW3N/gqyaF+UDQxlt+bySbGXHUwMDEyj9rb5atbbUdcdTAwMDPH7Fx1MDAwZuohXHUwMDA1cm7YguB6XHUwMDEx8VCOW/BcdTAwMWbCnZS5XHLLlmSP5CtcdPDCu5Nnu4J83+V6XHUwMDA3y/eA1Vx1MDAwZWNcdTAwMTXZrJV36zbYXGLsmutIXHUwMDE5cI3lwVx0XHUwMDExx0uOUVx1MDAxZPZcdTAwMDXBPs6cXHUwMDAxWIb3XHUwMDA2pCPi91x1MDAxNeJ4n/oz86Q4WFl51KtYvst818pXiWnLjrSxu55n8tpcdTAwMDFxUM1cdTAwMWPU5lSrdFx1MDAwNp9cdTAwMDEmtO3egtszTqFcdTAwMWWCWlx1MDAwNuva+HdcZpu271xyKFx1MDAxZjxBb4R9vbXdXHUwMDEzRevA2sBDyVx1MDAxNlxybnaznsWTxH6HLWB94NFcdTAwMWFrcrpsI3g2W3FuxbqPbS40U1xcXHUwMDAzYpm8tlcvzdq1vKJ1W/nYMZiC9ce1bTrEjaz8TFlcdTAwMWUqyfZcdTAwMWOWR95tYzy9Zzh9R8NerDztN3CgXHUwMDAy7reRK0JcdTAwMWVx1qvlUVx1MDAwZuJcdTAwMThRaYNz6NPmo1x1MDAxYfUvXtNdXHUwMDFjXHUwMDE5Zlx1MDAxOe3fhHNKdWhsZs17wXbalyb/zD3mecbubU6au1x1MDAxYp9hTERcdTAwMWZkz6n1j2KdmpqVIN/DXFzga5Jxg/Jt8udy41+5aeu8OebaXHUwMDE58nDuI5d1jS7lXFyK+1CmLos19r26XHUwMDBmyqmlrfGpXHUwMDE0fsI1MlOLo3hq4sLdmph7SuaExvdE3cZ+Mql1QHMz9cC1iaGId7HhkYzDdV6V0FxcXHUwMDBmOva7rd0lNbY7VjeKfcXq+uk5wVxm9bjS+E2b8qdYslx1MDAwZSgnIFuAjzn1s8Q8XHUwMDEztM+mfs3f2+Y9zlVRw55cdTAwMTFXIV/OcvBExHiH/WXK9SHIg4s6bJcmTmy3iXQ+4DyNuJJpR/1cdTAwMDOxXHUwMDFjeFnasTrMRUxexFxcXHUwMDExY/Vd21ZaWcG+gnxpyn5Zr8e+l3BOZmRcdTAwMTkvqe095Vx1MDAwNDM8W1NcdTAwMWaoN3H+wX1QjOqiXHUwMDBlbeejLUdGXHUwMDFi+Vx1MDAxZuyYa76GI8/WNvdcdTAwMDBnkJYje8hZ9aHlXHUwMDExhiNvt5VHnMdcIn/ftINHWJ7ocW7JmMVcXIl54tb4yFx1MDAxZC1PnNVcXFx1MDAwN7hteeKMz1xmXHUwMDE4n5BrXHUwMDFkXHUwMDFhWc34XHUwMDBlzD9Kal1Y/Unozzyr9TQombMx3849u3cu82S8h/pkrOs9Ks34xFNRfzb2YOfUNnHlrlxy9j1DPijYzm275f5cdTAwMTQ7+rK2k7RcdTAwMWFcdTAwMThOns3E3Z4yXHUwMDE2Q5bsXHUwMDFjWG3navNcdTAwMDTi5O1anmvUhtPHW3vPueSabN/D/Fx0o7l+W7dD96hF67qu3uFcdTAwMWPB45o351xi4GIx51xikKXYbnOEvql5ZzPPYoc0+UH9vb3eylxy6lx1MDAxYUedXHUwMDE3oH/VzZp5XHUwMDAx+kfu18xcdTAwMGLgw/2ymVx1MDAxN6AtXHUwMDEx23nBXT2og71cdTAwMWWg/lx1MDAwZTtcdTAwMTfd+lxmgp/xpzL8rJFnSHumYeqEXHUwMDFkzsdcdTAwMDTnpNlu7pKbc1x1MDAxMq73XHUwMDE0Jse7a+Oaq8190edg3cx90Zavd/JLjOPVcbbOfYlcdTAwMGLfz1nRVvXq3Fx1MDAxN2tcdTAwMTNcdTAwMWPbKfdl3XXeW31cclSd+/KeZb1GP1x1MDAxNJ/BhXdy31x1MDAxOdmL3p2bxzg1aeS+mzbiZVxc755p7pP0xthJ+I6YZsapZlx1MDAxNmNzr9sx9sLnXFx7XFy7xzlaZexcdTAwMDO+0DN1/6xfj10yxpp8WNk2yvHM+YBGXtQ3Y5P+7DhJbb+ewUiuZ4ravijnqsx7xFx1MDAxOadv7vRlz3tWqMXUPpFm9izTzLtcdTAwMTFLnn62XHUwMDAwnYBcdTAwMGZcdTAwMWVpWlx1MDAwM5+PXHUwMDEyd+iY31x1MDAwN1x1MDAwMn5cdTAwMDHuQ1hsz0lcdPdcdTAwMTlTiDtVvbWNXHUwMDFkjuY6c1xcclx1MDAxZU58XHUwMDEy8oTVXHUwMDE110SgXHUwMDFmylx1MDAxMay8NHpGjq1LPiPBOVx1MDAxMNf2qY3m3qt61l/7po3wzr5cdTAwMDdcdTAwMWRBf2uuV8P+OlxcO1x1MDAwM4ek/1x1MDAxMOtmlZFvU16HcVCfz1E3clBT65paXHUwMDE5anHwebRJniPiX1x1MDAxZvvO9Vx1MDAwZWXe6bNNXHUwMDE4/cxcdTAwMTBP8Z5rzlx1MDAxY3uop9m59Ilb4LNA/EPfK6454V3GR7SR3qaFmVx1MDAwZvE721x1MDAxN+1LbudI3Fx1MDAxYTUl5K5cdTAwMTXwm/szdVx1MDAxMMSZzkxps1x1MDAxN5Tbglx1MDAxN8TgI6XR+XvN8fvQni/POO+m+My1dsfUXHUwMDAwyX85Z+8re1x1MDAwZe2ZOjrn+07KZ9s4m+k7lEtAnmJ4jZWx8X+Sp3kg1y/NnmFt4LPEzaczg8VcdTAwMWTKt/vacHfmU3xcdTAwMDbkgs8y58twLsL1XHUwMDFhwlfuXHUwMDEze2bOPlx1MDAwZoG/mnI3cOyBrVx0XHUwMDAyXHUwMDE3cvBp2LXSdlx1MDAxY3pcdTAwMDaOXHUwMDBlf+L406vgb5r5v4kxfdiW4HpZVtdcdTAwMTLbXHUwMDEyZ+vm7IW/XHUwMDEzL06QI5A8PiluZbU8aszIeXLP1qfWXVv/hn+lVWxrXjnXrfn81pwrc33f1tRvtY2ZXdTk9ri2UHF/4POxNt95XHUwMDFmXHUwMDEyibWYc2jIaXNfgJ/DXHUwMDFlMS5/omapMt5/3D/A+TBwwuSeyDtcdTAwMTiXplx1MDAxY8c43nOeyVjX5zjHdTyOy5DtkV3OrXxcdTAwMGa24TJ/41pem+uEtk9cdMzk+j7fmYAs5ePTXHUwMDEzI0vxnGRxnr3SXFz7wNiJy5xtynXzWp7WXHUwMDAzXGbDWXhSXHUwMDE5vlxujtlHTiWY37Cf4NxcIkdtXHUwMDEwbYQviWkrzXf2XHUwMDE1nFx1MDAxZnCtXHUwMDA0ffUtp+RcdTAwMWFcdTAwMTjsjc/WtbkzsTYxld+rXHUwMDBlXHUwMDE5h/rK4ETuMVx1MDAwNqK+k/WcXHUwMDFhZ8l+bL891eV6mDl30mb8irCPeFx1MDAwM5/3cuzkNZLPMVx1MDAxZXKeXHUwMDBlbIB8m3mEiVx1MDAxYlx1MDAwNe9DtzPXhN2oazlcXL8mf2HsYjxDTafg+MVtfLbIZ9VcdTAwMGXbLuQ6XHUwMDAz2TXxyUO+T/7C90CwZzxORbFsz8hcdTAwMTOeqzovh82mXHUwMDA2XHUwMDBmXHUwMDFkK0/66UkjT7quXG57rlxyO2V5gVx1MDAxOGDjlsdxXHLymVx1MDAxNlZPJc5qjHyvSu/0XHUwMDE01/JcdTAwMTXswsYkh+eXIb/HOk86/HtnwLVMzrVcdTAwMTmbUT+eVVx1MDAxY3/B96ZcXDNcdTAwMDDWMdZ3M8pcdTAwMTNwlp4hJ0P+btdi7lxc4NzWMef32FvU3Fx1MDAwN1xcXHUwMDA3ZH5sYogwd0KQx7X5bMHEKm3yTcxjz8ZcdTAwMWE+XHUwMDBi0WtzZ1x1MDAwM3g/Q1xyXHUwMDBm30uzVtRBXHUwMDE4641cXFx1MDAwN3xcbu9cclYmV7iLrU+uXHUwMDAzM08+5Nqu0H3YXHUwMDFirYfwnHNtPr9BXHUwMDFkeLA2eb5GTabiOlx1MDAxMMdcdTAwMWHULPuEXHUwMDEzM1x1MDAwZriT8p1cdTAwMWbaXHUwMDE3kk+R+7OvQFx1MDAxZbWTtmtqQz3bJ/E1Ptvq8TmNqSWfa7Zre26TVu877CekW5tcdTAwMWbgLo+0fiX5fJ4xcWB9LXe4XHUwMDE2jjacecZcdTAwMWG+42meJ+dcZmRcdTAwMTO0r1PYRFxcnzeA45DNorau7XuoZebEeZEzgMdcdTAwMTg8JryicThfKbdwXHUwMDFmccHkoFx1MDAxZG1jhVaEXHUwMDE3nIOQvpQ9Qyj53lx1MDAwM9ePk3V9N4gwh+y9WJl3elwi61x1MDAxNIh/wDPiXHUwMDE1/LtZZ8axXHUwMDAxeYlcdTAwMDL3xN1cdTAwMTRcdTAwMTOLXHQvKe51wUto3uDsOHeguayNPM0/M/zH3Fx1MDAwM+M+XHUwMDE1n8tcdTAwMThOZGQz+s1wp1x1MDAxMtzRyFL8q7lcdTAwMTPl4bROxfc4OomsOVx1MDAxMTgl5TA4Z3E2nCgnuy1cdTAwMWO++8CcijGA1oQ2isOcx4OXzJRp61teM3CNXHUwMDFj2dDU8pSMa6Mq5TzUymU5clx1MDAxM8U2Vlre41x1MDAxNOz/sD3kzuZcZlx1MDAxMu/2cTbtslx1MDAxZFRcdTAwMDPLs8iHwM05x+/bteTEjY46qYlcdTAwMDM191LmXFxcdTAwMDZ40Ku4XsO6XHUwMDAwn2mb+1xcVmdcdTAwMTnfz8OecG2hg3O5XHUwMDE056P2bMGcxeNcdTAwMWTKq7mmwjGIa12ct2QzW5cgXHUwMDFlldXybKN8XHUwMDBlYnCV5Vx1MDAxZJ317HnJgHN8yLMvsVx1MDAwZs1Q/1PsXHUwMDBiqEXj7CFLVvY9pTmGm7NcdTAwMWQ+p8c9wyxWXYNcdTAwMDGoS1x1MDAxMT6jvoH8qmd9OuE6LudcdTAwMWGmprLm+GdrXHUwMDE5XFxrxlx1MDAxZfQ11zton0qLXHUwMDFiK81jcN6OuVx1MDAxYZzhu1x1MDAwMNqz+mJ8eXpccqtdQUfkr47lIVx1MDAxNerVNFx1MDAxN8pp6ntcdTAwMTLxXG78iOuv5q6j4P1E/ZP1jHuYxCuzXHUwMDEzK8/1T9zfVOZuXHUwMDA1t9n3KPaxXHJvt/WrI5yjUFx1MDAwZaw79Vx1MDAxY9rwacW188370I3imF1ccup5cV1cdTAwMTZnLODYfKbOdVnUcFCLwNp7Vj5GvsP3PuHPVn6Nui/Oo1xiS8D/ea2ax6E5sI22mbvR2MjjyTb43sLKckHJ8S5cdTAwMDNcdTAwMWbhNlx1MDAxMyc5504458d8yDZovjlqoY7xRaN32kPJNVqyPSuPtUFcdTAwMWV+zWdPLF/Bp3FejTs0tU5Rf0FcdTAwMWLFh+zc6o1r47vzxJ3Q7fU4rMs9bqP9QF7PbTLd0Vx1MDAwZjBcdTAwMDE5XHUwMDBln2FluGOD+fA5xdrot6BcdTAwMWNrbuVjYfrc7Fx1MDAwZmNcbvFcdTAwMTa+o8i1XHUwMDFk28b6xX1cdTAwMDfUcYxccmD99pkw9WrGbW4zdkKYP03s2mdcdTAwMWVzOei5XHUwMDAyNvM6XHUwMDE153tso/We57Ut1/vN3Fx1MDAxMt8/5yP7Mlx1MDAxNSeV+u+tP1S5XHUwMDFl13f//Ugp4Vx1MDAwNq7jK/fuXHUwMDAy+28//PZ/XHUwMDFl1uiJIn0=OpenWEC Windows Client Send Event Logs according to subscription Configure subscription
From a functional perspective, this setup is identical to running a native WEC,
but it does not require an additional agent at the WEC. In addition, OpenWEC can
be scaled redundantly for high availability setups.
Setup OpenWEC Refer to the OpenWEC getting started
guide for
setup instructions.
For running OpenWEC on non-Windows machines that are likely not joined to a
Windows domain, it is most useful to configure TLS client authentication. The
OpenWEC documentation (see above) recommends to use a script collection from
NXLog that creates keys/certificates that can immediately be
used to configure both Windows clients and the OpenWEC collector. Make sure to
pay attention to specifying the correct hostnames for the sending and receiving
machines.
git clone https://gitlab.com/nxlog-public/contrib
cd contrib/windows-event-forwarding
./genca.sh myca
./gencert-client.sh myclient.domain.com
./gencert-server.sh openwec.domain.com
Use the following for the Subscription Manager string:
Server=HTTPS://openwec.domain.com:5985/wsman/,Refresh=14400,IssuerCA=6605742C5400141B76A747E19EA585E29B09F017
The string in the last line can be used to configure the Windows Event
Forwarding subscription manager on the sending side as described in the section
above ("Change local group policy settings"). While you're at it, also import
the client.pfx
and ca-cert.pem
into the corresponding stores (see the
documentation ).
Then, configure the OpenWEC server as follows (assuming the output files are in
/etc
, the directory /var/db/openwec
exists and it is writable by the current
user):
openwec.conf.toml [ server ]
[ logging ]
verbosity = "info"
[ database ]
type = "SQLite"
path = "/var/db/openwec/openwec.sqlite"
[[ collectors ]]
listen_address = "0.0.0.0"
hostname = "openwec.domain.com"
[ collectors . authentication ]
type = "Tls"
ca_certificate = "/etc/ca-cert.pem"
server_certificate = "/etc/server-cert.pem"
server_private_key = "/etc/server-key.pem"
Create the database (only needs to be done once):
openwec -c openwec.conf.toml db init
Start the server:
openwecd -c openwec.conf.toml
2024-01-30T13:59:26.295792509+01:00 INFO server - Server settings: Server { db_sync_interval: None, flush_heartbeats_interval: None, heartbeats_queue_size: None, node_name: None, keytab: None, tcp_keepalive_time: None, tcp_keepalive_intvl: None, tcp_keepalive_probes: None } 2024-01-30T13:59:26.295947557+01:00 INFO server::subscription - reload_subscriptions task started 2024-01-30T13:59:26.296046314+01:00 INFO server::heartbeat - Heartbeat task started 2024-01-30T13:59:26.297503212+01:00 WARN server::subscription - There are no active subscriptions! 2024-01-30T13:59:26.306151854+01:00 INFO server::tls - Loaded TLS configuration with server certificate /etc/server-cert.pem 2024-01-30T13:59:26.309876793+01:00 INFO server - Server listenning on 0.0.0.0:5985
It might make sense to ensure that the server is started and kept up via some
automated means, like systemd.
Then, while the server is running, create a subscription in OpenWEC for the
desired channels. For example, to match the subscription from the example above,
create an XML file like this:
subscription.xml < QueryList >
< Query Id = "0" >
< Select Path = "Application" >*</ Select >
< Select Path = "Security" >*</ Select >
< Select Path = "System" >*</ Select >
</ Query >
</ QueryList >
Pass this file to openwec
to create a subscription, e.g., with name
DC_SUBSCRIPTION
:
openwec subscriptions new DC_SUBSCRIPTION subscription.xml
For the new subscription, configure JSON over TCP as
output :
openwec subscriptions edit DC_SUBSCRIPTION outputs add --format json tcp 10.0.0.1 1514
Finally, enable the subscription:
openwec subscriptions enable DC_SUBSCRIPTION
That's it! You should now be able read the Windows event logs in JSON format by
spinning up a server that listens at tcp://10.0.0.1:1514
.
Run a Tenzir pipeline Import the logs sent with the configuration above into Tenzir via TCP:
load_tcp "10.0.0.1:1514" {
read_json
}
import
Increase visibility with Sysmon Sysmon (System
Monitor) is a Windows system service and device driver that, once installed on a
system, remains resident across system reboots to monitor and log system
activity to the Windows event log. Key features include:
Process creation tracking : Logs details of new processes.Network connection monitoring : Records incoming and outgoing network
connections.File creation time changes : Tracks changes to file creation times.Driver and image load monitoring : Logs loading of drivers and DLL files.Registry tracking : Monitors changes to the Windows registry.Download and extract Sysmon via Powershell Download Sysmon:
Invoke-WebRequest - Uri "https://download.sysinternals.com/files/Sysmon.zip" - OutFile "Sysmon.zip"
Extract the archive:
Expand-Archive -Path Sysmon.zip -DestinationPath Sysmon
Choose a Symon configuration Choose a suitable Sysmon configuration, e.g., from Florian
Roth or
SwiftOnSecurity :
Invoke-WebRequest - Uri "https://raw.githubusercontent.com/Neo23x0/sysmon-config/master/sysmonconfig-export.xml" - OutFile "sysmonconfig-export.xml"
Install Symon with a configuration .\ Sysmon64.exe - accepteula - i sysmonconfig - export.xml
Now use any of the above techniques to collect event logs through the channel
Microsoft-Windows-Sysmon/Operational
.