Linus Torvalds vydal jádro Linux 6.19. Podrobný výčet změn je ke zhlédnutí na stránce Kernel Newbies, stručné výběry v LWN (část první, druhá).
Do prodeje jde tichá bezdrátová herní myš Logitech PRO X2 SUPERSTRIKE s analogovými spínači s haptickou odezvou (HITS, Haptic Inductive Trigger System). Cena je 4 459 Kč.
Microsoft na GitHubu zveřejnil zdrojový kód projektu LiteBox, jedná se o 'knihovní operační systém' (library OS) zaměřený na bezpečnost, využívající systémovou architekturu LVBS k ochraně jádra před útoky z uživatelského prostoru. LiteBox je napsán v Rustu a uvolněný pod licencí MIT. Projekt je teprve v rané fázi vývoje.
BreezyBox je open-source shell a virtuální terminál pro populární jednočip ESP32. Nabízí základní unixové příkazy, sledování aktuálního pracovního adresáře (CWD), jednoduchý instalátor a spouštěč aplikací v podobě ELF binárních souborů, zabudovaný HTTP server nebo třeba ovládání WiFi - ukázka použití coby 'malého osobního počítače'. Ačkoliv je BreezyBox inspirovaný BusyBoxem, oproti němu má tento projekt několik externích závislostí, zejména na ESP-IDF SDK. BreezyBox je dostupný pod licencí MIT.
Byl představen cross-assembler xa.sh, napsaný čistě v Bourne shell skriptu. Tento nástroj umožňuje zpracovávat assemblerový kód pro Intel 8080, přičemž je možné snadno přidat podporu i pro další architektury, například 6502 a 6809. Skript využívá pouze různé běžné unixové příkazy jako jsou awk, sed nebo printf. Skript si lze stáhnout z GitHubového repozitáře projektu.
Byla představena nová verze modelu Claude Opus 4.6 od společnosti Anthropic. Jako demonstraci možností Anthropic využil 16 agentů Claude Opus 4.6 k vytvoření kompilátoru jazyka C, napsaného v programovacím jazyce Rust. Claude pracoval téměř autonomně, projekt trval zhruba dva týdny a náklady činily přibližně 20 000 dolarů. Výsledkem je fungující kompilátor o 100 000 řádcích kódu, jehož zdrojový kód je volně dostupný na GitHubu pod licencí Creative Commons.
Kultovní britský seriál The IT Crowd (Ajťáci) oslavil dvacáté výročí svého prvního vysílání. Sitcom o dvou sociálně nemotorných pracovnících a jejich nadřízené zaujal diváky svým humorem a ikonickými hláškami. Seriál, který debutoval v roce 2006, si i po dvou dekádách udržuje silnou fanouškovskou základnu a pravidelně se objevuje v seznamech nejlepších komedií své doby. Nedávné zatčení autora seriálu Grahama Linehana za hatecrime však vyvolává otázku, jestli by tento sitcom v současné Velké Británii vůbec vznikl.
Společnost JetBrains oznámila, že počínaje verzí 2026.1 budou IDE založená na IntelliJ ve výchozím nastavení používat Wayland.
Společnost SpaceX amerického miliardáře Elona Muska podala žádost o vypuštění jednoho milionu satelitů na oběžnou dráhu kolem Země, odkud by pomohly zajistit provoz umělé inteligence (AI) a zároveň šetřily pozemské zdroje. Zatím se ale neví, kdy by se tak mělo stát. V žádosti Federální komisi pro spoje (FCC) se píše, že orbitální datová centra jsou nejúspornějším a energeticky nejúčinnějším způsobem, jak uspokojit rostoucí poptávku po
… více »Byla vydána nová verze 2.53.0 distribuovaného systému správy verzí Git. Přispělo 70 vývojářů, z toho 21 nových. Přehled novinek v poznámkách k vydání.
{?xml version='1.0' encoding='UTF-8'?}
{request}
{Index}-1{/Index}
{Phones}
{Phone}725atd{/Phone}
{/Phones}
{Sca}{/Sca}
{Content}tst{/Content}
{Length}3{/Length}
{Reserved}1{/Reserved}
{Date}2016-03-02 21:42:16{/Date}
{token}68878{/token}
{/request}
{?xml version:'1.0' encoding='UTF-8'?}
{request}
{Index}-1{/Index}
{Phones}
{Phone}725atd{/Phone}
{/Phones}
{Sca}{/Sca}
{Content}test{/Content}
{Length}4{/Length}
{Reserved}1{/Reserved}
{Date}2015-11-07 22:47:45{/Date}
{token}63183{/token}
{/request}
dik!
Řešení dotazu:
{?xml version="1.0" encoding="UTF-8"?}
{error}
{code}100002{/code}
{message}{/message}
{/error}
curl -X POST --header "Content-Type:text/xml;charset=UTF-8" --data @send-sms.xml http://192.168.9.1/api/sms/send-sms
?xml version="1.0" encoding="UTF-8"?
{response}OK{/response}
Pouzil jsem takto CURL a token, ktery jsem odposlechnul vcera, takze vypada ze se da pouzit i znovu, ale vubec netusim jak dlouho pujde "recyklovat" ":-/
Token (zřejmě jako ochrana před CSRF útokem) bude součástí stránky s formulářem, ze které se to normálně odesílá.
http://192.168.9.1/api/sms/sms-list POST /api/sms/sms-list HTTP/1.1 Host: 192.168.9.1 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:44.0) Gecko/20100101 Firefox/44.0 Accept: */* Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Content-Type: application/x-www-form-urlencoded; charset=UTF-8 X-Requested-With: XMLHttpRequest Referer: http://192.168.9.1/html/home.htm Content-Length: 228 Connection: keep-alive ?xml version='1.0' encoding='UTF-8'? request PageIndex 1 /PageIndex ReadCount 10 /ReadCount BoxType 1 /BoxType SortType0 /SortType Ascending 0 /Ascending UnreadPreferred 0 /UnreadPreferred token 68878 /token /request HTTP/1.1 200 OK Date: Thu, 01 Jan 1970 00:00:00 GMT Server: mini_httpd/1.19 19dec2003 Connection: close Cache-Control: no-cache Content-Type: text/html Content-Length: 104
POST /api/sms/sms-list
<?xml version='1.0' encoding='UTF-8'?>
<request>
<PageIndex>1</PageIndex>
<ReadCount>10</ReadCount>
<BoxType>1</BoxType>
<SortType>0</SortType>
<Ascending>0</Ascending>
<UnreadPreferred>0</UnreadPreferred>
<token>237549</token>
</request>
token jsem zjistil, že se po restrtu modemu změní a platí do dalšího restaru, jen kde si ho "slíznout" netuším.
nemůžu tu aplikaci postavit na tom, že se bude pořád měnit token v kódu.
Tohle je nahrané přímo z tcp dumpu:
<?xml version='1.0' encoding='UTF-8'?>
<config>
<setting>
<module>quickstart</module>
<item>smspreview</item>
</setting>
<token>237549</token>
</config>
wget -qO- http://192.168.9.1/html/js/JsIncludesRepo.js
var jsIncludesRepo = [
"js/ConnectionManager.js",
"js/CallbackWrapper.js" ,
"js/HTMLTemplates.js",
"js/WebUIVersion.js",
"js/SMS.js",
"js/SMSCharCounter.js",
"js/TagSubstitution.js",
"js/simInfo.js",
"js/opCoInfo.js",
"js/accountFunctions.js",
"js/PageLoader.js",
"js/translator.js",
"js/throbber.js",
"js/UIUpdate.js",
"js/UserNotification.js",
"js/WifiShared.js",
"js/WifiUIUpdate.js",
"js/authentication.js",
"js/moduleControls.js",
"js/XmlCache.js",
"js/moduleCache.js",
"js/FileUploader.js",
"js/GreekChar.js",
"js/desktopView.js",
"js/mobileView.js",
"js/banner.js",
"js/DeviceSpecificHomeImage.js",
"js/memoPhoneNumber.js",
"js/SMSMonitorOpCoSpecialNumbers.js",
"js/accountInfo.js",
"js/device.js",
"js/home.js",
"js/models/BaseModel.js",
"js/models/simActivationModel.js",
"js/models/networkDataModel.js",
"js/models/networkInfoModel.js",
"js/models/firmwareUpdateModel.js",
"js/views/simActivationView.js",
"js/views/networkDataView.js",
"js/views/firmwareUpdateView.js",
"js/models/guestUserData.js",
"js/views/guestUserView.js",
"js/views/networkInfoView.js",
"js/views/roamingStatusView.js",
"js/responseProxy.js",
"js/requestProxy.js",
"js/helpMobileWifi.js",
"js/helpQuickstart.js"
dalsi vec netusim jak je stahnout wget mi pouze rekne Sorry, your browser does not support javascript. CURL to same.
tady jsou kompletni requesty od spusteni prohlizece az po odeslani SMS
#request# GET http://192.168.9.1/html/home.htm GET /html/home.htm #request# GET http://192.168.9.1/html/js/lib/jquery-1.8.3.min.js #request# GET http://192.168.9.1/html/js/webuiconfig.js #request# GET http://192.168.9.1/html/js/JsIncludesRepo.js #request# GET http://192.168.9.1/html/js/WebUIProductName.js #request# GET http://192.168.9.1/html/css/print-home.css #request# GET http://192.168.9.1/html/css/throbber.css #request# GET http://192.168.9.1/html/js/lib/log4javascript.js GET /html/js/lib/jquery-1.8.3.min.js GET /html/js/webuiconfig.js GET /html/js/lib/log4javascript.js GET /html/js/JsIncludesRepo.js GET /html/js/WebUIProductName.js GET /html/css/print-home.css GET /html/css/throbber.css #request# GET http://192.168.9.1/html/img/favicon/vodafone.png #request# GET http://192.168.9.1/html/img/icons/caution.gif #request# GET http://192.168.9.1/html/img/icons/arrowUpSpeed.gif #request# GET http://192.168.9.1/html/img/icons/arrowDownSpeed.gif #request# GET http://192.168.9.1/html/img/icons/loading.gif #request# GET http://192.168.9.1/html/js/pages/allpages-min.js GET /html/img/icons/caution.gif GET /html/img/icons/arrowDownSpeed.gif GET /html/img/icons/arrowUpSpeed.gif GET /html/img/favicon/vodafone.png GET /html/img/icons/loading.gif GET /html/js/pages/allpages-min.js #request# GET http://192.168.9.1/html/js/allwebui-min.js GET /html/js/allwebui-min.js #request# GET http://192.168.9.1/html/allpages-concat.htm GET /html/allpages-concat.htm #request# GET http://192.168.9.1/html/img/icons/SD-card.gif #request# GET http://192.168.9.1/html/img/icons/tick.gif #request# GET http://192.168.9.1/html/img/icons/VF_cloud.png #request# GET http://192.168.9.1/html/js/vendorWifi.js?1457007929718 GET /html/img/icons/SD-card.gif GET /html/img/icons/VF_cloud.png GET /html/img/icons/tick.gif GET /html/js/vendorWifi.js?1457007929718 #request# GET http://192.168.9.1/html/js/vendor.js?1457007929718 GET /html/js/vendor.js?1457007929718 #request# GET http://192.168.9.1/api/ussd/release #request# GET http://192.168.9.1/api/monitoring/status #request# GET http://192.168.9.1/api/net/current-plmn #request# GET http://192.168.9.1/api/device/information GET /api/monitoring/status GET /api/ussd/release GET /api/device/information #request# GET http://192.168.9.1/api/dhcp/settings GET /api/net/current-plmn #request# GET http://192.168.9.1/api/dialup/connection GET /api/dhcp/settings #request# GET http://192.168.9.1/api/pin/status GET /api/dialup/connection GET /api/pin/status #request# GET http://192.168.9.1/api/pin/status GET /api/pin/status #request# GET http://192.168.9.1/api/pin/status GET /api/pin/status #request# GET http://192.168.9.1/api/pin/simlock GET /api/pin/simlock #request# GET http://192.168.9.1/html/OpCo/23003.js?_=1457007932751 GET /html/OpCo/23003.js?_=1457007932751 #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles #request# GET http://192.168.9.1/api/language/current-language GET /api/language/current-language #request# GET http://192.168.9.1/api/language/current-language GET /api/dialup/profiles GET /api/language/current-language #request# HEAD http://192.168.9.1/html/Language/en-gb.js HEAD /html/Language/en-gb.js #request# GET http://192.168.9.1/html/Language/en-gb.js GET /html/Language/en-gb.js #request# GET http://192.168.9.1/api/monitoring/traffic-statistics #request# GET http://192.168.9.1/api/device/information GET /api/monitoring/traffic-statistics GET /api/device/information #request# GET http://192.168.9.1/api/sms/newsms-count #request# GET http://192.168.9.1/api/monitoring/status #request# GET http://192.168.9.1/api/net/current-plmn GET /api/monitoring/status GET /api/sms/newsms-count #request# POST http://192.168.9.1/api/language/current-language #request# GET http://192.168.9.1/html/modules/footer.htm GET /api/net/current-plmn #request# GET http://192.168.9.1/api/dialup/connection POST /api/language/current-language <?xml version='1.0' encoding='UTF-8'?><request><CurrentLanguage>en-gb</CurrentLanguage><token>68878</token></request> GET /html/modules/footer.htm #request# GET http://192.168.9.1/html/modules/header.htm GET /html/modules/header.htm #request# GET http://192.168.9.1/html/modules/topLinks.htm GET /api/dialup/connection GET /html/modules/topLinks.htm #request# GET http://192.168.9.1/html/modules/menu.htm GET /html/modules/menu.htm #request# GET http://192.168.9.1/html/modules/warning.htm GET /html/modules/warning.htm #request# GET http://192.168.9.1/html/modules/lowBatteryWarning.htm GET /html/modules/lowBatteryWarning.htm #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/html/desktopView.htm #request# GET http://192.168.9.1/html/css/site-min.css #request# GET http://192.168.9.1/html/css/desktop-min.css GET /html/desktopView.htm GET /html/css/site-min.css GET /html/css/desktop-min.css #request# GET http://192.168.9.1/html/img/backgrounds/body_bg_high.gif GET /html/img/backgrounds/body_bg_high.gif #request# GET http://192.168.9.1/html/img/favicon/vodafone.png #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/device/nv-configuration GET /api/device/nv-configuration #request# GET http://192.168.9.1/api/device/nv-configuration GET /api/device/nv-configuration #request# POST http://192.168.9.1/api/global/storage-getitem POST /api/global/storage-getitem <?xml version='1.0' encoding='UTF-8'?><config><setting><module>quickstart</module><item>smspreview</item></setting><token>68878</token></config> #request# POST http://192.168.9.1/api/global/storage-getitem POST /api/global/storage-getitem <?xml version='1.0' encoding='UTF-8'?><config><setting><module>quickstart</module><item>smspreview</item></setting><token>68878</token></config> #request# POST http://192.168.9.1/api/sms/sms-list #request# GET http://192.168.9.1/api/dialup/connection #request# POST http://192.168.9.1/api/global/storage-getitem POST /api/sms/sms-list <?xml version='1.0' encoding='UTF-8'?><request><PageIndex>1</PageIndex><ReadCount>10</ReadCount><BoxType>1</BoxType><SortType>0</SortType><Ascending>0</Ascending><UnreadPreferred>0</UnreadPreferred><token>68878</token></request> #request# GET http://192.168.9.1/html/img/icons/miniGreenTick.gif #request# GET http://192.168.9.1/api/dialup/profiles POST /api/global/storage-getitem <?xml version='1.0' encoding='UTF-8'?><config><setting><module>quickstart</module><item>smspreview</item></setting><token>68878</token></config> GET /api/dialup/connection GET /html/img/icons/miniGreenTick.gif GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/html/img/tabs/tab_global_active_left.gif #request# GET http://192.168.9.1/html/img/tabs/tab_global_active_right.gif #request# GET http://192.168.9.1/html/img/tabs/tab_global_inactive_left.gif #request# GET http://192.168.9.1/html/img/tabs/tab_global_inactive_right.gif #request# GET http://192.168.9.1/html/img/menu/menu_bg.gif #request# GET http://192.168.9.1/html/img/menu/logo.gif #request# GET http://192.168.9.1/html/img/backgrounds/drop_shadow.gif #request# GET http://192.168.9.1/html/img/backgrounds/gradient.gif #request# GET http://192.168.9.1/html/img/buttons/btn_lightgrey_sprite.png #request# GET http://192.168.9.1/html/img/backgrounds/sidebar_accordion_sprite.gif #request# GET http://192.168.9.1/html/img/icons/signal3Bars.gif #request# GET http://192.168.9.1/html/img/icons/connected_traffic.gif #request# GET http://192.168.9.1/html/img/icons/time.gif #request# GET http://192.168.9.1/html/img/landing/R210_heroimage.jpg GET /html/img/tabs/tab_global_active_left.gif GET /html/img/tabs/tab_global_active_right.gif GET /html/img/tabs/tab_global_inactive_left.gif GET /html/img/backgrounds/gradient.gif GET /html/img/menu/menu_bg.gif GET /html/img/menu/logo.gif GET /html/img/backgrounds/drop_shadow.gif GET /html/img/tabs/tab_global_inactive_right.gif GET /html/img/buttons/btn_lightgrey_sprite.png GET /html/img/backgrounds/sidebar_accordion_sprite.gif GET /html/img/icons/time.gif GET /html/img/icons/signal3Bars.gif GET /html/img/icons/connected_traffic.gif GET /html/img/landing/R210_heroimage.jpg #request# GET http://192.168.9.1/api/monitoring/status #request# GET http://192.168.9.1/api/net/current-plmn #request# GET http://192.168.9.1/api/device/information GET /api/monitoring/status GET /api/device/information GET /api/net/current-plmn #request# GET http://192.168.9.1/api/dialup/connection GET /api/dialup/connection #request# GET http://192.168.9.1/api/monitoring/traffic-statistics GET /api/monitoring/traffic-statistics #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# POST http://192.168.9.1/api/sms/sms-list #request# GET http://192.168.9.1/api/sms/newsms-count POST /api/sms/sms-list <?xml version='1.0' encoding='UTF-8'?><request><PageIndex>1</PageIndex><ReadCount>10</ReadCount><BoxType>1</BoxType><SortType>0</SortType><Ascending>0</Ascending><UnreadPreferred>0</UnreadPreferred><token>68878</token></request> #request# GET http://192.168.9.1/api/dialup/profiles GET /api/sms/newsms-count GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/monitoring/status #request# GET http://192.168.9.1/api/net/current-plmn #request# GET http://192.168.9.1/api/device/information GET /api/device/information GET /api/monitoring/status GET /api/net/current-plmn #request# GET http://192.168.9.1/api/dialup/connection GET /api/dialup/connection #request# GET http://192.168.9.1/api/monitoring/traffic-statistics GET /api/monitoring/traffic-statistics #request# GET http://192.168.9.1/api/sms/newsms-count GET /api/sms/newsms-count #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/monitoring/status #request# GET http://192.168.9.1/api/net/current-plmn #request# GET http://192.168.9.1/api/device/information GET /api/device/information GET /api/monitoring/status GET /api/net/current-plmn #request# GET http://192.168.9.1/api/dialup/connection GET /api/dialup/connection #request# GET http://192.168.9.1/api/monitoring/traffic-statistics GET /api/monitoring/traffic-statistics #request# GET http://192.168.9.1/html/img/buttons/btn_darkgreen_sprite.png GET /html/img/buttons/btn_darkgreen_sprite.png #request# GET http://192.168.9.1/api/device/information GET /api/device/information #request# GET http://192.168.9.1/api/sms/newsms-count GET /api/sms/newsms-count #request# GET http://192.168.9.1/api/monitoring/status #request# GET http://192.168.9.1/api/net/current-plmn #request# GET http://192.168.9.1/api/device/information GET /api/monitoring/status GET /api/device/information GET /api/net/current-plmn #request# GET http://192.168.9.1/api/dialup/connection GET /api/dialup/connection #request# GET http://192.168.9.1/api/monitoring/traffic-statistics GET /api/monitoring/traffic-statistics #request# GET http://192.168.9.1/api/sms/newsms-count GET /api/sms/newsms-count #request# GET http://192.168.9.1/api/monitoring/status #request# GET http://192.168.9.1/api/net/current-plmn #request# GET http://192.168.9.1/api/device/information GET /api/monitoring/status GET /api/device/information GET /api/net/current-plmn #request# GET http://192.168.9.1/api/dialup/connection GET /api/dialup/connection #request# GET http://192.168.9.1/html/img/buttons/btn_red_sprite.png #request# POST http://192.168.9.1/api/sms/send-sms GET /html/img/buttons/btn_red_sprite.png POST /api/sms/send-sms <?xml version='1.0' encoding='UTF-8'?><request><Index>-1</Index><Phones><Phone>7moje_cislo</Phone></Phones><Sca></Sca><Content>test</Content><Length>4</Length><Reserved>1</Reserved><Date>2016-03-03 13:25:52</Date><token>68878</token></request> #request# GET http://192.168.9.1/api/device/information GET /api/device/information #request# GET http://192.168.9.1/api/sms/send-status GET /api/sms/send-status #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# POST http://192.168.9.1/api/sms/sms-list POST /api/sms/sms-list <?xml version='1.0' encoding='UTF-8'?><request><PageIndex>1</PageIndex><ReadCount>10</ReadCount><BoxType>1</BoxType><SortType>0</SortType><Ascending>0</Ascending><UnreadPreferred>0</UnreadPreferred><token>68878</token></request> #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/dialup/profiles GET /api/dialup/profiles #request# GET http://192.168.9.1/api/monitoring/traffic-statistics GET /api/monitoring/traffic-statistics #request# GET http://192.168.9.1/api/sms/newsms-count #request# GET http://192.168.9.1/api/monitoring/status #request# GET http://192.168.9.1/api/net/current-plmn #request# GET http://192.168.9.1/api/device/information GET /api/sms/newsms-count GET /api/monitoring/status GET /api/device/information #request# GET http://192.168.9.1/api/device/information GET /api/net/current-plmn #request# GET http://192.168.9.1/api/dialup/connection GET /api/device/information GET /api/dialup/connection #request# GET http://192.168.9.1/api/monitoring/traffic-statistics GET /api/monitoring/traffic-statistics
Cele mi to funguje pres CURL az na to ze se ten token pri kazdem restartu modemu zmeni. Prijdu na to tak ze pres HTTP headers posloucham komunikaci, po tom co odeslu z weboveho formulare dalsi SMS.
A k tomu modemu se nějak přihlašuje nebo stačí přijít z vnitřní sítě? Jestli se přihlašuje, tak token bude pravděpodobně v první odpovědi po přihlášení. Jestli je to bez přihlášení, tak promaž cookies nebo použij jiný prohlížeč (nebo jiný profil ve Firefoxu) a přijď tam, jako bys byl nový uživatel – token ti musí někde (v prvních odpovědích) přijít, prohlížeč si ho z prstu nevycucal.
Teoreticky by se mohl token vypočítat na straně klienta v JavaScriptu na základě nějaké soli ze serveru… ale až takovou vědu bych v tom nehledal – nejdřív bych pečlivě prošel vše (včetně cookies a HTTP hlaviček), co přišlo ze serveru po vyčištění cookies/profilu.
BTW: Wireshark umí vyhledávat v paketech – zkoušel jsi tam zadat hodnotu tokenu? Ale je potřeba mít nachytané všechno od chvíli, kdy jsi tam přišel, jako bys byl nový uživatel (token se dost možná pošle jen jednou na začátku a pak si ho prohlížeč pamatuje v cookies nebo v nějakém úložišti).
dalsi vec netusim jak je stahnout wget mi pouze rekne Sorry, your browser does not support javascript. CURL to same.
Prostě se musíš tvářit jako nějaký známý www prohlížeč. K tomu slouží hlavička User-Agent:
$ cat bin/stahuj.sh #!/bin/bash USER_AGENT="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/37.0.2062.94 Chrome/37.0.2062.94 Safari/537.36"; wget -4 --user-agent="$USER_AGENT" "$@";
No. Time Source Destination Protocol Length Info
3320 28.766631 192.168.4.13 192.168.9.1 HTTP 611 POST /api/language/current-language HTTP/1.1 (application/x-www-form-urlencoded)
Frame 3320: 611 bytes on wire (4888 bits), 611 bytes captured (4888 bits) on interface 0
Ethernet II, Src: Apple_1d:24:d1 (28:cf:e9:1d:24:d1), Dst: Raspberr_71:4e:56 (b8:27:eb:71:4e:56)
Internet Protocol Version 4, Src: 192.168.4.13, Dst: 192.168.9.1
Transmission Control Protocol, Src Port: 50965 (50965), Dst Port: 80 (80), Seq: 4261, Ack: 392462, Len: 545
Source Port: 50965
Destination Port: 80
[Stream index: 17]
[TCP Segment Len: 545]
Sequence number: 4261 (relative sequence number)
[Next sequence number: 4806 (relative sequence number)]
Acknowledgment number: 392462 (relative ack number)
Header Length: 32 bytes
Flags: 0x018 (PSH, ACK)
Window size value: 4096
[Calculated window size: 131072]
[Window size scaling factor: 32]
Checksum: 0xa0ae [validation disabled]
Urgent pointer: 0
Options: (12 bytes), No-Operation (NOP), No-Operation (NOP), Timestamps
[SEQ/ACK analysis]
Hypertext Transfer Protocol
POST /api/language/current-language HTTP/1.1\r\n
[Expert Info (Chat/Sequence): POST /api/language/current-language HTTP/1.1\r\n]
Request Method: POST
Request URI: /api/language/current-language
Request Version: HTTP/1.1
Host: 192.168.9.1\r\n
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:44.0) Gecko/20100101 Firefox/44.0\r\n
Accept: */*\r\n
Accept-Language: en-US,en;q=0.5\r\n
Accept-Encoding: gzip, deflate\r\n
Content-Type: application/x-www-form-urlencoded; charset=UTF-8\r\n
X-Requested-With: XMLHttpRequest\r\n
Referer: http://192.168.9.1/html/home.htm\r\n
Content-Length: 118\r\n
[Content length: 118]
Connection: keep-alive\r\n
\r\n
[Full request URI: http://192.168.9.1/api/language/current-language]
[HTTP request 14/14]
[Prev request in frame: 2749]
HTML Form URL Encoded: application/x-www-form-urlencoded
Form item: "<?xml version" = "'1.0' encoding='UTF-8'?><request><CurrentLanguage>en-gb</CurrentLanguage><token>237549</token></request>"
Key: <?xml version
Value: '1.0' encoding='UTF-8'?><request><CurrentLanguage>en-gb</CurrentLanguage><token>237549</token></request>
Ten PCAP sem asi davat nebudu ;)Dobře, takže jediný způsob, jak vám můžeme pomoci, realizovat nechce. Takže to můžeme považovat za vyřešené.
Jste si jist, že to je opravdu jen komunikace prohlížeče s tím modemem? Připadá mi tam nějak hodně IP adres, SSL komunikace… Jinak v tom výpisu je vidět, že se požaduje skript /html/js/vendor.js: GET /html/js/vendor.js?1457900869179 HTTP/1.1 To 1457900869179 je unixtime v milisekundách, přidává se jen proto, aby se zabránilo kešování, myslím, že když ho vynecháte, server se s tím srovná. V tom skriptu je pak na řádku asi 11: var STR_AJAX_VALUE = "237549"; //token To je podle mne ten token, který hledáte – a půjde získat jednoduchým regulárním výrazem, ani nemusíte parsovat ten JavaScript.Měl jsem dát ve WS export po aplikaci filtru a ne "save as", pak hledat i "v packet bytes", ne jen v "packet details" vše se tedy vyřešilo:
curl -s http://192.168.9.1/html/js/vendor.js | grep "//token" | cut -d "\"" -f 2 237549
Doporučuju příště vypnout promiskuitní mód (to jste možná udělal) a rovnou nastavit Capture filter na IP adresu a port, které vás zajímají. Pak se ani jiné pakety nezachytávají (resp. asi se po zachycení hned zahodí), takže to zaprvé nemůžete zveřejnit ani omylem, za druhé je pak vidíte jenom tu komunikaci, která vás zajímá. Ty módy, kdy se zachycuje všechno, se hodí pro analýzu síťových problémů, když potřebujete zjistit, co se na síti vlastně děje.OK dobré vědět, jinak jak jsem psal včera, náhodou tím že jsem dělal capture na všechno jsem našel navíc chybu s tagovaním VLANy na switchy, takže i to jsem neplánovaně dořešil. Ještě jednou díky za pomoc a trpělivost.
Tiskni
Sdílej: