Jae-Min Lee

190 papers A* 1C 20Journal 62Unranked 107
YearRankTypeTitle / Venue / Authors
2026 J jnl
IEEE Internet Things J.
Hamza Ibrahim, Love Allen Chijioke Ahakonye, Jae-Min Lee, Dong-Seong Kim
2026 J jnl
Internet Things
Hamza Ibrahim, Love Allen Chijioke Ahakonye, Jae-Min Lee, Dong-Seong Kim
2026 J jnl
IEEE Internet Things J.
Jonathan Mukisa Kalibbala, Love Allen Chijioke Ahakonye, Dong-Seong Kim, Jae-Min Lee
2026 J jnl
IEEE Internet Things J.
Hope Leticia Nakayiza, Love Allen Chijioke Ahakonye, Dong-Seong Kim, Jae-Min Lee
2026 J jnl
IEEE Internet Things J.
Chigozie Athanasius Nnadiekwe, Simeon Okechukwu Ajakwe, Jae-Min Lee, Dong-Seong Kim
2025 conf
ICC
Mohtasin Golam, Md Mahinur Alam, Md Raihan Subhan, Dong-Seong Kim, Jae-Min Lee
2025 J jnl
IEEE Internet Things J.
Mohtasin Golam, Adnan Md Tayeb, Mst Ayesha Khatun, Md Facklasur Rahaman, Ali Aouto, Oroceo Paul Angelo, Dong-Seong Kim, Jae-Min Lee, Jung-Hyeon Kim
2025 J jnl
IEEE Internet Things J.
Kalibbala Jonathan Mukisa, Love Allen Chijioke Ahakonye, Dong-Seong Kim, Jae-Min Lee
2025 J jnl
IEEE Internet Things J.
Hope Leticia Nakayiza, Love Allen Chijioke Ahakonye, Dong-Seong Kim, Jae-Min Lee
2025 J jnl
Internet Things
Ahmad Zainudin, Made Adi Paramartha Putra, Dong-Seong Kim, Jae-Min Lee
2025 conf
ICAIIC
Adnan Md Tayeb, Hope Leticia Nakayiza, Heejae Shin, Seungmin Lee, Jae-Min Lee, Dong-Seong Kim
2025 J jnl
IEEE Access
Min-Hui Jang, Hyeong-Jin Kim, Young-Keun Go, Nak-Jung Choi, Jae-Ho Lee, Jae-Hak Yu, Jae-Min Lee, Tae Soo Jun, Dong-Seong Kim
2025 conf
ICAIIC
Adnan Md Tayeb, Jae-Min Lee, Dong-Seong Kim
2025 J jnl
IEEE Access
Judith Nkechinyere Njoku, Ebuka Chinaechetam Nkoro, Robin Matthew Medina, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2025 J jnl
IEEE Open J. Commun. Soc.
Won Jae Ryu, Jae-Min Lee, Dong-Seong Kim
2025 C conf
ICCE
Gifar Arif Haryadi, Ahmad Zainudin, Jae-Min Lee, Dong-Seong Kim
2025 conf
ICAIIC
Judith Nkechinyere Njoku, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2024 J jnl
Internet Things
Love Allen Chijioke Ahakonye, Ahmad Zainudin, Md Javed Ahmed Shanto, Jae-Min Lee, Dong-Seong Kim, Tae Soo Jun
2024 J jnl
ICT Express
Cosmas Ifeanyi Nwakanma, Goodness Oluchi Anyanwu, Love Allen Chijioke Ahakonye, Jae-Min Lee, Dong-Seong Kim
2024 conf
ICTC
Mohtasin Golam, Md Mahinur Alam, Dong-Seong Kim, Jae-Min Lee
2024 conf
ICAIIC
Ebuka Chinaechetam Nkoro, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2024 J jnl
IEEE Internet Things J.
Ahmad Zainudin, Made Adi Paramartha Putra, Revin Naufal Alief, Rubina Akter, Dong-Seong Kim, Jae-Min Lee
2024 conf
ICC
Ahmad Zainudin, Made Adi Paramartha Putra, Revin Naufal Alief, Dong-Seong Kim, Jae-Min Lee
2024 C conf
APCC
Made Adi Paramartha Putra, Ahmad Zainudin, Gabriel Avelino R. Sampedro, Nengah Widya Utami, Dong-Seong Kim, Jae-Min Lee
2024 conf
ICTC
Adnan Md Tayeb, Hope Leticia Nakayiza, Heejae Shin, Seungmin Lee, Chaesoo Lee, Yeonghun Lee, Dong-Seong Kim, Jae-Min Lee
2024 J jnl
Internet Things
Ebuka Chinaechetam Nkoro, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2024 conf
ICTC
Judith Nkechinyere Njoku, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2024 J jnl
IEEE Access
Esmot Ara Tuli, Jae-Min Lee, Dong-Seong Kim
2024 J jnl
Internet Things
Love Allen Chijioke Ahakonye, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2024 J jnl
IEEE Trans. Netw. Serv. Manag.
Md Facklasur Rahaman, Mohtasin Golam, Md Raihan Subhan, Esmot Ara Tuli, Dong-Seong Kim, Jae-Min Lee
2024 J jnl
IEEE Access
Mohtasin Golam, Esmot Ara Tuli, Revin Naufal Alief, Dong-Seong Kim, Jae-Min Lee
2024 J jnl
ICT Express
Gabriel Chukwunonso Amaizu, Judith Nkechinyere Njoku, Jae-Min Lee, Dong-Seong Kim
2024 J jnl
Internet Things
Made Adi Paramartha Putra, Revin Naufal Alief, Syifa Maliah Rachmawati, Gabriel Avelino R. Sampedro, Dong-Seong Kim, Jae-Min Lee
2024 J jnl
IEEE Access
Made Adi Paramartha Putra, Nyoman Bogi Aditya Karna, Revin Naufal Alief, Ahmad Zainudin, Dong-Seong Kim, Jae-Min Lee, Gabriel Avelino R. Sampedro
2024 conf
ICTC
Made Adi Paramartha Putra, Nyoman Bogi Aditya Karna, Sofia Naning Hertiana, Ahmad Zainudin, Revin Naufal Alief, Gabriel Avelino R. Sampedro, Dong-Seong Kim, Jae-Min Lee
2024 J jnl
CoRR
Adnan Md Tayeb, Mst Ayesha Khatun, Mohtasin Golam, Md Facklasur Rahaman, Ali Aouto, Oroceo Paul Angelo, Minseon Lee, Dong-Seong Kim, Jae-Min Lee, Jung-Hyeon Kim
2024 conf
ICAIIC
Paul Michael Custodio, Made Adi Paramartha Putra, Jae-Min Lee, Dong-Seong Kim
2024 J jnl
Internet Things
Made Adi Paramartha Putra, Nyoman Bogi Aditya Karna, Ahmad Zainudin, Dong-Seong Kim, Jae-Min Lee
2024 conf
ICC Workshops
Made Adi Paramartha Putra, Gabriel Avelino R. Sampedro, Ahmad Zainudin, Dong-Seong Kim, Jae-Min Lee
2024 conf
ICTC
Nyoman Bogi Aditya Karna, Sofia Naning Hertiana, Made Adi Paramartha Putra, Nengah Widya Utami, I Gede Juliana Eka Putra, Dewa Rahyuni, Dong-Seong Kim, Jae-Min Lee
2024 J jnl
IEEE Trans. Ind. Informatics
Love Allen Chijioke Ahakonye, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2023 conf
ICTC
Odinachi Udemezuo Nwankwo, Dong Seong Kim, Jae-Min Lee
2023 J jnl
Internet Things
Made Adi Paramartha Putra, Adinda Riztia Putri, Ahmad Zainudin, Dong-Seong Kim, Jae-Min Lee
2023 J jnl
Sensors
Simeon Okechukwu Ajakwe, Vivian Ukamaka Ihekoronye, Dong-Seong Kim, Jae-Min Lee
2023 J jnl
IEEE Internet Things J.
Love Allen Chijioke Ahakonye, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2023 J jnl
IEEE Internet Things J.
Ahmad Zainudin, Love Allen Chijioke Ahakonye, Rubina Akter, Dong-Seong Kim, Jae-Min Lee
2023 conf
ICC Workshops
Ahmad Zainudin, Revin Naufal Alief, Made Adi Paramartha Putra, Rubina Akter, Dong-Seong Kim, Jae-Min Lee
2023 conf
ICTC
Ahmad Zainudin, Revin Naufal Alief, Made Adi Paramartha Putra, Rubina Akter, Jae-Min Lee, Dong-Seong Kim
2023 conf
ICTC
Made Adi Paramartha Putra, Ahmad Zainudin, Revin Naufal Alief, Gabriel Avelino R. Sampedro, Dong-Seong Kim, Jae-Min Lee
2023 J jnl
Internet Things
Simeon Okechukwu Ajakwe, Ihunanya U. Ajakwe, Taesoo Jun, Dong-Seong Kim, Jae-Min Lee
2023 conf
ICTC
Gabriel Chukwunonso Amaizu, Love Allen Chijioke Ahakonye, Dong-Seong Kim, Jae-Min Lee
2023 conf
ICUFN
Ali Aouto, Taesoo Jun, Jae-Min Lee, Dong-Seong Kim
2023 J jnl
IEEE Internet Things J.
Simeon Okechukwu Ajakwe, Dong-Seong Kim, Jae-Min Lee
2023 conf
ICTC
Ebuka Chinaechetam Nkoro, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2023 J jnl
IEEE Internet Things J.
Made Adi Paramartha Putra, Ade Pitra Hermawan, Cosmas Ifeanyi Nwakanma, Dong-Seong Kim, Jae-Min Lee
2023 conf
ICAIIC
Revin Naufal Alief, Made Adi Paramartha Putra, Augustin Gohil, Jae-Min Lee, Dong-Seong Kim
2023 J jnl
IEEE Trans. Intell. Transp. Syst.
Goodness Oluchi Anyanwu, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2023 J jnl
IEEE Trans. Netw. Serv. Manag.
Ahmad Zainudin, Rubina Akter, Dong-Seong Kim, Jae-Min Lee
2023 conf
ICAIIC
Made Adi Paramartha Putra, Syifa Maliah Rachmawati, Revin Naufal Alief, Love Allen Chijioke Ahakonye, Augustin Gohil, Dong-Seong Kim, Jae-Min Lee
2023 J jnl
IEEE Access
Gabriel Avelino R. Sampedro, Made Adi Paramartha Putra, Jae-Min Lee, Dong-Seong Kim
2023 J jnl
IEEE Internet Things J.
Rubina Akter, Mohtasin Golam, Van-Sang Doan, Jae-Min Lee, Dong-Seong Kim
2023 conf
ICTC
Judith Nkechinyere Njoku, Anthony Uchenna Eneh, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2023 conf
MetroInd4.0&IoT
Gabriel Avelino R. Sampedro, Ramon Miguel Africa, Mideth B. Abisado, Dong-Seong Kim, Jae-Min Lee
2023 J jnl
IEEE Internet Things J.
Goodness Oluchi Anyanwu, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2023 J jnl
Ad Hoc Networks
Goodness Oluchi Anyanwu, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2023 J jnl
Internet Things
Love Allen Chijioke Ahakonye, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2023 conf
ICSC
Danielle Jaye S. Agron, Dong-Seong Kim, Jae-Min Lee, Michelle Almendrala
2023 conf
INFOCOM Workshops
Gabriel Avelino R. Sampedro, Franklin Dañas, Mideth B. Abisado, Dong-Seong Kim, Jae-Min Lee
2022 conf
ICTC
Made Adi Paramartha Putra, Mark Verana, Gabriel Avelino R. Sampedro, Dong-Seong Kim, Jae-Min Lee
2022 J jnl
IEEE Geosci. Remote. Sens. Lett.
Mohtasin Golam, Rubina Akter, Jae-Min Lee, Dong-Seong Kim
2022 conf
ICOIN
Simeon Okechukwu Ajakwe, Vivian Ukamaka Ihekoronye, Rubina Akter, Dong-Seong Kim, Jae-Min Lee
2022 J jnl
ICT Express
Made Adi Paramartha Putra, Dong-Seong Kim, Jae-Min Lee
2022 conf
ICAIIC
Vivian Ukamaka Ihekoronye, Simeon Okechukwu Ajakwe, Dong-Seong Kim, Jae-Min Lee
2022 conf
ICTC
Gabriel Avelino R. Sampedro, Raymer Manaig, Paulyne Salazar-Manaig, Mideth B. Abisado, Dong-Seong Kim, Jae-Min Lee
2022 conf
ICTC
Yohana Jayanti Aruan, Made Adi Paramartha Putra, Adinda Riztia Putri, Philip Tobianto Daely, Dong-Seong Kim, Jae-Min Lee
2022 conf
MILCOM
Mohtasin Golam, Rubina Akter, Revin Naufal Alief, Van-Sang Doan, Jae-Min Lee, Dong-Seong Kim
2022 J jnl
ICT Express
Ann Janeth Garcia, Ali Aouto, Jae-Min Lee, Dong-Seong Kim
2022 conf
ICOIN
Made Adi Paramartha Putra, Dong-Seong Kim, Jae-Min Lee
2022 conf
ICTC
Simeon Okechukwu Ajakwe, Vivian Ukamaka Ihekoronye, Ihunanya U. Ajakwe, Taesoo Jun, Dong-Seong Kim, Jae-Min Lee
2022 conf
ICTC
Vivian Ukamaka Ihekoronye, Simeon Okechukwu Ajakwe, Dong-Seong Kim, Jae-Min Lee
2022 conf
ICTC
Adinda Riztia Putri, Made Adi Paramartha Putra, Taesoo Jun, Jae-Min Lee, Dong-Seong Kim
2022 conf
ICUFN
Igboanusi Ikechi Saviour, Allwinnaldo, Revin Naufal Alief, Muhammad Rasyid Redha Ansori, Jae-Min Lee, Dong-Seong Kim
2022 J jnl
Sensors
Gabriel Avelino R. Sampedro, Syifa Maliah Rachmawati, Dong-Seong Kim, Jae-Min Lee
2022 conf
ICTC
Ahmad Zainudin, Rubina Akter, Dong-Seong Kim, Jae-Min Lee
2022 C conf
APCC
Esmot Ara Tuli, Jae-Min Lee, Dong-Seong Kim
2022 conf
ICTC
Syifa Maliah Rachmawati, Made Adi Paramartha Putra, Taesoo Jun, Dong-Seong Kim, Jae-Min Lee
2022 conf
MILCOM
Vivian Ukamaka Ihekoronye, Simeon Okechukwu Ajakwe, Dong-Seong Kim, Jae-Min Lee
2022 conf
ICOIN
Esmot Ara Tuli, Jae-Min Lee, Dong-Seong Kim
2022 conf
ICTC
Ebuka Chinaechetam Nkoro, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2022 conf
ICTC
Odinachi Udemezuo Nwankwo, Cosmas Ifeanyi Nwakanma, Dong Seong Kim, Jae-Min Lee
2022 J jnl
IEEE Access
Simeon Okechukwu Ajakwe, Cosmas Ifeanyi Nwakanma, Dong Seong Kim, Jae-Min Lee
2022 conf
ICTC
Yusuf Moallim, Jae-Min Lee, Dong-Seong Kim
2022 conf
ICTC
Mohtasin Golam, Rubina Akter, Esmot Ara Tuli, Dong-Seong Kim, Jae-Min Lee
2022 C conf
APCC
Gabriel Chukwunonso Amaizu, Jae-Min Lee, Dong-Seong Kim
2022 conf
ICTC
Goodness Oluchi Anyanwu, Cosmas Ifeanyi Nwakanma, Jung-Hyeon Kim, Jae-Min Lee, Dong-Seong Kim
2022 conf
ICTC
Mohamed Abubakar Dini, Simeon Okechukwu Ajakwe, Dong-Seong Kim, Jae-Min Lee, Taesoo Jun
2022 C conf
APCC
Igboanusi Ikechi Saviour, Revin Naufal Alief, Muhammad Rasyid Redha Ansori, Allwinnaldo, Jae-Min Lee, Dong-Seong Kim
2022 C conf
APCC
Simeon Okechukwu Ajakwe, Vivian Ukamaka Ihekoronye, Dong-Seong Kim, Jae-Min Lee
2022 conf
ICTC
Gabriel Avelino R. Sampedro, Syifa Maliah Rachmawati, Khurboev Shakhzodbek Dilshodbek Ugli, Dong-Seong Kim, Jae-Min Lee
2022 J jnl
IET Commun.
Igboanusi Ikechi Saviour, Allwinnaldo, Revin Naufal Alief, Muhammad Rasyid Redha Ansori, Jae-Min Lee, Dong-Seong Kim
2022 conf
ICTC
Judith Nkechinyere Njoku, Goodness Oluchi Anyanwu, Igboanusi Ikechi Saviour, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2022 conf
ICAIIC
Goodness Oluchi Anyanwu, Cosmas Ifeanyi Nwakanma, Adinda Riztia Putri, Jae-Min Lee, Dong-Seong Kim, JeongHan Kim, Gihwan Hwang
2022 C conf
APCC
Ahmad Zainudin, Rubina Akter, Dong-Seong Kim, Jae-Min Lee
2022 C conf
ETFA
Simeon Okechukwu Ajakwe, Vivian Ukamaka Ihekoronye, Dong-Seong Kim, Jae-Min Lee
2021 conf
ICTC
Igboanusi Ikechi Saviour, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICOIN
Rubina Akter, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Vivian Ukamaka Ihekoronye, Cosmas Ifeanyi Nwakanma, Goodness Oluchi Anyanwu, Dong-Seong Kim, Jae-Min Lee
2021 J jnl
ICT Express
Igboanusi Ikechi Saviour, Kevin Putra Dirgantoro, Jae-Min Lee, Dong-Seong Kim
2021 J jnl
Comput. Networks
Rubina Akter, Van-Sang Doan, Jae-Min Lee, Dong-Seong Kim
2021 J jnl
Comput. Networks
Gabriel Chukwunonso Amaizu, Cosmas Ifeanyi Nwakanma, Sanjay Bhardwaj, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Adinda Riztia Putri, Goodness Oluchi Anyanwu, Mareska Pratiwi Maharani, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Goodness Oluchi Anyanwu, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Made Adi Paramartha Putra, Dong-Seong Kim, Jae-Min Lee
2021 conf
ICUFN
Mark Verana, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong Seong Kim
2021 conf
ICTC
Ahmad Zainudin, Cosmas Ifeanyi Nwakanma, Dong-Seong Kim, Jae-Min Lee
2021 conf
ICTC
Jae-Woo Kim, Jae-Min Lee, Dong-Seong Kim, Won Jae Ryu, Geoil Yang, Youngmin Kim
2021 conf
ICTC
Rubina Akter, Mohtasin Golam, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Philip Tobianto Daely, Yohana Jayanti Aruan, Jae-Min Lee, Dong-Seong Kim
2021 J jnl
ICT Express
Cosmas Ifeanyi Nwakanma, Jae-Woo Kim, Jae-Min Lee, Dong-Seong Kim
2021 J jnl
IEEE Access
Love Allen Chijioke Ahakonye, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Mohtasin Golam, Rubina Akter, Jae-Min Lee, Dong-Seong Kim
2021 C conf
ETFA
Made Adi Paramartha Putra, Ade Pitra Hermawan, Dong-Seong Kim, Jae-Min Lee
2021 C conf
ETFA
Fabliha Bushra Islam, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2021 J jnl
Internet Things
Muhammad Rusyadi Ramli, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICOIN
Jae-Woo Kim, Cosmas Ifeanyi Nwakanma, Dong-Seong Kim, Jae-Min Lee
2021 conf
ICTC
Tariq Rahim, Arslan Musaddiq, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICAIIC
Cosmas Ifeanyi Nwakanma, Fabliha Bushra Islam, Mareska Pratiwi Maharani, Dong-Seong Kim, Jae-Min Lee
2021 conf
ICTC
Syifa Maliah Rachmawati, Dong-Seong Kim, Jae-Min Lee
2021 conf
ICTC
Revin Naufal Alief, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Esmot Ara Tuli, Dong-Seong Kim, Jae-Min Lee
2021 conf
ICAIIC
Williams Paul Nwadiugwu, Seung-Hwan Kim, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Simeon Okechukwu Ajakwe, Rubina Akter, Love Allen Chijioke Ahakonye, Dong-Seong Kim, Jae-Min Lee
2021 C conf
ETFA
Goodness Oluchi Anyanwu, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2021 J jnl
Comput. Commun.
Etobi Damian Tita, Williams Paul Nwadiugwu, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Cosmas Ifeanyi Nwakanma, Love Allen Chijioke Ahakonye, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Yohana Jayanti Aruan, Philip Tobianto Daely, Gino Sampedro, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICAIIC
Gabriel Chukwunonso Amaizu, Danielle Jaye S. Agron, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Ali Aouto, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Fabliha Bushra Islam, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2021 conf
ICTC
Mareska Pratiwi Maharani, Adinda Riztia Putri, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Cosmas Ifeanyi Nwakanma, Alifia Putri Anantha, Fabliha Bushra Islam, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Mohtasin Golam, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Ann Janeth Garcia, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Mareska Pratiwi Maharani, Philip Tobianto Daely, Jae-Min Lee, Dong-Seong Kim
2020 J jnl
IEEE Commun. Lett.
Ade Pitra Hermawan, Rizki Rivai Ginanjar, Dong-Seong Kim, Jae-Min Lee
2020 conf
ICAIIC
Williams Paul Nwadiugwu, Esther Williams, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Md. Sajjad Hossain, Fabliha Bushra Islam, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Philip Tobianto Daely, Alifia Putri Anantha, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Sanjay Bhardwaj, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Alifia Putri Anantha, Philip Tobianto Daely, Jae-Min Lee, Dong-Seong Kim
2020 J jnl
ICT Express
Md. Sajjad Hossain, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2020 J jnl
IET Commun.
Gaspard Gashema, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Danielle Jaye S. Agron, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICAIIC
Kevin Putra Dirgantoro, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Gabriel Chukwunonso Amaizu, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Fabliha Bushra Islam, Cosmas Ifeanyi Nwakanma, Dong-Seong Kim, Jae-Min Lee
2020 J jnl
Comput. Electron. Agric.
Muhammad Rusyadi Ramli, Philip Tobianto Daely, Dong-Seong Kim, Jae-Min Lee
2020 conf
ICTC
Esmot Ara Tuli, Dong-Seong Kim, Jae-Min Lee
2020 conf
ICTC
Simeon Okechukwu Ajakwe, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Godwin Brown Tunze, Thien Huynh-The, Jae-Min Lee, Dong-Seong Kim
2020 J jnl
IEEE Access
Williams Paul Nwadiugwu, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICTC
Ade Pitra Hermawan, Dong-Seong Kim, Jae-Min Lee
2020 conf
ICTC
Rubina Akter, Van-Sang Doan, Godwin Brown Tunze, Jae-Min Lee, Dong-Seong Kim
2020 C conf
ETFA
Ade Pitra Hermawan, Dong-Seong Kim, Jae-Min Lee
2020 conf
ICTC
Gabriel Avelino R. Sampedro, Christian Kyle Floresta, Jocelyn Flores Villaverde, Jae-Min Lee, Dong-Seong Kim
2020 J jnl
IEEE Trans. Veh. Technol.
Godwin Brown Tunze, Thien Huynh-The, Jae-Min Lee, Dong-Seong Kim
2020 conf
ICAIIC
Riesa Krisna Astuti Sakir, Muhammad Rusyadi Ramli, Jae-Min Lee, Dong-Seong Kim
2019 conf
ICTC
Williams Paul Nwadiugwu, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2019 C conf
ETFA
Muhammad Rusyadi Ramli, Philip Tobianto Daely, Jae-Min Lee, Dong-Seong Kim
2019 conf
ICTC
Amaizu Gabriel, Williams Paul Nwadiugwu, Jae-Min Lee, Dong-Seong Kim
2019 J jnl
Int. J. Commun. Networks Distributed Syst.
Williams Paul Nwadiugwu, Dong-Seong Kim, Jae-Min Lee
2019 C conf
ETFA
Igboanusi Ikechi Saviour, Jae-Min Lee, Dong-Seong Kim
2019 conf
ICTC
Godwin Brown Tunze, Rubina Akter, Gaspard Gashema, Jae-Min Lee, Dong-Seong Kim
2019 conf
ICTC
Md. Sajjad Hossain, Muhammad Rusyadi Ramli, Jae-Min Lee, Dong-Seong Kim
2019 conf
ICTC
Rubina Akter, Sanjay Bhardwaj, Jae-Min Lee, Dong-Seong Kim
2019 conf
ICTC
Gi Hyeob Kwon, Chang Bae Moon, Jae-Min Lee, Dong-Seong Kim
2019 C conf
ETFA
Cosmas Ifeanyi Nwakanma, Williams Paul Nwadiugwu, Jae-Min Lee, Dong-Seong Kim
2019 conf
ICTC
Ali Aouto, Thien Huynh-The, Jae-Min Lee, Dong-Seong Kim
2019 A* conf
MobiCom
Da-Hye Kim, Muhammad Rusyadi Ramli, Jae-Min Lee, Dong-Seong Kim
2019 conf
ICTC
Mohtasin Golam, Igboanusi Ikechi Saviour, Jae-Min Lee, Dong-Seong Kim
2019 C conf
ICCE
Rizki Rivai Ginanjar, Sanjay Bhardwaj, Dong-Seong Kim, Jae-Min Lee
2019 conf
ICTC
Danielle Jaye Segui Agron, Muhammad Rusyadi Ramli, Jae-Min Lee, Dong-Seong Kim
2019 conf
ICTC
Igboanusi Ikechi Saviour, Cosmas Ifeanyi Nwakanma, Jae-Min Lee, Dong-Seong Kim
2019 C conf
ICCE
Trung-Thanh Ngo, Jae-Min Lee, Dong-Seong Kim
2018 C conf
WFCS
Muhammad Royyan, Muhammad Rusyadi Ramli, Jae-Min Lee, Dong-Seong Kim
2018 J jnl
IEEE Trans. Ind. Informatics
Nguyen Trong Tuan, Dong-Seong Kim, Jae-Min Lee
2018 C conf
ETFA
Alif Akbar Pranata, Jae-Min Lee, Dong-Seong Kim
2017 conf
Wireless Days
Muhammad Royyan, Joong-Hyuk Cha, Jae-Min Lee, Dong-Seong Kim
2017 C conf
LANMAN
Alif Akbar Pranata, Jae-Min Lee, Dong-Seong Kim
2002 J jnl
IEEE Trans. Consumer Electron.
Dongsung Kim, Jae-Min Lee, Wook Hyun Kwon, In Kwan Yuh
redb/extractors/js_extractors/js_strings.py
← Index redb/extractors/js_extractors/js_strings.py python
import base64
import bisect
import inspect
import re
from datetime import datetime, timezone
from typing import Any

from redb.extractors.enum import Tag
from redb.extractors.js_extractor import JSExtractor
from redb.extractors.js_extractors.js_patterns import STRING_PATTERNS, line_offsets

# Local aliases for the compiled patterns this extractor uses. Defined and
# compiled exactly once in js_patterns.STRING_PATTERNS.
_HEX_STRING_RE = STRING_PATTERNS["hex_escape_seq"]
_UNICODE_STRING_RE = STRING_PATTERNS["unicode_escape_seq"]
_CHARCODE_RE = STRING_PATTERNS["charcode_call"]
_BASE64_STRING_RE = STRING_PATTERNS["base64_quoted"]
_CONCAT_STRING_RE = STRING_PATTERNS["concat_chain"]

# Tokeniser used inside _reconstruct_concat to pull each quoted part out of a
# matched concat chain. Compiled once at module load (was recompiled on every
# concat match before).
_CONCAT_TOKEN_RE = re.compile(r'["\']([^"\']*)["\']')


class JSStringsExtractor(JSExtractor):

    def __init__(
        self, filepath, log, exporters=None, index_prefix=None,
        known_benign=False, known_malicious=False, source=None, context=None,
    ):
        super().__init__(
            filepath, log, exporters, index_prefix,
            known_benign, known_malicious, source, context=context,
        )
        self.string_findings = None
        self.log.debug(inspect.currentframe().f_code.co_name)

    def tag(self):
        return Tag.JS_STRINGS.value

    def _decode_hex_string(self, hex_str):
        """Decode \\x41\\x42 style hex strings."""
        try:
            # Remove \\x prefix and decode
            clean = hex_str.replace('\\x', '')
            return bytes.fromhex(clean).decode('utf-8', errors='replace')
        except Exception:
            return None

    def _decode_unicode_string(self, uni_str):
        """Decode \\u0041\\u0042 style unicode strings."""
        try:
            return uni_str.encode('utf-8').decode('unicode_escape')
        except Exception:
            return None

    def _decode_charcode(self, charcode_str):
        """Decode String.fromCharCode(72, 101, 108, ...) sequences."""
        try:
            codes = [int(c.strip()) for c in charcode_str.split(',') if c.strip().isdigit()]
            return ''.join(chr(c) for c in codes if 0 <= c <= 0x10FFFF)
        except Exception:
            return None

    def _decode_base64(self, b64_str):
        """Attempt to decode base64 string."""
        try:
            decoded = base64.b64decode(b64_str)
            # Check if result is printable text
            text = decoded.decode('utf-8', errors='strict')
            # Only return if it looks like text (>80% printable)
            printable = sum(1 for c in text if c.isprintable() or c in '\n\r\t')
            if printable / len(text) > 0.8:
                return text
        except Exception:
            pass
        return None

    def _reconstruct_concat(self, concat_match):
        """Reconstruct concatenated string parts."""
        try:
            parts = _CONCAT_TOKEN_RE.findall(concat_match)
            return ''.join(parts)
        except Exception:
            return None

    def _find_line_number(self, match_start):
        """1-indexed line number for `match_start`, looked up in O(log L) via
        bisect over `self._line_offsets` (built once per extract() call).

        Replaces the historical `self.js_source[:match_start].count('\\n') + 1`
        which was O(N) per call and quadratic across all matches in a sample.
        """
        return bisect.bisect_right(self._line_offsets, match_start)

    def _scan_text(self, text):
        """Run every encoded-string pattern over `text` and return a list of
        finding dicts. Stateless apart from the per-call `_line_offsets` cache,
        which `_find_line_number` reads — callers must reset it before invoking
        this so line numbers reference the text being scanned, not the previous
        one.
        """
        findings = []

        # Hex-encoded strings
        for m in _HEX_STRING_RE.finditer(text):
            raw = m.group()
            decoded = self._decode_hex_string(raw)
            if decoded and len(decoded) >= 4:
                findings.append({
                    'string': decoded[:4000],
                    'string_raw': raw[:4000],
                    'string_encoding': 'hex',
                    'string_offset': self._find_line_number(m.start()),
                    'string_length': len(decoded),
                    'string_raw_length': len(raw),
                    'string_entropy': self._calculate_text_entropy(decoded),
                })

        # Unicode-encoded strings
        for m in _UNICODE_STRING_RE.finditer(text):
            raw = m.group()
            decoded = self._decode_unicode_string(raw)
            if decoded and len(decoded) >= 3:
                findings.append({
                    'string': decoded[:4000],
                    'string_raw': raw[:4000],
                    'string_encoding': 'unicode',
                    'string_offset': self._find_line_number(m.start()),
                    'string_length': len(decoded),
                    'string_raw_length': len(raw),
                    'string_entropy': self._calculate_text_entropy(decoded),
                })

        # String.fromCharCode sequences
        for m in _CHARCODE_RE.finditer(text):
            raw = m.group()
            decoded = self._decode_charcode(m.group(1))
            if decoded and len(decoded) >= 4:
                findings.append({
                    'string': decoded[:4000],
                    'string_raw': raw[:4000],
                    'string_encoding': 'charcode',
                    'string_offset': self._find_line_number(m.start()),
                    'string_length': len(decoded),
                    'string_raw_length': len(raw),
                    'string_entropy': self._calculate_text_entropy(decoded),
                })

        # Base64-encoded strings
        for m in _BASE64_STRING_RE.finditer(text):
            raw = m.group(0)
            b64_val = m.group(1)
            decoded = self._decode_base64(b64_val)
            if decoded and len(decoded) >= 10:
                findings.append({
                    'string': decoded[:4000],
                    'string_raw': raw[:4000],
                    'string_encoding': 'base64',
                    'string_offset': self._find_line_number(m.start()),
                    'string_length': len(decoded),
                    'string_raw_length': len(raw),
                    'string_entropy': self._calculate_text_entropy(decoded),
                })

        # Concatenated strings (reassembled)
        for m in _CONCAT_STRING_RE.finditer(text):
            raw = m.group()
            reconstructed = self._reconstruct_concat(raw)
            if reconstructed and len(reconstructed) >= 20:
                findings.append({
                    'string': reconstructed[:4000],
                    'string_raw': raw[:4000],
                    'string_encoding': 'concat',
                    'string_offset': self._find_line_number(m.start()),
                    'string_length': len(reconstructed),
                    'string_raw_length': len(raw),
                    'string_entropy': self._calculate_text_entropy(reconstructed),
                })

        return findings

    def extract(self):
        src = self.js_source
        if not src:
            return None

        # Pass 1: raw source. _line_offsets is keyed off whichever text is
        # currently being scanned so _find_line_number resolves to that text.
        self._line_offsets = line_offsets(src)
        findings = self._scan_text(src)

        # Pass 2: deobfuscated text, when the deobfuscator produced something
        # meaningfully different. Same patterns, but a different surface — for
        # samples where the encoded payload is hidden behind an outer wrapper
        # (e.g. array.join() + eval in Vjw0rm/WSH-RAT) only this pass yields
        # any rows at all.
        deobf_text, _ = self._context.deobfuscated
        if deobf_text and deobf_text != src:
            self._line_offsets = line_offsets(deobf_text)
            findings.extend(self._scan_text(deobf_text))

        if not findings:
            return None

        # Deduplicate by decoded string value (raw pass wins on collision: it
        # comes first in `findings`). A string that surfaces only in the
        # deobfuscated text still gets persisted, which is the whole point of
        # the second pass.
        seen_values = set()
        deduped = []
        for f in findings:
            val_key = f['string'][:100]
            if val_key not in seen_values:
                seen_values.add(val_key)
                deduped.append(f)

        self.string_findings = deduped[:500]  # Limit per file
        # Publish to the shared context so post-loop consumers (notably the IOC
        # plumbing in workers.py) can scrape the decoded strings without
        # holding a reference to this extractor instance.
        self._context.decoded_strings = self.string_findings
        return self.string_findings

    def prepare_export_data(self, exporter_type: str) -> Any:
        if exporter_type == "ClickHouseExporter":
            if not self.string_findings:
                return None

            data = []
            for f in self.string_findings:
                data.append([
                    self.sha256,
                    f['string'],
                    f['string_raw'],
                    f['string_encoding'],
                    f['string_offset'],
                    f['string_length'],
                    f['string_raw_length'],
                    f['string_entropy'],
                ])

            column_names = [
                "sha256",
                "string",
                "string_raw",
                "string_encoding",
                "string_offset",
                "string_length",
                "string_raw_length",
                "string_entropy",
            ]

            column_type_names = [
                "FixedString(64)",
                "String",
                "String",
                "LowCardinality(String)",
                "UInt64",
                "UInt32",
                "UInt32",
                "Float32",
            ]

            return (data, column_names, column_type_names)

    def get_clickhouse_table(self) -> str:
        return "code_binja_strings_raw"